Skip to page content

Basics: Use Macros

Judy Barnes
Last revised 2008

Introduction to OCLC Macro Language for Connexion client

Macros are short programs you write to automate routine tasks. Macros are built from commands. Each command does one step in the procedure you want to run automatically. Creating and using macros is optional and requires some understanding of BASIC programming language. The client supports macros written using OCLC Macro Language (OML), which provides:

  • Standard BASIC functions and statements
  • Macro commands developed specifically for the client

Why use macros?

Using macros can help to:

  • Reduce the number of keystrokes and mouse clicks by running repetitive processing steps automatically
  • Standardize procedures to reduce errors and inconsistencies
  • Decrease staff time required for routine tasks

OCLC-supplied object class and variables

  • OCLC supplies the object class Connex.Client. Commands in OML macros automate Connexion client actions by accessing a subset of client functionality through this object class, which is the interface between the client functionality and OML.
  • To gain access to the functions provided by Connex.Client, an OML macro contains two lines that do the following:
    • Define the object variable CS by which to reference Connex.Client:
      Dim CS as Object.
    • Set CS to reference an instance of the object class Connex.Client:
      Set CS = CreateObject("Connex.Client").

Why use an object?

The only way to create a macro that automates Connexion client operations is to use the variable CS as an instance of the class Connex.Client. You can then use the capabilities of that class of object to make the macro work. By using the appropriate object, you can, for example, write a macro to log on to Connexion, automate a search, modify a record, display a record from a list, or take an action on a record.

How to use a client object

The tasks an object can do are called methods or member functions of the object. OML Help uses the term commands for the methods of the client object class.

For a list of commands for use in client macros, see "List of Connexion client macro commands."

Syntax for client macro commands

  • Command syntax links client commands to the Connex.Client object.
  • At the beginning of a macro, define the object variable CS to represent the object.
  • For each macro command, add the prefix CS. to the command name to reference the required object through its predefined object variable, CS.
    Example:
    dim CS as Object
    set CS = CreateObject("Connex.Client")
    CS.WindowCount
    (Returns the number of open record and list windows)
  • At the beginning of a macro, name and declare data types for variables to represent the values you supply as arguments (for example, line numbers and text strings) for carrying out the commands.
    Example:
    dim CS as Object
    dim sData as String
    dim n as integer
    set CS = CreateObject("Connex.Client")
    (Sets sData as a string of characters and n as an integer)

Return values from client macro commands

  • Many client macro commands are functions that return a value of TRUE (if the command executes successfully) or FALSE (if the command fails).
  • For these commands to work correctly, you must assign a variable to store the return values. As each command executes, the stored value is updated.
  • Optional. You can include If . . Then . . Else statements or other code that checks the value of this variable and, based on the result, displays messages or branches to different sections of the macro.

    If...Then...Else executes alternative blocks of program code based on one or more expressions.

    Syntax A

    If condition Then then_statement [Else else_statement]
    [bracketed parameter is optional]

    Syntax B (block version)

    If condition Then

    statement_block

    [ElseIf expression Then

    statement_block]

    [Else

    statement_block]

    End If

    Where:
    -condition is any expression that evaluates to TRUE (non-zero) or FALSE (zero)
    -then_statement is any valid single expression
    -else_statement is any valid single expression
    -expression is any expression that evaluates to TRUE (non-zero) or FALSE (zero)
    -statement_block is 0 or more valid expressions, separated by colons (:) or entered on separate lines

    Note: When multiple statements are required in either the Then or Else clauses, use the block version (Syntax B) of the If statement.

  • Use the following syntax to specify the variable BOOL to store the return value of each command:
    BOOL = CS.[command]

Note: Standard OML commands do not use the CS. prefix.

Examples:
Set
If . . Then . . Else
MsgBox

OCLC-supplied macros

OCLC supplies several widely used macros:

  • FourFig and Sanborn in a macro book file named Dewey.mbk for adding a Cutter number to a Dewey classification number. See instructions for using the Cutter macro in Cataloging, Print Labels and Accessions Lists, "Print labels."
  • GenerateAuthorityRecord named OCLC.mbk for generating an authority record from a name heading in a bibliograhic record. You can run the macros from Tools > Macros > Manage.

OCLC provides additional macros. The following table lists all OCLC-supplied macros supplied in OCLC.mbk, describes the purpose of each, and gives details for using them:

OCLC macro name and purpose How to use
Add&Edit007

Adds or edits field 007 in a bibliographic record via a menu
To add field 007:

Retrieve a bibliographic record and run the macro, but do not place the cursor within any existing 007 field.

To edit field 007:

Retrieve a bibliographic record and run the macro after placing the cursor within any existing 007 field to be edited.
AddAuthority6xx

Adds a 6xx field template to an authority record via a menu
To add a 6xx field template
  1. Retrieve an authority record or workform and run the macro.
  2. Choose an appropriate field from the menu and click OK.

    Result: The macro adds the field to the record and places a fill character at the point in the field where it needs to be reviewed and further edited.
AddSerialNotes

Adds a note field template to a serial bibliographic record via a menu
To add a note field template
  1. Retrieve an serial bibliographic record or workform and run the macro.
  2. Choose an appropriate field from the menu and click OK.

    Result: The macro adds the field to the record and places a fill character at the point in the field where it needs to be reviewed and further edited.
BrowseAuthorityIndex

Begins a browse search in the authority indexes based on a heading in a displayed authority or bibliographic record
To begin an authority browse search:

Retrieve an authority or bibliographic record or workform, place the cursor in a heading or title field you want to browse, and run the macro.
BrowseBibliographicIndex

Begins a browse search in the bibliographic indexes based on a heading in a displayed authority or bibliographic record
To begin a bibliograhic browse search:

Retrieve an authority or bibliographic record or workform, place the cursor in a heading or title field you want to browse, and run the macro.
Generate034

Generates field 034 based on data in field 255 in the same bibliographic record
To generate field 034:

Retrieve a bibliographic record with field 255 and run the macro.

Note: Field 255 must be correctly formulated per AACR2 rules and must use the degree sign, the miagkii znak, and the tverdyi znak to indicate degrees, minutes, and seconds in any coordinates.
Generate043

Generates field 043 based on data in 6xx fields in the same authority or bibliographic record
To generate field 043:

Retrieve an authority record or workform that contains field 151 and/or 78, or retrieve a bibliographic record or workform that contains LCSH, LC Children's, MeSH, or Canadian subject headings, and run the macro.
Generate891

Generates a pair of 891 fields based on frequency and numbering data in the same bibliographic record
To generate a pair of 891 fields:
  1. Retrieve a serial bibliographic record or completed workform and run the macro.
  2. Edit the resulting fields as appropriate.
GenerateAuthorityRecord

Generates a name authority workform based on a heading in a displayed bibliographic record (see detailed instructions in Authorities, Create Authority Records, "Generate an authority record from a name heading in a bibliographic record...")
To generate an authority record:

Place the cursor within a valid heading field of a bibliographic record and run themacro.
GenerateESerial

Creates a serials workform to represent an online version of a serial based on the print, microform, or CD-ROM version of a bibliographic record for the same title
To create a serials workform:

Retrieve a bibliographic record for a serial and run the macro.
GeneratESerialCONSER

Creates a CONSER-level serials workform to represent an online version of a serial based on the print, microform, or CD-ROM version of a bibliographic record for the same title
To create a CONSER-level serials workform:

Retrieve a bibliographic record for a serial and run the macro.
InsertHeading

Inserts a displayed authority record heading into a previously displayed bibliographic record heading field
To insert a heading:
  1. Retrieve a bibliographic record and place the cursor in a heading field.
  2. Search the authority file manually or via the BrowseAuthorityIndex macro for the corresponding heading.
  3. Once the appropriate authority record is displayed, run the macro.

    Result: The macro compares the displayed authority heading with the heading in the previously displayed bibliographic record and inserts it into the bibliographic record if there are differences

OCLC may supply additional macros or modify existing macros in the OCLC.mbk book file in future versions of the client.

Caution for retaining your own macros when upgrading to the next client version:

  • When OCLC adds or modifies macros in Dewey.mbk and/or OCLC.mbk, these files are overwritten when you upgrade to a new version of the client.
  • You will lose your customized macros if you store them in either of these files when you upgrade. Copy any of your own macros to another macro book that you create or rename the macro book before upgrading to prevent this loss.

OCLC macro book files and macro book files you create are stored in X:\Program Files\OCLC\Connexion\Program\Macros (X = the letter of your hard drive). See more about user file locations in Getting Started with OCLC Connexion Client.

To view the OCLC macros:

  Action
1 Click Tools > Macros > Manage, click the plus sign (+) next to OCLC to expand the list of OCLC macros.
2 In the Macro window under the Macros list, click the plus sign (+) next to OCLC to expand the list of macros OCLC supplies.
3 Click the name of a macro to see its description in the Description box, or double-click the name to open and view the macro in the Macro Editor.

Help for using client macros

Caution for Windows Vista users:

  • Older Help files (*.hlp) linked from the main Connexion client Help file (*.chm) are unavailable under Windows Vista unless you download the discontinued Help engine WinHlp32.exe from the Microsoft Web site at:

    http://go.microsoft.com/fwlink?LinkID=82148 http://support.microsoft.com/kb/917607.
  • Only the Standard BASIC guide and Macro Editor and Debugger Help topics are affected. These topics are in two help files, osbl5x.hlp and osbi5x.hlp.
  • Client macro command-specific Help is in the main help file (clienthelp.chm) and is not affected .
  • For complete information, see Windows Help program (WinHlp32.exe) is no longer included with Windows [Vista] on the Microsoft Web site at:

    http://support.microsoft.com/kb/917607.

The client provides separate but interlinked Help systems that cover macros

  • OML and Basics Help (osbl5x.hlp)
  • Macro Editor and Debugger Help (osbi5x.hlp)
  • Client-specific macro commands in the main client Help (clienthelp.chm)
  • The Help files are located in D:\Program Files\OCLC\Connexion\Program.

To open OML Help on standard BASIC:

  • Click the Client Help button in any client Help topic on macros. Then, in the OCLC Macro Language Help window, click the link OML Standard BASIC Reference.
    Or
    In the Macro Editor and Debugger Help window, click , and then click the link BASICS.
    Or
    In the text of a macro in the Macro Editor, right-click any BASIC language keyword (such as sub) to open a topic describing the keyword.

    OML Help provides information on:
    • Syntax, usage tips, and examples for standard OML statements and functions
    • Overview topics that describe how to use features in OML
    • Program examples that illustrate OML functions and statements

To open the Macro Editor and Debugger Help:

  • On the toolbar in the Macro Editor and Debugger window, click .

    Note: You open the Macro Editor and Debugger when you create or edit macros.

To open Connexion Client Help topics on using client-specific macros:

  • On the Help menu, click Client Help, or click , or press <F1>. In the Help Contents tab, expand Basics/Use Macros.

Reference table: For diacritics and special characters in data used with macro commands such as CS.GetField or CS.SetField, see a list of codes, "ASCII and hexadecimal codes for diacritics and special characters."

back to top

Use Connexion client macros

Client macro tools

The client provides the following tools for working with macros:

Macro tool: To open, go to:
  • Manager
Tools > Macros > Manage
The Macro window opens. You can use it as a manager to create, edit, run, delete, and organize macros.
  • Organizer
Tools > Macros > Manage. Click Organizer
The Macro Organizer window opens.

Macros are stored in *.mbk files called books. Using the organizer, you can create or rename macro books, delete a macro or macro book, and move or copy macros among macro books.

Caution
Prevent loss of data when moving or duplicating lengthier macros:
For moving or duplicating lengthy macros, OCLC recommends copying and pasting directly from one macro to another using the macro editor, rather than using the macro organizer.
  • Recorder
Tools > Macros > Manage. Click Record.
The Record a New Macro window opens. After you enter a name and description for the new macro and click OK, the activities you do in the client are recorded as the new macro.
  • Editor and debugger
Tools > Macros > Manage. Click Edit.The OCLC Connexion Macro Editor and Debugger opens. You can use it to create, edit, and debug macros.

The Macro Editor has its own Help files. To open:

On the Macro Editor toolbar, click (Help).


Notes for Windows Vista users:

  • Macro (*.mbk) files. See information on the location of Connexion client macro files with Windows Vista.
  • Macro Help files. Older (legacy) Help files (*.hlp) for the Standard BASIC guide and Macro Editor and Debugger Help that are linked from the main Connexion client Help file (*.chm) are unavailable under Windows Vista. To use these Help files, you must download the discontinued WinHlp32.exe Help engine from the Microsoft Web site at: http://go.microsoft.com/fwlink?LinkID=82148. For more information, see Windows Help program (WinHlp32.exe) is no longer included with Windows [Vista] at: http://support.microsoft.com/kb/917607. See also Basics, Get Help and Information, "Use client Help" for more details.

How to create macros

There are two ways to create macros for the client. You can:

  • Write your own macros in the macro editor, or copy and paste from an existing macro to a new one and then edit the new macro as needed (see "Write macros" immediately following).
    Or
  • Record macros automatically using the macro recorder: You start the recorder, do a series of actions in a procedure you want to automate (using the mouse or the keyboard), and the recorder writes a macro that captures the procedure. See section titled "Record macros (create automatically)" below.

Note: See a list of client commands that are not available for use in macros you write or record below. The following commands are available for use in macros you write but cannot be recorded: View the next or previous 100 records from a list (View > Previous 100 Records or Next 100 Records).

Write macros

  Action
1 On the Tools menu click Macros > Manage, or press <Ctrl><Alt><Shift><G>.
2 In the Macro window under the Macros list, select the macro book in which you want to create the new macro. You must use macro books to contain macros.
Or
Create a new macro book in which to store the new macro:
  1. In the Macro window box, click New Book.
  2. Type a descriptive name over the highlighted default name New Book.
  3. Press <Enter>.

You can also use the macro organizer to create a new macro book.

3 Click New Macro.
4 In the Macro Description window, type a unique description of the macro's purpose. Then click OK or press <Enter>.
5 In the text box with NewMacro highlighted, type an appropriate name for the new macro. Press <Enter>.
6 Click Edit.

The OCLC Connexion Macro Editor and Debugger opens. Its title bar gives the names of the macro book and macro. In the work area, the start and end text of a macro are provided:

MacroName:[name you typed]
'MacroDescription:[description you typed]
Sub Main()
End Sub
7 Between Sub Main and End Sub, type commands and appropriate comments to create the macro.
  • To create a specific instance of the client object class, macros that use client commands must begin with the lines:
    Dim CS as Object
    Set CS = CreateObject("Connex.Client")
  • In macros that use variables (numbers, strings), include lines to declare the data type of each variable to be used in the macro.
    Example:
    The first part of a macro using the GetField command declares the variable sData as a string to store the text of the specified field:
    Dim CS as Object
    Dim sData as String
    Set CS = CreateObject("Connex.Client")
8 Press <Enter> at the end of each line. Make sure End Sub remains as the last line of the macro.
9 On the Macro Editor toolbar, click (Check) to check macro syntax. (See the "Check macro syntax" section below for details.)
10 Click (Execute), (Animate), (Step Into), and (Run to Cursor) to test and debug the macro.

For more information, open the OML Macro Editor Help: Click (Help) on the Macro Editor toolbar.

11 Click (Save).
12 When finished editing, on the File menu click Exit, or press <Ctrl><F4>.

See a detailed macro example below.

Tips for using the Macro Editor

  • Description. Provide an informative description for each macro you create.
  • Comments. Include comments in the macro to document what each part of the macro does. Comment lines begin with a single quotation mark (').
    Example:
    ' Get the first item from the first list
    If CS.Search("WC", "gon,wi,th,w") > 0 Then
    CS.CloseList
    End If
  • Open and work with multiple macros:
    • To open another Connexion client macro, with the Macro Editor open:

      On the client Tools menu, click Macros. The Macros window reopens. Select another macro in the list or create a new one and select it, and then click Edit. The macro opens in a separate window.
    • To help navigate among multiple open macros in the Editor:

      On the Macro Editor Window menu, click Cascade or Tile, or make a different macro window current (bring it to the top and set focus) by selecting its name in the windows list.
  • Help for BASIC keywords. To get a specific Help topic on any BASIC language keyword (such as sub) in a macro in the Editor, right-click the keyword in the macro text.

    Reference table: For diacritics and special characters in data used with macro commands such as CS.GetField or CS.SetField, see a list, "ASCII and hexadecimal codes for diacritics and special characters" in "Connexion client macro commands: Edit records."

View or edit macros

  Action
1 In the Macro window (Tools > Macros > Manage) under the Macros list, click the plus sign (+) next to the macro book that contains the macro you want to edit.
2 Select the macro and click Edit.
3 In the OCLC Connexion Macro Editor and Debugger window, edit the macro, and then follow steps 9 through 11 of the procedure above for creating a macro

Check macro syntax

When you create or edit a macro, you must check the macro syntax (click the

Check button on the toolbar. The Macro Editor displays a message on the status bar of the Editor window.

  • If the macro contains no syntax errors, the message is: Successfully compiled [macrobook]![macroname].sbl
  • If the macro contains syntax errors, the message is: _Error(s) in [macrobook]![macroname].sbl. Lines containing syntax errors are highlighted in red.

To review errors:

Action
On the Macro Editor toolbar, click the Next Error button and Previous Error button to move between error lines in the macro.

To view details of syntax errors:

  Action
1 On the Macro Editor toolbar, click the Console button .

A new window opens at the bottom of the Editor window, just above the gray message bar. The window displays output from the syntax checker.
2 Drag the separator up to expand the console window. Maximize the Editor window to provide more space if needed.
3 On the Macro Editor toolbar, click the Check button again.

In the console window, the Editor displays messages that give the line number containing each syntax error (in parentheses following the macro name) and identify the general type of error.

Macro example

Sub Main()

Dim CS as Object
Set CS = CreateObject("Connex.Client")
If CS.Logon("", "", "") = True Then
MsgBox "Logon successful"
End If
CS.Search "WC", "#1"
CS.AddFieldLine "300 Line 10 test", 10
If CS.AddField(2, "500 Another test") = True Then
MsgBox "500 field successfull added"
End If

End Sub

This example:

  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab (leaves logon values blank).
  • Searches WorldCat for record number 1.
  • Adds a new field 300 in the tenth line of the record (inserted as the tenth variable field) with no indicators (two spaces between the tag number 300 and the text of the field). Adds the text Line 10 test to the field. (No confirmation message.)
  • Adds a second instance of repeatable field 500 (that is, adds a new field 500 below the first existing field 500) with no indicators and the text Another test. If the action is successful, returns the confirmation message 500 field successfully added.

See a complete list of client commands in "List of Connexion client macro commands." See detailed descriptions and examples for each command in sections organized by function.

Include macros in another macro

Including macros in a macro lets you:

  • Reuse macros you developed and tested as building blocks for more complex macros
  • Insert standardized elements in multiple macros (for example, declarations of variables, frequently used subroutines, or a function library)
  • Avoid the errors and repetitive debugging that result from recreating existing code

You can:

  • Run a macro from another macro:
    • The RunMacro command executes a specified macro from within another macro. When the called macro finishes running, execution of the calling macro resumes with the next statement
    • Syntax:BOOL = CS.RunMacro("macrobook!macroname")
      Tip: For faster execution, locate macro(s) you run using the RunMacro command in the same macro book that contains the calling macro(s).
      Limitation:RunMacro does not include code from the specified macro in the compile process. The called macro is treated as an external "black box."
  • Include code from another macro in compile:
    • The $Include metacommand tells the OML compiler to merge code from another macro at compile time. Included code becomes part of the macro that contains the $Include command. Functions, subroutines, and variables in the included code become available for use at any time during the main macro's execution.
    • Syntax:'$Include: "macrobook!macroname"
    • Correct OML syntax: The topic describing $Include in OML Standard Basic Language Reference Help gives the syntax for including a file by specifying path (drive and folder) and file name. This syntax does not work in client macros. You must specify the macro to include as "macrobook!macroname".
      Tip: Place the $Include metacommand before the main procedure (Sub Main() ... End Sub) of the macro if the code to be included contains global components such as declared variables, functions, or subroutines.

Run macros

  Action
1 In the Macros list of the Macro window (Tools > Macros > Manage), click the plus sign (+) next to the macro book that contains the macro you want to run.
2 Select the macro.
3 Click Run.

Tip: You can also run a macro by assigning and using a keystroke shortcut or by assigning a user tool button and adding it to the toolbar. See procedures in "Customize keystroke shortcuts for menu items, macros, or characters" and "Assign custom user tools" in Basics/Set Options and Customize.

Stop macros

Action
To stop a macro from running, on the Tools menu, click Macros > Stop, or press <Ctrl><Alt><Shift><T>.

Delete macros

  Action
1 In the Macro window (Tools > Macros > Manage) under the Macros list, click the plus sign (+) next to the macro book that contains the macro you want to delete.
2 Select the macro you want to delete.
3 Click Delete. Click Yes to confirm or No to cancel.

Organize macros and macro books

  • You create macros only within a macro book. Macro book files use the extension *.mbk.
  Action
1 In the Macro window (Tools > Macros > Manage), click Organizer.
2 In the Macro Organizer window, you can:
  • Create a macro book: Click New Macro Book and follow steps 4 and 5 in the procedure above for creating macros.
  • Rename a macro book: Select a macro book. Click Rename Macro Book, and type a new name over the old name.
  • Delete a macro book: Select a macro book. Click Delete. Click Yes to confirm or No to cancel.
  • Move or copy a macro book:
    1. To move or copy a macro book to or from another location, change the location for Macro Directory 1 and/or Macro Directory 2. Click the arrow to open the Current list. Select the drive and then the folder to move or copy to or from.

      Default location: X:\Program Files\OCLC\Connexion\Program\Macros\, where X is the letter of your hard drive

    2. Select the macro book you want to move or copy and click Move or Copy.

      The highlighted macro book is moved or copied from its current location to the location shown under Current Directory in the opposite list area

  • Move or copy a macro between macro books:
    • To move or copy a macro book to or from another location, change the location for Macro Directory 1 and/or Macro Directory 2. Click the arrow to open the Current list. Select the drive and then the folder to move or copy to or from.
    • In either list, select the macro book to which you want to move or copy a macro.
    • In the other list, select the macro book from which you want to move or copy a macro. Click the plus sign (+) to list the macros in the macro book.
    • Select the macro and click Move or Copy.

Caution for moving or duplicating lengthy macros: To prevent loss of data, OCLC recommends copying and pasting directly from one macro to another using the macro editor rather than using Move or Copy in the macro organizer.


Caution: OCLC-supplied macro books may be overwritten at upgrade

Do not store customized macros in OCLC-supplied macro books

OCLC-supplied macro book files OCLC.mbk and Dewey.mbk may be overwritten when you upgrade the software to provide you with the most currently available OCLC macros.

If you store customized macros in either of these books, you must rename the existing macro book before upgrading to be sure that the installation does not overwrite it and cause you to lose your own macros.

OCLC recommends that you: Create different macro book file(s) to store macros you create, copy, or record.

Actions not available for macros

You cannot use the following actions in macros you write or record:

  • Attach digital files to WorldCat records (Edit menu) (available only to those who have an OCLC logon authorization that includes CONTENTdm, a license to use CONTENTdm, and an established CONTENTdm collection and who use the CONTENTdm hosting service)
  • Authorities history records searching and browsing (Authorities > Search menu) and showing distributed vs. superseded versions (Authorities > Show menu)
  • Batch set or delete holdings by OCLC number (Batch menu)
  • Cancel the last edit in a record (Edit > Undo)
  • Check spelling (Tools menu)
  • Control a single heading in a record (Edit > Control Headings > Single)
  • Convert characters to MARC-8 CJK (Edit > MARC-8 Characters menu)
  • Copy data as text (Edit > Copy as Text)
  • Copy the OCLC control number by selecting it manually and copying (to record, you must use the Copy Control Number command on the Edit menu)
  • Create constant data (Cataloging > Create > Constant Data)
  • Create records for electronic resources by extracting metadata (Cataloging > Create > Extract Metadata)
  • Customize the toolbar (Tools > Toolbar Editor)
  • Delete selected text
  • Derive a new constant data record (Edit > Derive > New Constant Data)
  • Edit or create 006, 541, or 583 fields using guided entry (Edit > Guided Entry > Edit [or Insert 006, 541, 583)

    Note: Existing macro commands can be used, such as SetFieldLine to insert a field and specify data.
  • Import records (File > Import Records)
  • Insert field 760 - 787 data automatically from a cited record (Edit > Insert from Cited Record)
  • Launch local holdings maintenance (Tools menu)
  • Launch WebDewey (Cataloging menu)
  • Link/unlink non-Latin script fields with equivalent Latin script fields (Edit > Linking Fields)
  • Lock linked authority record (Action menu)
  • Move the cursor from one record area to another (Edit > Previous Record Area or Next Record Area)
  • Open the CJK E-Dictionary (Tools menu)
  • Paste Unformatted (Edit menu)
  • Print accessions lists (File menu)
  • Set a constant data record as the default (Edit > Constant Data > Online > Set as Default)
  • Set options in Tools > Options

    Note: You can, however, assign keystroke shortcuts to run macros, either by writing a macro using the command AssignMacroToKey or recording a macro while you assign a keystroke from Tools > Keymaps.
  • Show default constant data (Cataloging > Show > Default Constant Data; same command on the Authorities menu)
  • Show numbers of online save file records by individual statuses (Cataloging > Show > By Online Save File Status; same command on the Authorities menu)
  • Transliterate Arabic or Persian (Edit menu)
  • Use assigned User Tools (Tools menu)
  • Use text strings (Tools menu)
  • Verify MARC-8 characters (Edit menu)

Note: You can use the following commands in macros you write, but you cannot record them:

  • GetNext100Records (View menu)
  • GetPrevious100Records (View menu
back to top

Record macros (create automatically)

Record a macro

The client provides a macro recorder that records the actions in a procedure as you do them, whether you use the mouse to click commands or toolbar buttons, or press shortcut keystrokes, or use a combination of mouse and keyboard.

The recorder writes the macro automatically in the OML macro recorder.

To record a macro:

  Action
1 On the Tools menu, click Manage, or press <Ctrl><Alt><Shift><G>.
2 In the Macro window, click the name of the macro book where you want to store the new macro and then click Record.
3 In the Record a New Macro window, enter a unique name and description for the macro. The description displays in:
  • The Description box of the Macro window, when you select the name of the macro, to help you remember what the macro does
  • At the top of the macro text when you open the macro in the macro editor
4 Click OK to start recording, or click Cancel to close the window without startingrecording.

Result if you click OK:
  • The client displays a macro recording toolbar under the client toolbar: .
  • The toolbar contains buttons for (left to right): Pause Recording, Resume Recording, and Stop Recording.
  • These commands are also available as commands under Tools > Macros.
5 Carry out the procedure(s) you want to capture in a macro. The client records all actions except those listed in "Non-recordable actions" below.
6 Optional: To pause and then resume recording the current new macro:
  • On the Tools menu, click Macros > Pause Recording.
    Or
    On the macro recording toolbar, click .
    Or
    Press <Alt><T><M><P>.

To resume recording the same macro at the point where you paused:

  • On the Tools menu, click Macros > Resume Recording.
    Or
    On the macro recording toolbar, click .
    Or
    Press <Alt><T><M><E>.
7 When you are finished, to stop recording and end the macro:
On the Tools menu, click Macros > Stop Recording
Or
On the macro recording toolbar, click .
Or
Press <Alt><T><M><R>.
Results:
  • The macro is saved automatically.
  • You can open the macro to check or edit it. In the Macro window (Tools > Options > Macros > Manage), click the name of the macro you recorded, and then click Edit. The macro opens in the Macro Editor.
  • The macro recording toolbar closes.

Note: If you exit the client before you stop recording a macro, the program stops recording for you. You may want to check the macro later for completeness.

8 To view, check, or edit the macro, see "View or edit macros" and other sections about checking and editing macros in the topic, "Use Connexion client macros."

Tips for using the macro recorder

  • To copy from field 245, use Find/Replace to find field 245. Then close the box to locate the cursor in field 245.
  • You cannot record manually selecting and copying the OCLC number in a record. You must use Edit > Copy Control Number.
  • When recording taking an action on a bibliographic record, the macro recorder does not record replacing text by manually selecting and overwriting the text.
back to top

List of Connexion client macro commands

See:

  • Commands listed by function
  • Commands listed in alphabetical order

List of client macro commands by function

Log on and off
Command name Brief description
Logon Logs on to OCLC Connexion
Logoff Logs off OCLC Connexion
IsOnline Checks whether you are currently logged on

Search
Command name Brief description
Search Lets you use a search string to search an online database
  • WorldCat
  • Online bibliographic save file
  • Online bibliographic constant data
  • Local bibliographic save file
  • Local bibliographic constant data
  • Online bibliographic review records
  • Authority File
  • Online authority save file
  • Online authority constant data
  • Local authority save file
  • Local authority constant data
  • Online authority review records
Browse Lets you browse WorldCat for titles or browse the Authority File for headings
BrowseAuthorityExpanded Lets you expand a browse for a heading by specifying a subheading

Edit records
Command name Brief description
AddField Adds a field in correct tag order and specifies the order of its appearance among other fields with the same tag number
AddFieldLine Adds a variable field in a specific field position (line number)
CancelChanges Cancels all editing changes made to a master record (if from WorldCat or the Authority File) or all changes made since you last saved the record (if from the save file)
ControlHeadingsAll Controls all controllable headings in a record that are not already controlled
UncontrolHeading Uncontrols a controlled heading where the cursor is located so that you can edit the heading
UncontrolAll Uncontrols all controlled headings in the current record
IsHeadingControlled Determines whether a heading in a specified line of the current record is controlled
Copy Copies specific text and places it on the clipboard
Cut Cuts specific text and places it on the clipboard
Paste Pastes text from the clipboard at a specified insertion point
CopySelected Copies selected text and places it on the clipboard
CutSelected Cuts selected text and places it on the clipboard
CopyField Copies the field where the cursor is located and places it on the clipboard
CopyControlNumber Copies the OCLC control number (bibliographic records) or ARN (authority records) and places it on the clipboard
CursorPosition Indicates or changes the position of the cursor in a record, where the cursor position is variable, depending on the presence of data (for use by the macro recorder; use CursorColumn when writing macros)
DeleteCurrentField Deletes the field where the cursor is located
DeleteCurrentWord Deletes the word where the cursor is located
DeleteToEndOfCell Deletes text from the cursor position to the end of the cell in a field
MoveFieldUp Move the current field above the preceding field
MoveFieldDown Move the current field below the following field
DeleteField Deletes a field by specific tag number and, in the case of repeated variable fields, by order of appearance among the other fields with the same tag
DeleteFieldLine Deletes a field in a specific field position (line number)
GetField Gets the data for a specific field by tag number and, in the case of repeated variable fields, by order of appearance among the other fields with the same tag
GetFieldLine Gets the data for a field in a specific field position (line number)
GetFieldUnicode Works like GetField, but also returns Unicode data in Numeric Character Reference (NCR) form
GetFieldLineUnicode Works like GetFieldLine, but also returns Unicode data in Numeric Character Reference (NCR) form
SetField Adds data to a field specified by tag number and, in the case of repeated variable fields, by order of appearance among the other fields with the same tag
SetFieldLine Adds data to a field in a specific field position (line number)
SetFixedField Inserts a value in a specific fixed-field element
GetFixedField Gets the data for a specific fixed-field element
FixedFieldPosition Returns or specifies how the fixed field displays in a record
SetCursorFixedField Places the cursor and selects the value, if any, in a specified element of the fixed field
GetSelectedText Gets selected text from a record (text can span multiple fields)
SetSelectedText Inserts specific text in a record at the cursor location (text can span multiple fields)
InsertText Inserts specified text at the cursor location
FindText Finds and highlights the next occurrence of specified text
ReplaceText Replaces the highlighted "found" text with specified text
ReplaceTextAll Replaces all occurrences of "found" text with specified text
FindReplaceNextText Finds the next occurrence of the specified text and selects it. Another instance of FindReplaceNextText replaces the selected text, moves to the next occurrence, and selects it (combines FindText and ReplaceText commands)
Reformat Reformats a record (redisplays the record with fields in correct order)
Validate Validates a record or records selected in a list and returns a list of validation errors, if any (logged on only)
CursorColumn Indicates or changes the column where the cursor is located in a record
CursorRow Indicates or changes the row where the cursor is located in a record
InsertMode Indicates or changes the insert mode (insert mode on or off)
ApplyOnlineDefaultCD Applies your online default constant data record to the current record or to records selected in a list
ApplyOnlineCDByName Applies an online constant data record by its specified name to the current record or to records selected in a list
ApplyCDFromList Specifies a constant data record on a list and applies it to the current record or to records selected in a list

Note: Before version 1.20 of the client, this macro command was named ApplyOnlineCDFromList. Both macro names work with both online and local constant data lists.

ApplyLocalDefaultCD Applies your local default constant data record to the current record or to records selected in a list
ApplyLocalCDByName Applies a local constant data record by its specified name to the current record or to records selected in a list
ChangeRecordType Changes the MARC format of a record (for example, from Books format to Computer Files format)

See also "ASCII and hexadecimal codes for diacritics and special characters."

Note on macros and non-Latin script data: You can incorporate Unicode character data into macros using GetFieldUnicode and GetFieldLineUnicode. The Unicode characters are converted to Numeric Character Reference (NCR) form.

Create records
Command name Brief description
OpenWorkform Opens a bibliographic workform of a specified type (Books, Computer Files, Continuing Resources*, Maps, Mixed Materials, Scores, Sound Recordings, or Visual Materials)

Or

Opens an authority workform of a specified type (Blank Record, Conference Name, Corporate Name, Geographics, Personal Name, Series, Uniform Title)

*Formerly called Serials; includes serials and integrating resources material types; see description for more information.

DeriveNewRecord Derive a new record or a new constant data record from an existing record
OpenWorkformForDatabase Alternative to OpenWorkform command
DeriveNewHPBRecord A derive command specific to the Hand Press Book database, which is available under contract with OCLC only to members of the Consortium of European Research Libraries (CERL)

Take actions on records
Command name Brief description
UpdateHoldings Updates holdings for a record or for records selected in a list (adds your OCLC institution symbol)

Or

When offline, marks local record(s) for batch update

ProduceAndUpdateHoldings Produces cards and accessions lists offline, as specified in your OCLC cataloging profile, and updates holdings for a record or for records selected in a list

Or

When offline, marks local record(s) for batch update and produce

AltProduceAndUpdateHoldings Updates holdings (adds OCLC symbol) and specifies Ad Produce, All Produce, and/or the number of extra cards to produce for a record or for records selected in a list

Or

When offline, marks local record(s) for batch update and alternate produce

DeleteHoldings Deletes your holdings (OCLC symbol) from a record or from records selected in a list

Or

When offline, marks local record(s) for batch delete holdings

Lock Locks a record
ReleaseRecordLock Releases the lock on a record
ReplaceRecord Replaces a record or records selected in a list in WorldCat or the Authority File

Or

When offline, marks local record(s) for batch replace

ReplaceAndUpdateHoldings Replaces a record, or records selected in a list, and updates holdings

Or

When offline, marks local record(s) for batch replace and update

SaveOnline Saves a record, or records selected in a list, to the online save file
SaveToLocalFile Saves a record, or records selected in a list, to the local save file
DeleteRecord Deletes a record, or for records selected in a list, from the online save file
Export Exports a record or records selected in a list, while logged on or offline

Or

Marks record(s) for batch export if you set the option in Tools > Options > Batch

AddToAuthorityFile Adds a new record or records selected in a list, to the Authority File (NACO-authorized libraries only)

Or

When offline, marks local record(s) for batch add

SubmitForReview Sends a bibliographic or authority record, or records selected in a list, to another library for review

Or

When offline, marks local record(s) for batch submit

RecallSubmitted Withdraws a record you submitted from review
AddToOnlineDatabase Alternative to AddToAuthorityFile command

Work with records, lists, and files
Command name Brief description
SearchList Searches for specified data in a list
GetListItem Display a specified record on a list
GetFirstSelectedItem Opens the first selected entry in the current list
GetNextSelectedItem Opens the next selected entry in the current list
GetFirstItem Selects the first item in a list (can be another list or a record)
GetNextItem Selects the next item in a list
GetPrevItem Selects the previous item in a list
GetListCellData Selects data or value in a cell specified by row and column title
GetListCellDataUnicode Selects data or value that contains non-Latin scripts in a cell specified by row and column title
GetNext100Records Displays a list of the next 100 records retrieved from the Authority File or from the bibliographic or authority online save file or online constant data
GetPrevious100Records Displays a list of the previous 100 records retrieved from the Authority File or from the bibliographic or authority online save file or online constant data
CloseList Closes a list
CloseRecord Closes a record
GetWindowTitle Returns the specified window title
ItemType Distinguishes the type of record or list for the current window
SetTopWindow Makes a specified window the current window (top-most or active window)
WindowCount Returns the total number of windows open in the client
CreateLocalFile Creates a local file in a specified path or sets an existing local file as the default
CopyRecord Copies a local file record or records selected in a local file list to another, existing local file that you specify
MoveRecord Moves a local file record or records selected in a local file list to another, existing local file that you specify.
Macro commands for navigating in records The following commands move the cursor to a new location. Most correspond to keys on the keyboard. They are used primarily for the macro recorder.
Macro command: Moves the cursor to...
  • EndCell: To the end of the current cell
  • HomeCell: To the beginning of the current cell
  • EndRecord: To the end of the variable fields
  • HomeRecord: To the beginning of the variable fields
  • KeyUp: One line up
  • KeyDown: One line down
  • KeyRight: One position to the right
  • KeyLeft: One position to the left
  • NextSubfield: To the next subfield
  • PrevSubfield: To the previous subfield
  • DeleteKey: One position to the right and deletes the character or space to the right of the cursor's original position
  • Backspace: One position to the left and deletes the character or space to the left of the cursor's original position

Print and work with macros, statuses, holdings, labels, and profiles
Macro command: Brief description
SetMyStatus Adds or changes My Status for a record or for records selected in a list
SetWorkflowStatus Changes the workflow status for a record or for records selected in a list
QueryRecordStatus Returns a specific status for a record
IsHeldBy Determines whether a specific OCLC symbol is included in a record
Holdings Returns a record's holdings list
Print Prints a record or (available for local save file and local constant data lists only) prints records selected in a list
PrintList Prints a list or a list of selected entries
PrintLabel Prints labels based on field data in the record(s) for spine, call number, author, and title
PrintLabelEx Allows you to edit data for a label for the current record before printing the record
GetLabelSpine Returns the spine text extracted from the current record, based on the holding library code, so that you can edit it
GetLabelSpineUnformatted Returns unformatted text (no line breaks) for a spine label extracted from the current records, based on the holding library code, so that you can edit it
GetLabelCallNumber Returns the call number from the current record, based on the holding library code, so that you can edit it
GetLabelAuthor Returns the author text from the current record, so that you can edit it
GetLabelTitle Returns the title text from the current record, based on the holding library code, so that you can edit it
StartLabelBatch Starts the label print process (must precede PrintLabel or PrintLabelEx)
EndLabelBatch Ends the label print process (must follow PrintLabel or PrintLabelEx)
PrintMacro Prints a macro
RunMacro Runs a macro
AssignMacroToKey Assigns a specified keystroke shortcut to a macro
LoadProfile Loads a specified user profile (for those who use multiple profiles)
SendKeys Sends keystrokes to the client

Bibliographic institution records
Command name Brief description
DeleteAllInstitutionRecords Deletes all institution records (IRs) attached to the displayed WorldCat master record.
ShowInstitutionRecords Shows institution records (IRs) attached to the displayed WorldCat master record.
UpdateAndAddInsitutionRecords For a displayed WorldCat master record, updates holdings in the master record and then creates and adds an institution record based on the master record.

For a displayed IR workform, updates the master record and then adds the IR.
ProduceAndAddInstitutionRecord For a displayed WorldCat master record, updates holdings and produces output for the master record, and then creates and adds an IR based on the master record.
AltProduceAndAddInstitution
Record
For a displayed WorldCat master record, updates holdings for the master record, produces output as described in your OCLC cataloging profile, and then creates and adds an IR based on the master record.
ReplaceUpdateAndAddInstitutionRecord For a displayed, modified master record, replaces the master record, updates holdings for the master record, and then creates and adds the institution record.

Note: See more about bibliographic institution records in Cataloging, Bibliographic Institution Records.

Alphabetical list of macro commands

A - F
AddField

AddFieldLine

AddToAuthorityFile
AddToOnlineDatabase

AltProduceAndAddInsititutionRecord

AltProduceAndUpdateHoldings

ApplyCDFromList

ApplyLocalCDByName

ApplyLocalDefaultCD

ApplyOnlineCDByName
ApplyOnlineDefaultCD

AssignMacroToKey

Backspace

Browse

BrowseAuthorityExpanded

CancelChanges

ChangeRecordType

CloseList

CloseRecord

ControlHeadingsAll

Copy

CopyControlNumber

CopyField

CopyRecord

CopySelected

CreateLocalFile

CursorColumn

CursorPosition

CursorRow

Cut

CutSelected

DeleteAllInstitutionRecords

DeleteCurrentField

DeleteCurrentWord

DeleteField

DeleteFieldLine

DeleteHoldings

DeleteKey
DeriveNewHPBRecord

DeriveNewRecord

EndCell

EndLabelBatch

EndRecord

Export

ExportAppend

FindReplaceNextText

FindText
FixedFieldPosition

G - O

GetField

GetFieldLine

GetFieldLineUnicode

GetFieldUnicode

GetFirstItem

GetFirstSelectedItem

GetFixedField

GetLabelAuthor

GetLabelCallNumber

GetLabelSpine

GetLabelSpineUnformatted

GetLabelTitle
GetListCellData
GetListCellDataUnicode

GetListItem

GetNext100Records

GetNextItem

GetNextSelectedItem

GetPrevious100Records

GetPrevItem

GetSelectedText

GetWindowTitle

Holdings

HomeCell

HomeRecord

InsertMode

InsertText

IsHeadingControlled

IsHeldBy

IsOnline

ItemType

KeyDown

KeyLeft

KeyRight

KeyUp

LoadProfile

Lock

Logoff

Logon

MoveFieldDown

MoveFieldUp

MoveRecord

NextSubfield
OpenWorkform
OpenWorkformForDatabase

P - Z

Paste

PrevSubfield

Print

PrintLabel

PrintLabelEx

PrintList

PrintMacro

ProduceAndAddInstitutionRecord

ProduceAndUpdateHoldings

QueryRecordStatus

RecallSubmitted

Reformat

ReleaseRecordLock

ReplaceAndUpdateHoldings

Repl

ReplaceRecord

ReplaceText

ReplaceTextAll

ReplaceUpdateAndAddInstitutionRecord

RunMacro

SaveOnline

SaveToLocalFile

Search

SearchList

SendKeys

SetCursorFixedField

SetField

SetFieldLine

SetFixedField

SetMyStatus

SetSelectedText

SetTopWindow

SetWorkflowStatus

ShowInstitutionRecords

StartLabelBatch

SubmitForReview

UncontrolAll

UncontrolHeading

UpdateAndAddInstitutionRecord

UpdateHoldings

Validate

WindowCount


back to top

Connexion client macro commands: Log on and off

Logon

Syntax BOOL = CS.Logon (sAuthorization, sPassword, sLevel)
Use to Log on to OCLC Connexion.

Same as using the File > Log On menu command, except that the Message of the Day is not displayed after logon is completed.
Parameters
  • For sAuthorization, enter your OCLC authorization number (in the format 123-456-789 or 123456789) enclosed in quotation marks (").
  • For sPassword, enter your OCLC password enclosed in quotations marks (").

    Note: Leave sAuthorization and sPassword blank to use your default authorization and password as selected in Tools > Options > Authorizations tab. Enter only a set of quotation marks for each parameter.

  • For sLevel, leave blank. Enter only a set of quotation marks. This parameter may be implemented in the future.
Return values TRUE if logon is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.Logon("", "", "") = True Then
MsgBox "Logon successful"
End If

End Sub

What this example does
  • Logs on using the default authorization and password you selected in Tools > Options > Authorizations tab
  • If logon is successful, returns the message Logon successful.

Logoff

Syntax CS.Logoff
Use to Log off OCLC Connexion.

Same as using the File > Log Off menu command.
Parameters None
Return values No value
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.Logoff

End Sub

What this example does
  • Logs off from the system (ends your session).

IsOnline

Syntax BOOL = CS.IsOnline
Use to Determine whether you are logged on.
Parameters None
Return values TRUE if logged on; otherwise, FALSE.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = True Then
MsgBox "You are currently logged on"
Else
MsgBox "You are not currently logged on"
End If

End Sub

What this example does
  • If logged on, returns the message You are currently logged on
    Or
    If not logged on, returns the message You are not currently logged on.

back to top

Connexion client macro commands: Search

Search

Syntax nNumRecords = CS.Search (sDatabase, sSearchTerm)
Use to Search an online database using a search string.

Same as using the following menu commands:
  • Cataloging > Search > WorldCat
  • Cataloging > Search > Online Save File
  • Cataloging > Search > Online Constant Data
  • Cataloging > Search > Local Save File
  • Cataloging > Search > Local Constant Data
  • Authorities > Search > Authority File
  • Authorities > Search > Online Save File
  • Authorities > Search > Online Constant Data
  • Authorities > Search > Local Save File
  • Authorities > Search > Local Constant Data
Parameters
  • nNumRecords represents the return value: the number of records found.
  • For sDatabase, enter one of the following database identifiers, enclosed in quotation marks ("):
    • WC (WorldCat)
    • BS (online bibliographic save file)
    • BD (online bibliographic constant data)
    • BL (local bibliographic save file)
    • BC (local bibliographic constant data)
    • BR (online bibliographic review records)
    • AF (Authority File)
    • AS (online authority save file)
    • AD (online authority constant data)
    • AL (local authority save file)
    • AC (local authority constant data)
    • AR (online authority review records)
    • CN (Chinese name authority file)
    • HP (online Hand Press Book database)
    • HO (online Hand Press Book save file)
    • HL (local Hand Press Book save file)

    Note: If the database parameter is empty or the database identifier is not supported, the search defaults to WorldCat.

  • For sSearchTerm enter a search string (in upper- or lowercase) that is valid for the database you want to search. Enclose in quotation marks (").

    Note: Whole phrase WorldCat searches require that the phrase be enclosed in quotation marks. For these searches, enclose the phrase in a double set of quotation marks (""search phrase"").

    Tip: Retrieve all records from save file or constant data: To retrieve all records from an online save file or from online constant data, specify the database identifier and leave the search string empty.
    Example:
    CS.Search "BS", "" (retrieves all records in the online bibliographic save file)

Return values Number of records found (nNumRecords).
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nNumRecords = CS.Search("WC", "gon,wi,th,w")
MsgBox (nNumRecords) & " records were found for Gone with the Wind"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record 1.
  • Searches WorldCat's derived-search title index for Gone with the Wind, and returns the number of records retrieved (X) in the message [X] number of records were found for Gone with the Wind.

Search guidelines, indexes, examples

WorldCat searches (database identifier WC)

The search string for the Search macro command should follow the same format for a keyword/numeric or derived search that you would enter in the Command Line Search of the Search WorldCat window, except:

Caution: Do not use the Search macro command to browse WorldCat. You must use the macro command Browse.

Guidelines:

  • Omit the Find command (fin) from a derived or keyword search.
  • Include index labels in a keyword search.
  • When you use index labels, include the following punctuation:
    • Colon (:) for single words
    • Equal sign (=) for phrases and whole phrases
    • Enclose whole phrases in a double set of quotation marks ("" "")
    • Do not use spaces before or after the punctuation
  • Index labels are optional for a derived search if it is the first or only search; if you combine searches, index labels are required.
  • Enter an OCLC Control Number search with the index label (no:) or precede the number with an asterisk (*) or number sign (#).
  • If you include qualifiers, begin each qualifier with a slash or an index label followed by a colon (:).

    Use slashes or index labels with the following four types of qualifiers: type of material, years, microform, or source (/dlc).

    Use index labels only to qualify a search by Internet/non-Internet or a language.
  • For slash qualifiers, you can include only one qualifier of each type and the qualifiers must be in the last position of the search statement.
  • Combine searches using Boolean operators (and, or, not).
  • In a keyword search, you can specify proximity and order of terms with proximity operators with (w) or near (n).
  • To expand a term in a keyword or numeric search, replace characters or endings with symbols for wildcards (# or ?), truncation (*), and plural stemming (+). See Use wildcards, truncation, and plural stemming in searches for details.

    Caution: Wildcard and truncation symbols must be preceded by at least three characters.

For more information and for lists of selected indexes and examples, see Cataloging, Search WorldCat, "Search WorldCat interactively."

See Searching WorldCat Indexes at < http://www.oclc.org/support/documentation/worldcat/searching/searchworldcatindexes > for comprehensive descriptions of indexes, guidelines, and examples.

Online bibliographic save file searches (database identifier BS)

Guidelines:

  • Enter an index label (see list below), a colon, and then the search term.
  • You can combine searches using Boolean operators. To distinguish the words and, or, or not when they are part of your search term (not used as Boolean operators), you must enclose in single quotation marks (').
    Example:
    "ti:red 'and' the black"
  • The search is not case-sensitive: you can enter the search string in upper- or lowercase.
  • To retrieve all records in the save file, leave the search string parameter empty: CS.Search "BS", "".

Indexes and labels:

Index Label Values
Save File Number sf: (default) You supply
OCLC Control Number an: You supply
Title ti: You supply
URL am: You supply
Used Date us: You supply
My Status ms: You supply
Action Status as: delete holdings completed
delete holdings failed
export completed
export failed
export ready
label completed
label failed
label ready
produce completed
produce failed
replace completed
replace failed
update holdings completed
update holdings failed
validate completed
validate failed
Workflow Status ws: completedin processin reviewnew
Source Status ss: derivedextractedimportedoclcpathfinderworkform
Review rs: submitted

Note: If you record rather than write a macro, statuses are recorded with no spaces between words. When you write macros, you can retain the spaces. Values you enter are not case-sensitive.

Online bibliographic constant data searches (database identifier BD)

Search examples:

CS.Search "BD", "nm:bibconstantdata" (retrieves a constant data record named bibconstantdata)

CS.Search "BD", "" (retrieves all bibliographic constant data records)

Indexes and labels:

  • Constant Data Name (nm) (default)
  • My Status (ms)

Local bibliographic save file searches (database identifier BL)

Follow the same guidelines as for online bibliographic save file searches (except use the database identifier BL).

Indexes and labels:

Index Label Values
Save File Number sf: (default) You supply
OCLC Control Number an: You supply
Title ti: You supply
Name nm: You supply
Date dt: You supply
Standard Number sn: You supply
Holding Library Code cd: You supply
My Status ms: You supply
Workflow Status ws: completedin processin reviewnew
Action Status as: delete holdings completed
delete holdings failed
delete holdings ready
delete holdings notset
export completed
export failed
export ready
export notset
label completed
label failed
label ready
label notset
produce completed
produce failed
produce ready
produce notset
replace completed
replace failed
replace ready
replace notset
update holdings completed
update holdings failed
update holdings ready
update holdings notset
validate completed
validate failed

validate notset
Source Status ss: derivedextractedimportedoclcpathfinderworkform
Format ft: bookscomputer filesmapsmixed materialsscoresserialssound recordingsvisual materials
Held Status hl: true
false
Library lb: dlc
pcc
nlm
gpo
agl
ukm
nlc
Retrieval order ro: save file number
oclc control number
date/time added
name
title

Note: If you record rather than write a macro, statuses are recorded with no spaces between words. When you write macros, you can retain the spaces. Values you enter are not case-sensitive.

Local bibliographic constant data searches (database identifier BC)

See examples for online bibliographic constant data searches (except use the database idenfifier BC).

Indexes and labels:

  • Constant data name (nm:) (default)
  • My Status (ms:)

Online bibliographic review records (database identifier BR)

Use to find bibliographic records sent to your library for review by another library you specify by institution symbol. (Same as selecting Review File Records for Institution check box and entering institution symbol in the Search Online Bibliographic Save File window via Cataloging > Search > Online Save File).

Index and label:

Records sent for review (sm)

Enter a valid institution symbol (in uppercase) for a library whose records you want to retrieve for review.
Example:
num = CS.Search("BR", "sm:OCL")
MsgBox("Found " & num & "records")

Authority File searches (database identifier AF)

Guidelines:

  • Enter an index label (see list below), a colon, and then the search term.
    Example:

    CS.Search "AF", "pn:mitchell"
  • You can combine searches using Boolean operators. To distinguish the words and, or, or not when they are part of your search term, you must enclose them in single quotation marks (').
    Example:
    CS.Search "AF", "ti:war 'and' peace"
  • The search is not case-sensitive: you can enter the search string in upper- or lowercase.

Indexes and labels:

Index Label
Personal Names pn: (default)
Corporate Names co:
Conference Names cn:
Titles ti:
Topicals to:
Geographic Names gg:
Children's Subjects sj:
LCCN ln:
ISBN bn:
ISSN in:
LCSH su:
OCLC ARN an:
Subdivision Headings sb:
LC Name nw:
Derived Personal Name pd:
Derived Corporate/Conference/Geographic cd:
Derived Title td:
Derived Topical Subject sd:

Online authority save file searches (database identifier AS)

Guidelines:

  • Enter an index label (see list below), a colon, and then the search term.
  • You can combine searches using Boolean operators. To distinguish the words and, or,or not when they are part of your search term (not used as Boolean operators), you must enclose in single quotation marks.
    Example:
    CS.Search "AS", "ti:red 'and' the black"
  • The search is not case-sensitive: you can enter the search string in upper- or lowercase.
  • To retrieve all records in the save file, leave the search string parameter empty: CS.Search "AS", "".

Indexes and labels:

Index Label Values
Save File Number sf: (default) You supply
Personal Names pn: You supply
Corporate Names co: You supply
Conference Names cn: You supply
Titles ti: You supply
Topicals to: You supply
Geographic Names gg: You supply
Children's Subjects sj: You supply
LCCN ln: You supply
LCSH su: You supply
OCLC ARN an: You supply
Subdivision Headings sb: You supply
Replace Date rp: You supply
Workflow Status ws: completein processin reviewnewrespondedimported
Review Status rs: submitted

Note: If you record rather than write a macro, statuses are recorded with no spaces between words. When you write macros, you can retain the spaces. Values you enter are not case-sensitive.

Online authority constant data searches (database identifier AD)

Search examples:

CS.Search "AD", "nm:authconstantdata" (retrieves a constant data record named authconstantdata)

CS.Search "AD", "" (retrieves all authority constant data records)

Index and label:

Constant Data Name (nm) (default)

Local authority save file (database identifier AL)

Follow the same guidelines as for online authority save file searches (except use the database identifier AL).

Index Label Values
Save File Number sf: (default) You supply
OCLC ARN an: You supply
Heading he: You supply
Workflow Status ws: completein processin reviewnew
My Status ms: You supply
MARC Organization Code cd: You supply
Master Record Locked lk: true
false
Action status as: add completed
add failed
add ready
add notset
replace completed
replace failed
replace ready
replace notset
submit completed
submit failed
submit ready
submit notset
export completed
export failed
export ready

export notset
Retrieval Order ro: save file number
oclc arn
date/time added
heading

Note: If you record rather than write a macro, statuses are recorded with no spaces between words. When you write macros, you can retain the spaces. Values you enter are not case-sensitive.

Local authority constant data searches (database identifier AC)

See examples of online authority constant data searches (except use the database identifier AC).

Indexes and labels:

  • Constant data (nm:) (default)
  • My Status (ms:)

Online authority review records (database identifier AR)

Use to find authority records sent to your library for review by another library you specify by institution symbol. (Same as selecting Review File Records for Institution check box and entering institution symbol in the Search Online Authority Save File window via Authorities > Search > Online Save File).

Index and label:

  • Records sent for review (sm:).
    Enter a valid institution symbol (in uppercase) for a library whose records you want to retrieve for review.
    Example:
    num = CS.Search("AR", "sm:OCL")
    MsgBox("Found " & num & "records")

Chinese name authority file searches (database indicator CN)

Search for Chinese name authority records using Latin script search terms only. You cannot use non-Latin scripts with macros. Access to the records is read-only.

Indexes and labels:

Index Label
ARN an: (default)
LCCN ln:
Personal Name pn:
Corporate/Conference Name cn:
Title ti:

Hand Press Book database searches (database indicator HP)

Hand Press Book (HPB) is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL).

For indexes and labels, in the client, open the client Help, click the Index tab, enter keyword Hand Press Book and double-click search indexes for the HPB database to see a list of Hand Press Book-specific indexes and a list of standard WorldCat indexes that can also be used for Hand Press Book searches.

Online Hand Press Book save file searches (database indicator HO)

Hand Press Book is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL).

Indexes and labels:

Index Label Values
Save File Number sf: (default) You supply
OCLC Control Number an: You supply
Title ti: You supply
Name pn: You supply
My Status ms: You supply
Action status as: add completed
add failed
add ready
delete holdings completed
delete holdings failed
export completed
export failed
export ready
label completed
label failed
label ready
produce completed
produce failed
replace completed
replacefailed
update holdings completed
update holdings failed
validate completed
validate failed
Workflow status ws: completein processin reviewnew
Source status ss: derived
extracted
imported
oclc
pathfinder
workform
Review status rs: submitted

Note: If you record rather than write a macro, statuses are recorded with no spaces between words. When you write macros, you can retain the spaces. Values you enter are not case-sensitive.

Local Hand Press Book save file searches (database indicator HL)

Hand Press Book is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL).

Indexes and labels:

Index Label Values
Save File Number sf: (default) You supply
OCLC Control Number an: You supply
Title ti: You supply
My Status ms: You supply
Action Status as: add to HPB completed
add to HPB failed
add to HPB ready
add to HPB not set
export completed
export failed
export ready
export notset
label completed
label failed
label ready
label notset
replace completed
replace failed
replace ready
replace notset
validate completed
validate failed
Workflow Status ws: completedin processin reviewnew
Source Status ss: derivedoclcworkform

Note: If you record rather than write a macro, statuses are recorded with no spaces between words. When you write macros, you can retain the spaces. Values you enter are not case-sensitive.

Browse

Syntax BOOL = CS.Browse (sDatabase, sIndex, sSearchTerm)
Use to Browse WorldCat or Authority File.

Same as using the following menu commands:
Cataloging > Browse> WorldCat
Authorities > Browse > Authority File
Parameters
  • For sDatabase, enter one of the following database identifiers, enclosed in quotation marks ("):
    • WC (WorldCat)
    • AF (Authority File)
    • HP (online Hand Press Book database)
Notes:
  • If the database parameter is empty or the database identifier is not supported, the browse defaults to WorldCat.
  • If the index parameter is empty or the index label is not supported, the browse defaults to the browse title index for WorldCat or the personal names index for the Authority File.
  • For sIndex enter a valid index for the online database you want to browse, enclosed in quotation marks.
    Note: See notes on browsing WorldCat indexes below. See the list of indexes below for browsing the Authority File.
  • For sBrowseTerm enter a browse string (in upper- or lowercase), enclosed in quotation marks.
Comments You must be logged on to run this macro.
Return values TRUE if the browse is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Browse("WC", "ti", "gone with the wind") = True Then
MsgBox "Browse successful"
Else
MsgBox "Browse not successful"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Browses the WorldCat title for Gone with the Wind.
  • Returns a message confirming that the browse was successful or unsuccessful.

Browsing WorldCat

For indexes, labels, and examples, see "Selected browsable indexes" in Cataloging, Search WorldCat, "Browse WorldCat."

See Searching WorldCat Indexes at < http://www.oclc.org/support/documentation/worldcat/searching/searchworldcatindexes > for comprehensive descriptions of indexes .

Browsing the Authority File: Indexes

Index Label
Personal Names pn: (default)
Corporate/Conference Names co:
Titles ti:
Topicals to:
Geographic Names gg:
LCSH su:
Subdivision Headings sb:
LC Names nw:
Children's Subjects sj:

BrowseAuthority
Expanded

Syntax BOOL = CS.BrowseAuthorityExpanded (nRecOffset, sRootIndex, sRootTerm, sExpanded Term)
Use to Options:
  • Browse the Authority File using an expanded scan. That is, specify a heading and subheading for an Authority File browse.

    Same as entering a heading and an expanded term in the Browse Authority File window (Authorities > Browse > Authority File) (nRecOffset = 0).

Or

  • Expand a scan by specifying a subheading for a specific entry in an Authority File browse results list.

    Same as entering an expanded term for an entry in a Browse Authority File List of results (nRecOffset = 1 - xxx = number of entry in browse list)
Parameters
  • For nRecOffset, enter the number 0 for option 1 described above, or enter 1 - [any browse list record number] for option 2 described above.
  • For sRootIndex, enter the index label for the index you want to browse. Specify for Option 1 only. (See the list of indexes above for browsing the Authority File.)
  • For sRootTerm, enter a browse string for a heading (in upper- or lowercase), enclosed in quotation marks. Specify for option 1 only.
  • For sExpandedTerm, enter a browse string for a subheading (in upper- or lowercase), enclosed in quotation marks.
Comments You must be logged on to run this macro.
Return values TRUE if the expanded browse is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Browse "AF", "sj", "jones"
CS.BrowseAuthorityExpanded "4", "", "", "bible"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Browses the Authority File children's subjects index for Jones.
  • For the fourth entry in the browse results list, expands the browse for the subheading Bible.

    Alternative: Do the heading browse and subheading expanded scan at the same time:
    CS.BrowseAuthorityExpanded "0", "sj", "jones", "bible"

back to top

Connexion client macro commands: Edit records

AddField

Syntax BOOL = CS.AddField (nInstance, sData)
Use to Add a variable field in the current record in correct tag order and specify the order of its appearance among other fields with the same tag number.
Parameters
  • For nInstance, enter a number to specify the order of the new field among other fields with the same tag. For example, enter 2 to insert the new field as the second instance of a repeatable field.
  • For sData, enter the data to put in the new field: Type the three-character field number, followed by two one-character indicators (or substitute spaces if no indicators), followed by the field text. Enclose the data string in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.AddField 2, "245 Second 245 field"
If CS.AddField(3, "245 Third 245 field") = True Then
MsgBox "245 field successfully added"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds a new repeatable field 245 as the second instance--that is, following the first instance of field 245--with no indicators (two spaces between the tag number 245 and the text). Adds the text Second 245 field to the new field. (No confirmation message.)
  • Adds a third instance of field 245 with no indicators and the text Third 245 field. If the action is successful, returns the confirmation message 245 field successfully added.

AddFieldLine

Syntax BOOL = CS.AddFieldLine (nLineNumber, sData)
Use to Add a variable field to the current record in a specific field position specified by line number, with each field representing one line.
Parameters
  • For nLineNumber, enter the field position (line number) where you want the new field inserted.
  • For sData, enter the data you want to add to the field: Type the three-character field number, followed by two one-character indicators (or substitute spaces if no indicators), followed by the field text. Enclose the data string in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.AddFieldLine 1, "500 Field added at line position 1"
If CS.AddFieldLine(3, "500 Field added at line position 3") = True Then
End If
CS AddFieldLine 999, "500 Field added as last line of record"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds a new field 500 as the first line of the record–that is, as the first variable field–with no indicators (two spaces between the tag number 500 and the text). Adds the text Field added at line position 1 to the new field. (No confirmation message.)
  • Adds a new field 500 as the third line of the record with no indicators and the text Field added at line position 3. If the field is added, returns the message New field successfully added.
  • Adds a new field 500 at the end of the record with no indicators and the text Field added as last line of record. (No confirmation message.)

ControlHeadingsAll

Syntax BOOL = CS.ControlHeadingsAll
Use to In the current record, control all controllable headings that are not already controlled.

Same as using the command Edit > Control Headings > All.
Parameters None
Comment You must be logged on to use this macro command.
Return values TRUE if the action is successful, or FALSE if not.

Note: A return of FALSE indicates only that the action was unsuccessful. It does not differentiate specifically whether the command itself failed or whether one or more headings could not be controlled.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.AddFieldLine 1, "650 0Ballet dancing " & Chr(223) & "v" & " Fiction"
CS.AddFieldLine 2, "650 0Horseback riding " & Chr(223) & "v" & " Fiction"
CS.AddFieldLine 3, "650 0Baton twirling " & Chr(223) & " Fiction"
CS.AddFieldLine 4, "650 0Swimming " & Chr(223) & "v" & " Fiction"
CS.ControlHeadingsAll
CS.CloseRecord False
CS.Search "WC", "#1"
CS.AddFieldLine 1, "650 0Ballet dancing " & Chr(223) & "v" & " Fiction"
CS.AddFieldLine 2, "650 0Horseback riding " & Chr(223) & "v" & " Fiction"
CS.AddFieldLine 3, "650 0Baton twirling " & Chr(223) & "v" & " Fiction"
CS.AddFieldLine 4, "650 0Swimming " & Chr(223) & "v" & " Fiction"
If CS.ControlHeadingsAll() = True Then
MsgBox "Control Headings All successful"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds four new fields to the record as the first, second, third, and fourth fields (specified by line number), each containing:
    • No first indicator (blank space)
    • Second indicator 0
    • Heading text in subfield a (Line 1: Ballet dancing, Line 2: Horseback riding, Line 3: Baton twirling, and Line 4: Swimming)
    • A space
    • The subfield delimiter character: Chr(223) (for a list of character codes, see "ASCII and hexadecimal codes for diacritics and special characters")
    • Subfield designation v
    • A space
    • Heading text (In all 4 lines: Fiction)
  • Controls all headings in the record.
  • Closes the record without saving it.
  • Calls up record number 1 from WorldCat again.
  • Adds the same four new fields with the same indicators and text in the same position.
  • Controls all headings in the record and confirms that the headings were controlled by returning the message Control Headings All successful.

UncontrolHeading

Syntax BOOL = CS.UncontrolHeading
Use to Uncontrol the controlled heading where the cursor is located to make it available for edit.

Same as using the command Edit > Control Headings > Uncontrol.
Parameters None
Comment You must be logged on to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.CursorRow = 8
CS.CursorColumn = 6
If CS.UncontrolHeading() = True Then
MsgBox "Heading uncontrolled"
Else
MsgBox "Uncontrol failed"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Places the cursor in the sixth column of the eighth row.
  • Uncontrols the heading where the cursor is located (if the heading is controlled) and either confirms that the heading was uncontrolled by returning the message Heading uncontrolled or returns the message Uncontrol failed.

UncontrolAll

Syntax CS.UncontrolAll
Use to Uncontrol all headings in the current record.

Same as using the command Edit > Control Headings > Uncontrol All.
Parameters None
Comment You must be logged on to run this macro.
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.UncontrolAll

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Places the cursor in the sixth column of the eighth row.
  • Uncontrols all controlled headings in record number 1.

IsHeadingControlled

Syntax BOOL = CS.IsHeadingControlled (nLineNumber)
Use to Determine whether a heading in a specified line of the current record is controlled..
Parameters For nLineNumber, enter the line number of the heading field for which you want to check the control status. Each field represents one line.
Comment You must be logged on to run this macro.
Return values TRUE if the heading is controlled, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.IsHeadingControlled (16) = True Then
CS.CursorRow = 16
CS.UncontrolHeading
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Places the cursor in the sixth column of the eighth row.
  • Uncontrols the heading in line 16 (sixteenth field) if the heading is controlled.

Copy

Syntax CS.Copy (nStartRow, nStartColumn, nEndRow, nEndColumn)
Use to Copy specified text to the clipboard.

Same as using the command Edit > Cut Copy Paste > Copy.
Parameters
  • For nStartRow, enter a number to specify the first row of text you want to copy (start row offset).
  • For nStartColumn, enter a number to specify the first column of text you want to copy (start columnoffset).
  • For nEndRow, enter a number to specify the last row of text you want to copy (end row offset).
  • For nEndColumn, enter a number to specify the last column of text you want to copy (end column offset).
Comments
  • Offsets are 1-based indexes. If any parameter is 0, the text is not copied.
  • You cannot specify any part of the fixed field unless it is displayed as variable fields.
Return values None.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.Copy 2, 1, 2, 10
CS.CursorRow = 5
CS.CursorColumn = 1
CS.Paste

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Copies the first 10 characters from the second line of the record and pastes at the beginning of the fifth line.

Cut

Syntax BOOL = CS.Cut (nStartRow, nStartColumn, nEndRow, nEndColumn)
Use to Remove the specified text from its current position and copy to the Windows clipboard.

Same as using the command Edit > Cut Copy Paste > Cut.
Parameters
  • For nStartRow, enter a number to specify the first row of text you want to cut (start row offset).
  • For nStartColumn, enter a number to specify the first column of text you want to cut (start column offset).
  • For nEndRow, enter a number to specify the last row of text you want to cut (end row offset).
  • For nEndColumn, enter a number to specify the last column of text you want to cut (end column offset).
Comments
  • Offsets are 1-based indexes. If any parameter is 0, the text is not copied.
  • You cannot specify any part of the fixed field unless it is displayed as variable fields.
Return values None
Example

Works the same as in the example for Copy, except that the 10 characters are removed (not copied) from the second line of the record and pasted at the beginning of the fifth line.


Paste

Syntax CS.Paste
Use to Paste text from the clipboard into the current window at the cursor location.

Same as using the command Edit > Cut Copy Paste > Paste.
Parameters None
Return values None
Example

See the example for Copy, which includes the Paste command


CopySelected

Syntax CS.CopySelected
Use to Copy selected text to the clipboard
Parameters None
Comments You must select text before using this macro command.
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.FindText "pastimes", 0
CS.CopySelected
CS.CursorRow = 1
CS.CursorColumn = 6
CS.Paste
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Finds and selects the first occurrence of the word pastimes in the record.
  • Copies pastimes.
  • Pastes pastimes in the first subfield of the first field in the record.

CutSelected

Syntax CS.CutSelected
Use to Cut selected text to the clipboard.
Parameters None
Comments You must select text before using this macro command.
Return values None
Example Works the same as in the example for CopySelected, except the pastimes is removed (not copied) and then pasted.

CopyField

Syntax CS.CopyField
Use to Copy the field where the cursor is located to the clipboard.

Same as using the command Edit > Cut Copy Paste > Copy Field.

Parameters None
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.CursorRow = 5
CS.CursorColumn = 1
CS.CopyField
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Locates the cursor at the beginning of the fifth field and copies the entire field.

CopyControlNumber

Syntax CS.CopyControlNumber
Use to Copy the control number of the current record to the clipboard (control number is the OCLC number of a bibliographic record or the ARN of an authority record).

Same as using the command Edit > Cut Copy Paste > Copy Control Number.
Parameters None
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CopyControlNumber

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Copies the OCLC control number to the Windows clipboard.

CursorPosition

Syntax CS.CursorPosition (nPosition)
Use to Used by the macro recorder to record the position of the cursor when you click to place it in a record.
Parameters
  • nPosition is a number representing the location of the cursor.
Comments CursorPosition generally works reliably only for the macro recorder. Its numeric value varies depending on the presence or absence of indicators.

Recommendation:

For writing macros, OCLC recommends that you use CursorColumn, instead of CursorPosition to place the cursor. Writing CursorPosition into a macro can cause unexpected results.

CursorColumn, on the other hand, reliably places the cursor by the exact number of data points in a field. A data point can be a character or a space; therefore, the presence or absence of indicators is accounted for.
Return values An integer representing the position of the cursor.

DeleteCurrentField

Syntax CS.DeleteCurrentField
Use to Delete the field where the cursor is located.

Same as using the command Edit > Cut Copy Paste Delete Field.

Parameters None
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.CursorRow = 5
CS.CursorColumn = 1
CS.DeleteCurrentField
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the result is an open WorldCat record, locates the cursor at the beginning of the fifth field and deletes the entire field.

DeleteCurrentWord

Syntax CS.DeleteCurrentWord
Use to Delete the word where the cursor is located.
Parameters None
Return values None.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.CursorRow = 17
CS.CursorColumn = 20
CS.DeleteCurrentWord
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the result is an open WorldCat record, places the cursor in the word in the 17th row at the 20th character position and deletes the word.

DeleteToEndOfCell

Syntax CS.DeleteToEndOfCell
Use to Delete text from the cursor position to the end of the cell.
Parameters None
Return values None.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.CursorRow = 3
CS.CursorColumn = 6
CS.DeleteToEndOfCell
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the result is an open WorldCat record, places the cursor in the sixth character position in the third field of the record (row 3, column 6) and deletes the text to the end of the cell, starting with the sixth character.

MoveFieldUp

Syntax CS.MoveFieldUp
Use to Move the field where the cursor is located up one position.

Same as using the command Edit > Cut Copy Paste > Move Field > Up.

Parameters None
Return values None.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If ItemType = 0 Then
CS.CursorRow = 3
CS.CursorColumn = 1
CS.MoveFieldUp
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the result is an open WorldCat record, places the cursor at the beginning of the third field and moves the field up one position.

MoveFieldDown

Syntax CS.MoveFieldDown
Use to Move the field where the cursor is located up one position.

Same as using the command Edit > Cut Copy Paste > Move Field > Down.

Parameters None
Return values None.
Example Works the same as in the example for MoveFieldUp, except that, instead of moving the field up, moves the field down one position.

DeleteField

Syntax BOOL = CS.DeleteField (sTag, nInstance)
Use to Delete a field by specific tag number and, in the case of repeated variable fields, by order of appearance among the other fields with the same tag number.

Same as using the command Edit > Cut Copy Paste > Delete Field.

Parameters
  • For sTag, enter the tag of the field you want to delete.
  • For nInstance, enter a number to specify which instance of a repeated field you want to delete. For example, enter 2 to delete the second instance of the repeated field.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.DeleteField "700", 2
If CS.DeleteField("700", 1) = True Then
MsgBox "700 field successfully deleted"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Deletes the second instance of field 700. (No confirmation message.)
  • Deletes the first instance of field 700 and, if successful, returns the confirmation message 700 field successfully deleted.

DeleteFieldLine

Syntax BOOL = CS.DeleteFieldLine (nLineNumber)
Use to Delete a field in a field position specified by line number, with each field representing one line.
Parameters
  • For nLineNumber, enter the field position (line number) of the field you want to delete.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.DeleteFieldLine 1
If CS.DeleteFieldLine(1) = True Then
MsgBox "The first line was deleted"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Deletes the first variable field in the record (line number 1) (no confirmation message)
  • Deletes the next variable field in the record and, if successful, returns the message The first line was deleted.

GetField

Syntax BOOL = CS.GetField (sTag, nInstance, sData)
Use to Get the data for a field by tag number and, in the case of repeated variable fields, by order of appearance among the other fields with the same tag number.
Parameters
  • For sTag, enter the field number of the field you want.

    Note:
    You can use a pound sign (#) in a tag number as a wildcard.

    Examples:
    CS.GetField("6##, 2, sField) gets the second 6XX tag
    CS.GetField("#00", 2, sField) gets the second X00 tag
    CS.GetField("###", 2, sData) gets the second line in the record and is the same as using:
    CS.GetFieldLine(2, sData)
  • For nInstance, enter a number to specify which instance of the repeated field you want. For example, enter 2 to get the second instance of the field.
  • Enter the parameter sData to store the text of the field you specify.
Comments
  • The first parameter, sTag, accepts the pound sign (#) as a wildcard.
  • Retrieving data that contains non-Latin script characters using this macro command returns a message that "Data contains non-Latin script." Use the GetFieldUnicode command instead for retrieving data with non-Latin scripts.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sData as String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.GetField "700", 2, sData
MsgBox sData
If CS.GetField("520", 1, sData) = True Then
MsgBox sData
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Gets the second instance of field 700 and stores the data in the field.
  • Returns a message giving the data of field 700.
  • Gets the first instance of field 520 and returns a message giving the data in the field.

GetFieldLine

Syntax BOOL = CS.GetFieldLine (nLineNumber, sData)
Use to Get the data for a field in a field position specified by line number, with each field representing one line.
Parameters
  • For nLineNumber, enter the field position (line number) of the field you want.
  • Enter the parameter sData to store the data from the field you specify.
Comment Retrieving data that contains non-Latin script characters using this macro commandreturns a message that "Data contains non-Latin script." Use the GetFieldLineUnicodecommand instead for retrieving data with non-Latin scripts.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sData as String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.GetFieldLine 4, sData
MsgBox sData
If CS.GetFieldLine(10, sData) = True, Then
MsgBox sData
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Gets the data in the fourth variable field of the record (line number 4) and returns a message giving the data.
  • Gets the data in the tenth variable field of the record (line number 10) and returns a message giving the data.

GetFieldUnicode

Syntax BOOL = CS.GetFieldUnicode (sFieldTag, shFieldInst, sFieldData)
Use to This command works like GetField, but also returns Unicode data in Numeric Character Reference (NCR) form.
Parameters
  • For sFieldTag, enter the field number you want to work with.
  • For nFieldInst, enter a number to specify which instance of a repeatable field you want. For example, enter 2 to get the second instance of the field.
  • Enter the parameter sFieldData to store the returned field data.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim nLen As Integer
Dim sFieldData as String
Set CS = CreateObject("Connex.Client")
CS.GetFieldUnicode 245, 1, sFieldData
MsgBox sFieldData
sFieldData) = Mid$(sFieldData, 6, Len(sFieldData))
sFieldData = "500 " + sFieldData
CS.AddFieldLine1, sFieldData

End Sub

What this example does
  • Gets field 245 in the displayed record as Unicode.
  • Displays the data in a message box.
  • Constructs a 500 field from the data.
  • Adds the new field to the record.

GetFieldLineUnicode

Syntax BOOL = CS.GetFieldLineUnicode (shLineNum, sFieldData)
Use to This command works like GetFieldLIne, but also returns Unicode data in Numeric Character Reference (NCR) form.
Parameters
  • For shLineNum, enter the record line number (each field is counted as a line).
  • Enter the parameter sFieldData to store the returned field data.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim nLen As Integer
Dim sFieldData as String
Set CS = CreateObject("Connex.Client")
CS.GetFieldLineUnicode 8, sFieldData
MsgBox sFieldData
sFieldData) = Mid$(sFieldData, 6, Len(sFieldData))
sFieldData = "500 " + sFieldData
CS.AddFieldLine1, sFieldData

End Sub

What this example does
  • Gets field 245 in the displayed record as Unicode.
  • Displays the data in a message box.
  • Constructs a 500 field from the data.
  • Adds the new field to the record.

SetField

Syntax BOOL = CS.SetField (nInstance, sData)
Use to Add a field or add data to an existing field specified by tag number and, in the case of repeated variable fields, by the order of appearance among the other fields with the same tag number.
Parameters
  • For nInstance, enter a number to specify the position of the new field among the repeated instances of the field. For example, enter 2 to insert the new field below the first instance of the specified field.
  • For sData, enter the text you want to insert: Type the three-character field number, followed by two one-character indicators (or substitute spaces if no indicators), followed by the field text. Enclose the data string in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.SetField 1, "245 New 245 field"
If CS.SetField(2, "700 New second occurrence of 700 field") = True Then
MsgBox "Second 700 field changed"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds a new field 245 as the first instance of the field, with no indicators (two spaces between tag number and text) and the text New 245 field.
  • Adds a new field 700 as the second instance, with no indicators and the text New second occurrence of 700 field. If the action is successful, returns the message Second 700 field changed.

SetFieldLine

Syntax BOOL = CS.SetFieldLine (nLineNumber, sData)
Use to Add a field or add data to an existing field in a field position specified by line number, with each field representing one line.
Parameters
  • For nLineNumber, enter the field position (line number) of the field to which you want to add data.
  • For sData, enter the data you want to add: Type the three-character field number, followed by two one-character indicators (or use spaces if no indicators), followed by the field text. Enclose the data string in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.SetFieldLine "1", "500 New first line
If CS.SetFieldLine(10, "500 New 10th line") = True Then
MsgBox "Line 10 changed"
End If
If CS.SetFieldLine(10, "500 New last line in record") = True Then
MsgBox "New last line added"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds a new field 500 as the first field (line) in the record, with no indicators (two spaces between tag number and text) and the text New first line.
  • Adds a new field 500 as the tenth field in the record, with no indicators and the text New 10th line. If the action is successful, returns the message Line 10 changed.
  • Adds a new field 500 as the last line of the record, with no indicators and the text New last line in record. If the line is added successfully, returns the message New last line added.

SetFixedField

Syntax BOOL = CS.SetFixedField (sFieldName, sData)
Use to Insert a value in a specific fixed-field element.
Parameters
  • For sFieldName, enter the name of the fixed-field element where you want to insert a value, enclosed in quotation marks (")

    Note: For Dates 2, enter a comma (,) for the fixed-field element name.
    Example: CS.SetFixedField(",", "uuuu")
  • For sData, enter the value you want to insert in the specified fixed-field element, enclosed in quotation marks (")

    Tip: Enter a space instead of data in the quotation marks to clear the specified fixed-field element..
Comments This command works only when the setting for displaying the fixed field (View > OCLC Fixed Field) is set to Top or Bottom.

The command does not work when the fixed field display is set to Variable Field.

See the description of "FixedFieldPosition," the command for determining or specifying how the fixed field displays.
Return values TRUE if the action is successful, or FALSE if not. Also returns FALSE if you set a fixed field element as a space to clear it.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.SetFixedField "Type", "t"
If CS.SetFixedField("Lang", "Esp") = True Then
MsgBox "Lang changed to Esp"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Inserts value t in fixed-field element Type. (No confirmation message.)
  • Inserts value Esp in fixed-field element Lang. If the action is successful, returns the message Lang changed to Esp.

GetFixedField

Syntax BOOL = CS.GetFixedField (sFieldName, sField)
Use to Get the data for a specific fixed-field element.
Parameters
  • For sFieldName, enter the name of the fixed-field element you want, enclosed in quotation marks (").

    Note: For Dates 2, enter a comma (,) for the fixed-field element name enclosed in quotation marks.
    Example:

    CS.GetFixedField ",", sField
  • Enter the parameter sField to store the value from the fixed field element you specify.
Comments This command works only when the setting for displaying the fixed field (View > OCLC Fixed Field) is set to Top or Bottom.

The command does not work when the fixed field display is set to Variable Field.

See the description of "FixedFieldPosition," the command for determining or specifying how the fixed field displays.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sField as String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.GetFixedField "Type", sField
MsgBox "Type = " & sField
If CS.GetFixedField("Lang", sField) = True Then
MsgBox "Lang = " & sField
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Gets the value of fixed-field element Type and returns the message Type = [value].
  • Gets the value of fixed-field element Lang and returns the message Lang = [value].

FixedFieldPosition

Syntax CS.FixedFieldPosition
Use to Return or specify how the fixed field displays in a record.
Parameters None
Return values Returns an integer indicating the way the fixed field displays:
  • 0 - Fixed field displays as variable fields
  • 1 - Fixed field displays at the top of the record
  • 2 - Fixed field displays at the bottom of the record
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.FixedFieldPosition = 0 Then
CS.FixedFieldPosition = 1
Select Case CS.FixedFieldPosition()
Case 0
MsgBox "Fixed field displays as variable fields"
Case 1
MsgBox "Fixed field displays at the top of the record"
Case 3
MsgBox "Fixed field displays at the bottom of the record"
End Select

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the fixed field displays as variable fields, changes display to fixed-field elements positioned at the top of the record and returns the integer 1.
  • Checks how the client displays the fixed field and returns a message:
    • If the fixed field displays as variable fields (Case 0), returns a message Fixed field displays as variable fields.
    • If the fixed-field elements display at the top of the record (Case 1), returns a message Fixed field displays at the top of the record.
    • If the fixed-field elements display at the bottom of the record (Case 2), returns a message Fixed field displays at the bottom of the record.
In this case, returns the second message above.

SetCursorFixedField

Syntax CS.SetCursorFixedField
Use to Move the cursor to the fixed-field element specified by name and select the value of the fixed field element.
Parameters For the parameter sFieldName, type the name of the fixed-field element you want to select, enclosed in quotation marks (").

Note:
Use the name given in Bibliogaphic Formats and Standards, "Input Standards for Fixed-Field Elements and 006."
Examples:
  • BLvl (Bibliographic Level)
  • Rec stat (Record Status)
  • Type (Type of Record)
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.FixedFieldPosition = 1 Then
CS.SetCursorFixedField "Lang"
If CS.InsertText("ita") = True Then
MsgBox "Value for fixed field Lang added"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the fixed field displays at the top of the record, adds the value ita to the fixed-field element Lang.
  • Checks how the client displays the fixed field and returns a message:
  • If the value is added successfully, returns the message Value for fixed field Lang added.

GetSelectedText

Syntax BOOL = CS.GetSelectedText (sText)
Use to Get selected text from a record (text can span multiple fields).
Parameters
  • Enter the parameter sText to store the selected text.
Return values TRUE if the action is successful, or FALSE if not.
Comments You must have a record open and have text selected to run this macro.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim sText as String
If CS.GetSelectedText(sText) = True Then
MsgBox sText
Else
MsgBox "No text is selected"
End If

End Sub

What this example does
  • Gets selected text from a record and returns a message giving the text, or returns the message No text is selected.

SetSelectedText

Syntax BOOL = CS.SetSelectedText (sText)
Use to Insert specific text in a record at the cursor location (text can span multiple fields).
Parameters
  • For sText , enter the text string you want to insert, enclosed in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.SetSelectedText "New text"

End Sub

What this example does
  • Inserts the text New text in a record at the cursor location.

InsertText

Syntax BOOL = CS.InsertText (sText)
Use to Insert specific text in a record at the cursor location (text can span multiple fields).
Parameters
  • For the parameter sText, enter the text string you want to insert, enclosed in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ItemType = 0 Then
CS.CursorRow = 8
CS.CursorColumn = 6
If CS.UncontrolHeading = True Then
CS.InsertText "Uncontrolled"
Else
CS.IndertText "Could not control"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If the current window is a bibliographic record, places the cursor in the sixth position of the eight row.
  • If the heading at that position is controlled, uncontrols it and inserts the text Uncontrolled. Otherwise, inserts the text Could not uncontrol.

FindText

Syntax BOOL = CS.FindText (sText, bMatchCase)
Use to Find and highlight the next occurrence of specific text.
Parameters
  • For sText, enter the text you want to find, enclosed in quotation marks (").
  • For bMatchCase, enter the boolean value to specify whether you want to match upper- and lowercase exactly or not match case:
    • Match upper- and lowercase exactly
    • False - do not match case
Comments
  • FindText should precede ReplaceText.
  • FindText finds and highlights text only within a single cell of a field, not across cells. You can find tags or indicators or data separately, but not in combination.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CursorRow = 1
CS.CursorColumn = 1
If CS.FindText("Rand", False) Then
If CS.GetSelectedText(sText) Then
MsgBox sText
End If
Else
MsgBox "Rand - not found"
End If
nResult = CS.FindText("rand", True)
If nResult = True Then
If CS.GetSelectedText(sText) Then
MsgBox sText
End If
Else
MsgBox "rand - not found"
End If
CS.FindText "Favorite", False
If CS.GetSelectedText(sText) Then
MsgBox sText
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Moves the cursor to the first column of the first row (beginning of the record).
  • Searches the record for the text Rand, disregarding upper- and lowercase (case-insensitive). If found, gets and returns the first occurrence of the text or returns the message Rand - not found.
  • Searches the record for the text rand, matching case exactly (case-sensitive). If found, gets and returns the first occurrence of the text or returns the message Rand - not found.
  • Searches the record for the text Favorite (case-insensitive). If found, gets and returns the first occurrence of the text.

ReplaceText

Syntax BOOL = CS.ReplaceText (sOldText, sNewText, bMatchCase)
Use to Replace the first or next occurrence of "found" text with specified text.
Parameters
  • For sOldText, enter the text you want to find, enclosed in quotation marks (").
  • For sNewText, enter the text you want to replace the "found" text, enclosed in quotation marks (").
  • For bMatchCase, enter the boolean value to specify whether to match upper- and lowercase exactly or not match case:
    • True - Match upper- and lowercase exactly
    • False - Do not match case
Comments
  • Precede ReplaceText by FindText.
  • After text is replaced, the cursor remains to the right of the replaced text.
  • ReplaceText replaces text only within a single cell of a field, not across cells. You can replace tags or indicators or data separately, but not in combination.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim sText as String
Dim nResult As Integer
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CursorRow = 1
CS.CursorColumn = 1
If CS.FindText("XXX", False) = False Then
MsgBox "XXX - not found"
End If
If CS.replaceText("Rand", "XXX", False) Then
MsgBox "The first instance of Rand was replaced with XXX"
End If
nResult = CS.ReplaceText("xxx", "YYY", True)
If nResult - True Then
MsgBox "Incorrect xxx - replaced"
Else
  • MsgBox "Correct xxx - not replaced"
  • End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Places the cursor in the first column of the first row (beginning of the record).
  • Searches the record for the text XXX, disregarding upper- and lowercase (not case-sensitive), and returns the message XXX - not found if the text is not found.
  • Searches for the text Rand. If it is found, replaces the first instance of Rand with the text XXX, and returns the message The first instance of Rand was changed to XXX.
  • Finds and replaces the first instance of the text xxx with the text YYY, matching case exactly. If the action is successful (lowercase xxx is replaced with YYY), returns the message Incorrect xxx - replaced. If the xxx text found does not match case exactly, returns the message Correct xxx - not replaced.

ReplaceTextAll

Syntax CS.ReplaceTextAll (sOldText, sNewText, bMatchCase)
Use to Replace all occurrences of "found" text with specified text.
Parameters
  • For sOldText, enter the text you want to find, enclosed in quotation marks (").
  • For sNewText, enter the text you want to replace the "found" text, enclosed in quotation marks (").
  • For bMatchCase, enter the boolean value to specify whether to match upper- and lowercase exactly or not match case:
    • True - Match upper- and lowercase exactly
    • False - Doenot match case
Comments ReplaceTextAll replaces text only within a single cell of a field, not across cells. You can replace all specified tags or indicators or data separately, but not in combination.
Return values An integer representing the number of replacements.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim sText As String
Dim nNumReplaced As Integer
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CursorRow = 1
CS.CursorColumn = 1
If CS.FindText("XXX", False) = False Then
MsgBox "XXX - not found
End If
If CS.ReplaceTextAll("Rand", "XXX", False) > 0 Then
MsgBox "All instances of Rand were replaced with XXX"
End If

nNumReplaced = CS.ReplaceTextAll("xxx", "YYY", True)
If nNumReplaced > 0 Then
MsgBox "Incorrect xxx - replaced"
Else
MsgBox "Correct xxx - not replaced"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Places the cursor in the first column of the first row (beginning of the record).
  • Searches the record for the text XXX, disregarding upper- and lowercase (case-insensitive), and returns the message XXX - not found if the text is not found.
  • Searches for the text Rand, disregarding upper- and lowercase (case-insensitive). If it is found, replaces all instances of Rand with the text XXX, and returns the message All instances of Rand were replaced with XXX. Also returns an integer representing the number of replacements.
  • Finds and replaces all instances of the text xxx with the text YYY, matching case exactly. If the action is successful (lowercase xxx is replaced), returns the message Incorrect xxx - replaced. If the xxx text found does not match case exactly, returns the message Correct xxx - not replaced. Also returns an integer representing the number of replacements.

FindReplaceNextText

Syntax BOOL = CS.FindReplaceNextText (sOldText, sNewText, bMatchCase)
Use to Find the next occurrence of specified text and select it.

Another instance of FindReplaceNextText replaces the selected text, moves to the next occurrence, and selects it.

This macro command combines FindText and Replace commands and is used primarily for the macro recorder..
Parameters
  • For sOldText, enter the text you want to find, enclosed in quotation marks (").
  • For sNewText, enter the text you want to replace the "found" text, enclosed in quotation marks (").
  • For bMatchCase, enter the boolean value to specify whether to match upper- and lowercase exactly or not match case:
    • True - Match upper- and lowercase exactly
    • False - Doenot match case
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim sText As String
Dim nResult As Integer
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CursorRow = 9
CS.CursorColumn = 1
If CS.FindReplaceNextText("Rand", "McNally", True) > False Then
MsgBox "Rand not found"
End If
If CS.FindReplaceNextText("Rand," "McNally," True) = False Then
MsgBox "Rand not found"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Moves the cursor to the first column of the ninth row.
  • Searches the record for the text Rand, matching case exactly (case-sensitive). Selects it if found, or returns the message Rand not found.
  • Replaces the selected occurrence of Rand with the text McNally, matching case exactly, and then finds and selects the next occurrence of Rand, if found, or returns the message Rand not found.

Cancel Changes

Syntax BOOL = CS.CancelChanges
Use to Cancel all changes made to a master record (if from WorldCat), or cancels all changes made since the last time you saved a record (if from the save file).Same as using the Edit > Cut Copy Paste > Cancel Changes menu command.
Parameters None
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.AddField 2, "245 Second 245 field"
CS.CancelChanges

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds a second instance of field 245 with no indicators (two spaces between the tag number and field data) and the text Second 245 field.
  • Cancels the change (deletes the newly added field 245).

Reformat

Syntax BOOL = CS.Reformat
Use to Reformat a record (record redisplays with fields in correct order).

Same as using the Edit > Reformat menu command.
Parameters None
Comments You must have a record open to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.Reformat

End Sub

What this example does
  • Reformats the current record in correct tag order.
  • Does not reset the automatic logoff timer.

Validate

Syntax nNumErrors = CS.Validate (sErrorList)
Use to Validate the current record, or records selected in a list, and return a list of validation errors, if any.

Same as using the Edit > Validate menu command.
Parameters
  • Enter the parameter sErrorList to store a list of validation errors, if any.
Comments
  • Errors in the list are separated by a pipe character ( | ).
  • You must be logged on to validate records.
  • When you validate a record, the client automatically saves it, whether the validation is successful or not.
Return values An integer showing the number of validation errors.

Note: A return of -1 indicates that validation failed because of a system error.

Example

Sub Main()

Dim CS As Object
Dim sErrorList As String
Dim sError As String
Dim nNumErrors As Integer
Dim nIndex As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
' Create 2 invalid fields
CS.AddField 1, "100aa100 field"
CS.AddField 1, "500bb500 field"
nNumErrors = CS.Validate(sErrorList)
If nNumErrors > 0 Then
MsgBox "There were " + (nNumErrors) + " validation errors"
' Display all of the validation errors
MsgBox sErrorList
' Display the errors individually
nIndex = Instr(sErrorList, "|")
While nIndex > 0
MsgBox Left(sErrorList, nIndex + 1)
sErrorList = Mid(sErrorList, nIndex + 1)
nIndex = InStr(sErrorList, "|")
Wend
MsgBox sErrorList
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Adds two invalid fields: a new first instance of field 100--with invalid indicators aa and the text 100 field--and a new first instance of field 500--with invalid indicators bb and the text 500 field.
  • Runs validation on the record and returns the number of errors (two in this case).
  • Sends the message There were 2 validation errors.
  • Displays each validation error individually.
  • Returns a list of errors separated by the pipe (|) character (in this case two errors about invalid indicators).

CursorColumn

Syntax CS.CursorColumn
Use to Indicate or change the column where the cursor is located in a record.
Parameters None
Comments The leftmost column is column 1 (that is, the first character of the MARC tag). CursorColumn moves the cursor exactly one data point to the right. A data point can be a character or a space. CursorColumn 1, 2, and 3 are always tag characters; 4 and 5 are always indicators, even if blank; and 6 is the start of actual data in the field.

Note:

CursorColumn works differently than CursorPosition. When writing macros, use CursorColumn to place the cursor by an exact number of data points in a field.

CursorPosition is generally useful only for the macro recorder to record the position of the cursor when you manually click to place it in a record.

See comments in the description of CursorPosition for more details.

Return values An integer representing the column number where the cursor is located.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CursorRow = 1
CS.CursorColumn = 4

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Moves the cursor to the fourth column of the first row of the record (the position of the first indicator in the first field).

CursorRow

Syntax CS.CursorRow
Use to Indicate or change the row where the cursor is located in a record. The top row is row 1. A row corresponds to a field, regardless of how many lines are in a field.
Parameters None
Return values An integer representing the row number where the cursor is located.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CursorRow = 2
CS.CursorColumn = 2

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Moves the cursor to the second column of the second row of the record.

InsertMode

Syntax BOOL = CS.InsertMode
Use to Indicate or change the insert mode (insert mode on or off).
Parameters None
Comments The record window must be the current (top-most window) for this command to work.
Return values TRUE if the insert mode is on, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim bInsertMode As Integer
bInsertMode = CS.InsertMode
If bInsertMode = True Then
MsgBox "Insert mode is on"
Else
MsgBox "Insert mode is off"
End If
CS.InsertMode = False
If CS.InsertMode = True Then
MsgBox "Insert mode is on"
Else
MsgBox "Insert mode is off"
End If

End Sub

What this example does
  • Checks to see if the insert mode is on and returns the message Insert mode is on, or if not, returns the message Insert mode is off.
  • Turns the insert mode off.
  • Checks to see if the insert mode is on and returns a message. In this case, the program will return the message Insert mode is off, since the previous command turned it off.

ApplyOnlineDefaultCD

Syntax BOOL = CS.ApplyOnlineDefaultCD
Use to Apply the default constant data record to the currently displayed bibliographic or authority record.

Same as using the menu command Edit > Constant Data > Online > Apply Default.
Parameters None
Comments You must have a list of constant data records open to use this command.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ApplyOnlineDefaultCD= True Then
MsgBox "Constant data successfully applied"
Else
MsgBox "Constant data not applied"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Applies the default constant data to record number 1. If successful, returns the message Constant data successfully applied. If not, returns the message Constant data not applied.

ApplyOnlineCDBy
Name

Syntax BOOL = CS.ApplyOnlineCDByName (sName, nOption)
Use to Apply a constant data record by name to the currently displayed bibliographic or authority record.

Same as using the menu command Edit > Constant Data > Online > Apply by Name.
Parameters
  • For sName, enter the name of the constant data record you want to apply.
  • For nOption, enter one of the following numbers to indicate which fields to apply:
    • 0 - Fixed field
    • 1 - Variable fields
    • 2 - Both
Comments You must have a list of constant data records open to use this command
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ApplyOnlineCDByName("MyCD", 2) = True Then
MsgBox "Constant data successfully applied"
Else
MsgBox "Constant data not applied"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Applies both the fixed field and variable fields of the constant data record named MyCD to WorldCat record number 1. If successful, returns the message Constant data successfully applied. If not, returns the message Constant data not applied.

ApplyCDFromList

Note: Before version 1.20 of Connexion client, this macro command was called ApplyOnlineCDFromList. Both versions of this command work. You do not need to correct macros you wrote or recorded before you upgraded to version 1.20. This command works for both online and local constant data lists.

Syntax BOOL = CS.ApplyCDFromList ( nListIdx, nOption)
Use to Apply a constant data record from a list to the currently displayed bibliographic or authority record.

Same as using one of the following the menu commands:
  • Edit > Constant Data > Online > Apply from List
  • Edit > Constant Data > Local > Apply from List.
Parameters
  • For nListIdx, enter the list number of the constant data record you want to apply (first record on the list is number 1).
  • For nOption, enter one of the following numbers to indicate which fields to apply:
    • 0 - Fixed field
    • 1 - Variable fields
    • 2 - Both
Comments You must have a list of constant data records open to use this command.

The list index is 1-based.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ApplyCDFromList(3, 1) = True Then
MsgBox "Constant data successfully applied"
Else
MsgBox "Constant data not applied"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Applies variable fields only of the third record in the current list of constant data records to WorldCat record number 1.
  • If successful, returns the message Constant data successfully applied. If not, returns the message Constant data not applied.

ApplyLocalDefaultCD

Syntax BOOL = CS.ApplyLocalDefaultCD
Use to Apply the local default constant data record to the current record or to records selected in a list.

Same as using the menu command Edit > Constant Data > Local > Apply Default.
Parameters None
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.ApplyLocalDefaultCD
Dim nSlotNum as Integer
nSlotNum = CS.SaveToLocalFile (False, False)
MsgBox "Record saved with " & nSlotNum & " slot number"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Applies the default local constant data record number 1.
  • Saves the online record number 1 to the default bibliographic local save file.
  • Displays the following confirmation message with the local save file number (xxx) assigned to the record: Record saved with xxx slot number.

ApplyLocalCDBy
Name

Syntax BOOL = CS.ApplyLocalCDByName (sName, nOption)
Use to Apply a local constant data record by name to the current record or to records selected in a list.

Same as using the menu command Edit > Constant Data > Local > Apply from List.
Parameters
  • For sName, enter the name of the constant data record you want to apply.
  • For nOption, enter one of the following numbers to indicate which fields to apply:
    • 0 - Fixed field
    • 1 - Variable fields
    • 2 - Both
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.ApplyCDByName "MyCD", 2
Dim nSlotNum as Integer
nSlotNum = CS.SaveToLocalFile (False, False)
MsgBox "Record saved with " & nSlotNum & " slot number"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Applies the local constant data record named MyCD to record number 1.
  • Saves record number 1 to the default bibliographic local save file.
  • Displays the following confirmation message with the local save file number (xxx) assigned to the record: Record saved with xxx slot number..

ChangeRecordType

Syntax BOOL = CS.ChangeRecordType (nRecordType)
Use to Change the MARC format of a record to another type.
Parameters For nRecordType, enter one of the following numbers, depending on which format you want to apply to the current record:
0 = Books
1 = Computer Files
2 = Maps
3 = Mixed Materials
4 = Scores
5 = Continuing Resources (formerly called Serials; includes serials and integrating resources material types)
6 = Sound Recordings
7 = Visual Materials
Return values TRUE if the record changes to the specified format, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ChangeRecordType 1 = True Then
MsgBox "Record format changed to computer files"
Else
MsgBox "Constant data not applied"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Changes record type to Computer Files.
  • If the action is successful, returns the message Record format changed to computer files.

back to top

Connexion client macro commands: Create records

DeriveNewRecord

Syntax BOOL = CS.DeriveNewRecord (bFixedField)
Use to Derive a new record from the current record.

Same as using the menu command Edit > Derive > New Master Record.
Parameters

For bFixedField, enter True if you want to transfer the fixed field to the new record, or enter False if not.

Notes:

  • The command uses your settings in Tools > Options > Derive Record to determine the variable fields to transfer to the new record (default: 1XX through 8XX, where X is any number).

  • Although this parameter does not apply to authority records, you must enter a value for the macro to derive an authority record successfully. Enter either True or False. The client ignores the parameter for derived authority records.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim bResult As Integer
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.DeriveNewRecord(True) = True Then
MsgBox "Derive was successful"
Else
MsgBox "Derive failed"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Derives a new record based on record number 1, transfers the fixed field to the new record, and if the action is successful, returns the message Derive was successful. If not, returns the message Derive failed.

DeriveNewHPBRecord

Syntax BOOL = CS.DeriveNewHPBRecord (bFixedField)
Use to Derive a new Hand Press Book record from the current record.

Same as using the menu command Hand Press Book > Derive New Hand Press Book Record.

Note: Hand Press Book is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL) only.

Parameters

For bFixedField, enter True if you want to transfer the fixed field from the existing record to the new record, or enter False if not.

Comments The command uses your settings in Tools > Options > Hand Press Book to determine the variable fields to transfer to the new bibliographic record (default: 006, 007, 02X, 03X, 04X, 05X, 06X, 07X, 08X, 09X, and 1XX through 9XX transfer to the new record; X = any number).
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim bResult As Integer
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.DeriveNewHPBRecord True

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Derives a new Hand Press Book record from the WorldCat record

OpenWorkform

Syntax BOOL = CS.OpenWorkform (sFormat)
Use to Open a bibliographic workform to create a record of a specified MARC format.

Same as using the menu commands:
  • Cataloging > Create > Single Record > Books
  • Cataloging > Create > Single Record > Computer Files
  • Cataloging > Create > Single Record > Continuing Resources
  • Cataloging > Create > Single Record > Maps
  • Cataloging > Create > Single Record > Mixed Materials
  • Cataloging > Create > Single Record > Scores
  • Cataloging > Create > Single Record > Sound Recordings
  • Cataloging > Create > Single Record > Visual Materials
  • Authorities > Create > Single Record > Blank Record
  • Authorities > Create > Single Record > Conference Name
  • Authorities > Create > Single Record > Corporate Name
  • Authorities > Create > Single Record > Geographics
  • Authorities > Create > Single Record > Personal Name
  • Authorities > Create > Single Record > Series
  • Authorities > Create > Single Record > Uniform Title
Parameters
  • For sFormat, enter the type of format you want the workform to have, enclosed in quotation marks. Enter one of the following values for biblioraphic workforms:
    Enter For this format type
    bks Books
    com Computer Files
    cnr* ContinuingResources
    map Maps
    mix Mixed Materials
    sco Scores
    rec Sound Recordings
    vis Visual Materials
    *Formerly ser (Serials); you can use either cnr or ser.
  • Enter one of the following values for authority workforms:
    Enter For this format type
    abl Blank Workform
    acn Conference Name
    acr Corporate Name
    age Geographics
    apn Personal Name
    asr Series
    aut Uniform Title
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim bResult As Integer
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.OpenWorkform "bks"
bResult = CSOpenWorkform("com")
If bResult = True Then
MsgBox "Workform successfully opened"
Else
MsgBox "Workform not successfully opened"
End If

End Sub

What this example does
  • Opens a bibliographic workform with the Books format. (No confirmation message.)
  • Opens a bibliographic workform with the Computer Files format. If the action is successful, returns the message Workform successfully opened. If not, returns the message Workform not successfully opened.

OpenWorkformFor
Database

Syntax BOOL = CS.OpenWorkformForDatabase (sFormat) (sDatabase)
Use to Open a workform to create a record of a specified MARC type for a specified database, including WorldCat, LC authority file, and Hand Press Book.

Note: Hand Press Book is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL) only.

Parameters
  • For sFormat, enter the type of format you want the workform to have, enclosed in quotation marks.

    Enter one of the following values for a WorldCat workform or a Hand Press Book workform:
    • bks for Books
    • com for Computer Files
    • cnr* for Continuing Resources
    • map for Maps
    • mix for Mixed Materials
    • sco for Scores
    • rec for Sound Recordings
    • vis for Visual Materials

      *Formerly ser (Serials). You can use either cnr or ser.

    Enter one of the following values for authority workforms:

    • abl for a blank workform
    • acn for Conference Name
    • acr for Corporate Name
    • age for Geographics
    • apn for Personal Name
    • asr for Series
    • aut for Uniform Title
  • For sDatabase, enter WC for WorldCat, AF for the LC authority file, or HP for the Hand Press Book database.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.OpenWorkformForDatabase "bks", "HP"

End Sub

What this example does
  • Opens a Hand Press Book workform in the MARC format for books.

back to top

Connexion client macro commands: Take actions on records

UpdateHoldings

Syntax BOOL = CS.UpdateHoldings
Use to For an existing record or a workform, or records or workforms selected in a list, update holdings (add your OCLC institution symbol). For workform(s), add to WorldCat.
Or
When offline, marks local record(s) for batch update.
Same as using the Action > Holdings > UpdateHoldings menu command.
Parameters None
Comments
  • If you are logged on, this macro does the action immediately online.
  • If you are working with local file records while offline, this macro marks the current record, or records selected in a list, ready (R) to batch-process the action.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.UpdateHoldings
If bResult = True Then
MsgBox "Holdings were successfully updated"
Else
MsgBox "Holdings were not successfully updated"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • For record number 1, updates holdings (adds your OCLC institution symbol).
  • If the action is successful, returns the message Holdings were successfully updated. If not, returns the message Holdings were not successfully updated.

ProduceAndUpdate Holdings

Syntax BOOL = CS.ProduceAndUpdateHoldings
Use to For an existing record or a workform, or for records or workforms selected in a list, update holdings (adds your OCLC institution symbol to the records) and produce offline catalog cards as specified in your OCLC cataloging profile. If for workform(s), add to WorldCat.
Or
When offline, marks local record(s) for batch update and produce.

Same as using the Action > Holdings > Produce and Update Holdings menu command.
Parameters None
Comments
  • If you are logged on, this macro does the action immediately online.
  • If you are working with local file records while offline, this macro marks the current record, or records selected in a list, ready (R) to batch-process the action.
Return values TRUE if the actions are successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.ProduceAndUpdateHoldings
If bResult = True Then
MsgBox "Holdings were successfully updated"
Else
MsgBox "Holdings were not successfully updated"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Updates holdings (adds your OCLC institution symbol) in record number 1.
  • If the action is successful, returns the message Holdings were successfully updated. If not, returns the message Holdings were not successfully updated.

AltProduceAndUpdate Holdings

Syntax BOOL = CS.AltProduceAndUpdateHoldings (bAdProduce, bAllProduce, shExtraCards)
Use to For an existing record or workform, or for records or workforms selected in a list, update holdings (add your OCLC institution symbol) and specify AdProduce, AllProduce, and/or the number of extra cards to produce. If workform(s), add to WorldCat.
Or
When offline, marks local record(s) for batch update and alternate produce.

Same as using the Action > Holdings > Alternate Produce and Update Holdings menu command.
Parameters
  • For bAdProduce, enter true to produce standard cards as defined in your OCLC cataloging profile, or enter false to cancel this option.
  • For bAllProduce, enter true to produce standard cards for all holding libraries listed in the 049 field of the record, or enter false to cancel this option.
  • For shExtraCards, enter the number of extra copies you want of the main entry card for the record.
Comments
  • If you are logged on, this macro does the action immediately online.
  • If you are working with local file records while offline, this macro marks the current record, or records selected in a list, ready (R) to batch-process the action.
Return values TRUE if the actions are successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Dim bAdProduce As Integer
Dim bAllProduce As Integer
Dim shExtraCards As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.AltProduceAndUpdateHoldings True, True, 6
CS.Search "WC", "#2"
bAdProduce = True
bAllProduce = False
shExtraCards = 4
bResult = CS.AltProduceAndUpdateHoldings(bAdProduce, bAllProduce, shExtraCards
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • For record number 1:
    • Updates holdings (adds your institution symbol)
    • Produces standard cards as defined in your OCLC cataloging profile
    • Produces standard cards for all holding libraries listed in the 049 field of the record
    • Produces six extra copies of the main entry card
  • Searches WorldCat for record number 2.
  • For record number 2:
    • Updates holdings (adds your institution symbol)
    • Produces standard cards as defined in your OCLC cataloging profile
    • Produces four extra copies of the main entry card
    • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

DeleteHoldings

Syntax BOOL = CS.DeleteHoldings
Use to Delete your holdings (OCLC symbol) from the current record or from records selected in a list.

Same as using the Action > Holdings > Delete Holdings menu command.
Parameters None
Comments
  • If you are logged on, this macro does the action immediately online.
  • If you are working with local file records while offline, this macro marks the current record, or records selected in a list, ready (R) to batch-process the action.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.DeleteHoldings
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Deletes holdings (removes your OCLC institution symbol) from record number 1.
  • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

Lock

Syntax BOOL = CS.Lock
Use to Lock a record.

Same as using the Action > Lock Master Record menu command.
Parameters None
Comments You must be logged on to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.Lock
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Locks the master copy of record number 1.
  • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

ReleaseRecord
Lock

Syntax BOOL = CS.ReleaseRecordLock
Use to Release the lock on a master record.

Same as using the Action > Release Record Lock menu command.
Parameters None
Comments You must be logged on and have a locked record displayed to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.Lock = True Then
bResult = CS.ReleaseRecordLock
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Locks the master copy of record number 1.
  • Releases the lock on the record.
  • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

ReplaceRecord

Syntax BOOL = CS.ReplaceRecord
Use to Replace an online bibliographic or authority (NACO-authorized libraries) record, or records selected in a list, with the current record.
Or
When offline, marks local record(s) for batch replace.

Same as using the Action > Replace Record menu command.
Parameters None
Comments
  • If you are logged on, this macro does the action immediately online.
  • If you are working with local file records while offline, this macro marks the current record, or records selected in a list, ready (R) to batch-process the action.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.Lock = True Then
CS.AddFieldLine 1, "500 Field added at line position 1"
bResult = CS.ReplaceRecord
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Locks the master copy of record number 1.
  • Adds a new field 500 as the first line of the record, with no indicators (two blank spaces), and the text Field added at line position 1.
  • Replaces the master copy of the record (master record now contains the new field).
  • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

ReplaceAndUpdate Holdings

Syntax BOOL = CS.ReplaceAndUpdateHoldings
Use to Replace a master bibliographic record, or records selected in a list, with the current record and update holdings (adds your OCLC institution symbol to the records).
Or
When offline, marks local record(s) for batch update and replace.

Same as using the Action > Replace and Update Holdings menu command.
Parameters None
Comments
  • You must be logged on.
  • You cannot use this macro command to mark local file records for batch processing. This command involves two actions. Batch processing can complete only one action per record.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.Lock = True Then
CS.AddFieldLine 1, "500 Field added at line position 1"
bResult = CS.ReplaceAndUpdateHoldings
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Locks the master copy of record number 1.
  • Adds a new field 500 as the first line of the record, with no indicators (two blank spaces), and the text Field added at line position 1.
  • Replaces the master copy of the record (master record now contains the new field), and updates holdings (adds your OCLC institution symbol to the record).
  • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

SaveOnline

Syntax nSaveFileNumber = CS.SaveOnline
Use to Save a record, or records selected in a list, in the online save file.

Same as using the Action > Save Record to Online File menu command.
Parameters None
Comments You must be logged on to run this macro.
Return values Save file number(s) the system assigns to the saved record(s).
Example

Sub Main()

Dim CS As Object
Dim nSaveFileNumber As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nSaveFileNumber = CS.SaveOnline
MsgBox "The record was added as save file number" + (nSaveFileNumber)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Saves record number 1 to the online bibliographic save file.
  • Returns the message The record was added as save file number [system-supplied number].

SaveToLocalFile

Syntax nSaveFileNumber = CS.SaveToLocalFile (bAuthUnlock, bDelete)
Use to Save a record, or records selected in a list, to the default local save file

Same as using the Action > Save Record to Local File menu command.
Parameters
  • For bAuthUnlock, enter True to unlock an Authority File record before saving to the local file, or enter False to save the authority record with its lock.
    Note: You cannot save locked bibliographic records to the local file.
  • For bDelete, enter True to delete a record you save to the local file from the online file, or enter False to keep the record in the online file when it is saved to the local file.
    Note: Entering values for these parameters is required.
Return values Save file number(s) the system assigns to the saved record(s).
Or
The value -1 when the corresponding command (Action > Save Record to Local File) is unavailable. The command is unavailable when a record is re-saved to the local file with no changes to the record.

Tip: If the macro returns -1, you can get the save file number by using:

bool = QueryRecordStatus ("SAVE", sNumber)
Example

Sub Main()

Dim CS As Object
Dim nSaveFileNumber As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Search "BS", "" > 0 Then
nNumRecords = CS.SearchList("Mitchell", "Contributor/Creator", False)
End If
nSaveFileNumber = CS.SaveToLocalFile (False, True)
MsgBox "The record(s) were added as save file number(s)" + (nSaveFileNumber)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the online bibliographic save file for all records.
  • Searches the results list for Mitchell in the Contributor/Creator column, returning terms with different case or that contain the term.
  • Selects the records that match (for the sake of this example, assume that four records are selected).
  • Saves the selected records to the local bibliographic save file and deletes them from the online save file.
  • Returns the message The record(s) were added as local save file numbers 14 15 16 17.

DeleteRecord

Syntax BOOL = CS.DeleteRecord
Use to Delete a record, or records selected in a list, from the online or local save file.

Same as using the Action > Delete Record menu command.
Parameters None
Comments You must be logged on and have a save file record open to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "BS", "sf:1"
bResult = CS.DeleteRecord
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches online bibliographic save file for the record with save file number 1.
  • Deletes save file record number 1.
  • If the action is successful, returns the message The command completed successfully. If not, returns the message The command did not complete successfully.

Export

Syntax BOOL = CS.Export
Use to Export the current record, or records selected in a list, using your default export destination from Tools > Options > Export. You can export bibliographic or authority records.
Or
Marks record(s) for batch export if option is set in Tools > Options > Batch.

Same as using the Action > Export menu command.
Parameters None
Comments Whether you are logged on or offline, records export immediately, unless you set the Perform local actions in batch option for Record Export in Tools > Options > Batch to mark records for batch export.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.Export
If bResult = True Then
MsgBox "Export completed successfully"
Else
MsgBox "Export did not complete successfully"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Exports the record to your default export destination (Tools > Options > Export).
  • If the action is successful, returns the message Export completed successfully. If not, returns the message Export did not complete successfully.

ExportAppend

Syntax BOOL = CS.ExportAppend (sName)
Use to Export record(s) to a destination file specified by its name as pre-defined in Tools > Options > Export.
  • Creates the file if it doesn't already exist and adds the records, or appends the records to the end of an existing file.
  • Eliminates export prompts.
  • Exports the displayed record or records selected in a list.

    Required: The export destination file must be pre-defined in Tools > Options > Export or the macro will fail. Defining the file destination does not create the file. The file is created the first time you export records to it.
Parameters For sName, enter the name of the export destination file that you assigned when you created the destination. Enclose the name in quotation marks (").
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.ExportAppend "Data"

End Sub

What this example does
  • Exports the currently displayed record, or records selected in a list, to the file destination named Data. Creates the file if it doesn't exist.
  • If the file exists and already contains records, appends the newly exported record(s) to the end of the file.
  • No prompts are displayed.

AddToAuthorityFile

Syntax BOOL = CS.AddToAuthorityFile
Use to Add an authority record, or records selected in an online or local authority list, to the Authority File
Or
When offline, marks local record(s) for batch add.

Same as using the Action > Add to Authority File menu command.
Parameters None
Comments
  • You must be logged on to run this macro immediately. When offline, marks local save file record(s) ready for batch processing (R).
  • You must be an authorized NACO participant to use this command.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "AS", "sf:12"
bResult = CS.AddToAuthorityFile
If bResult = True Then
MsgBox "Record successfully added to the Authority File"
Else
MsgBox "Record not added to the Authority File"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the online authority save file for save file record number 12, which is an authority workform.
  • Adds the record to the Authority File.
  • If successful, returns the message Record successfully added to the Authority File. If not, returns the message Record not added to the Authority File.

AddToOnlineDatabase

Syntax BOOL = CS.AddToOnlineDatabase (sDatabase)
Use to Add an authority record, or records selected in an online or local authority list, to the LC authority file

Or

Add a Hand Press Book workform, or workforms selected in a local Hand Press Book save file list, to the Hand Press Book database.

Note: Hand Press Book is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL) only.

Or

When offline, mark local record(s) in either the authorities local file or the Hand Press Book local file for adding records via batch.

Same as using the Action > Add to Authority File or the Hand Press Book > Add to Hand Press Book Database menu commands.
Parameters For sDatabase, enter one of the following database identifiers:
  • AF (LC names and subjects authority file) (an alternative to using AddToAuthorityFile)
  • HP (Hand Press Book database)
Comments
  • You must be logged on to run this macro immediately. When offline, marks local save file record(s) ready for batch processing (R).
  • You must be an authorized NACO participant or an authorized CERL member to use this command for the LC authority file or for the HPB database, respectively.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "HL", "sf:2 AND ro:'SFNumber'"
CS.DeriveNewHPBRecord True
CS.AddToOnlineDatabase "HP"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the local Hand Press Book save file for save file record number 2 in the Save# column.
  • Derives a new record from the retrieved record.
  • Adds the derived record to the Hand Press Book database.

SubmitForReview

Syntax BOOL = CS.SubmitForReview (sSymbol)
Use to Submit a bibliographic or authority record, or records selected in a list, for peer review to libraries that you specify by one or more OCLC institution symbols.
Or
When offline, marks local record(s) for batch submit.

Same as using the Action > Submit for Review menu command.
Parameters For sSymbol, enter one or more OCLC institution symbols. If more than one, separate by semicolons (;). Enter in upper- or lowercase. Spaces are optional.
Examples:
ABC;DEF;XYZ
abc; def; xyz
Comments
  • You must be logged on to run this macro immediately. When offline, marks local save file record(s) ready for batch processing (R).
  • Maximum length for the string of institution codes is 255 characters.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "BS", "sf:1"
bResult = CS.SubmitForReview(ocl;trn)
If bResult = True Then
MsgBox "Record successfully sent for review"
Else
MsgBox "Record not sent for review"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the online bibliographic save file for save file record number 1.
  • Submits the record to two libraries with OCLC symbols ocl and trn.
  • If successful, returns the message Record successfully sent for review. If not, returns the message Record not sent for review.

    Note: To locate records that others have sent to your library for review, use CS.Search("BR", ""). See Search macro descriptions for more information.


RecallSubmitted

Syntax BOOL = CS.RecallSubmitted (sSymbol)
Use to Recall a record from review.

Same as using the Action > Recall Submitted Record menu command.
Parameters None
Comments You must be logged on to run this macro
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Search("BS", "rs:submitted") > 0 Then
CS.GetFirstItem
End If
bResult = CS.RecallSubmitted
If bResult = True Then
MsgBox "Submitted record successfully recalled from review"
Else
MsgBox "Submitted record not recalled from review"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the online bibliographic save file for records your library submitted for review.

    Note: You can also search for all sum

  • If the search retrieves multiple records, selects and opens the first record in the list.
  • Removes the review status "Submitted" from the record and withdraws it from review..
  • If successful, returns the message Submitted record successfully recalled from review. If not, returns the message Submitted record not recalled from review.

    Note: You can also search for all submitted records


back to top

Connexion client macro commands: Work with records, lists, and files

SearchList

Syntax nNumRecords = CS.SearchList (sSearchTerm, sColumnName, bExactMatch)
Use to Search for a specified term in the current list data. You can specify the column name to search. You can also specify to match the search text exactly.
Parameters
  • For sSearchTerm, enter the search term string
  • For sColumnName, enter the column name string
  • For bExactMatch, enter true to match the search term exactly, or enter false to also return terms with different case or that contain the term

    Examples:
    If you specify exact match, the search term Jones does not retrieve jones.
    If you specify no exact match, the search term free can also retrieve Free or freedom.

Comments The search is not case-sensitive.
Return values An integer, the number of records found.
Example

Sub Main()

Dim CS As Object
Dim nNumRecords As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Search("WC", "gon,wi,th,w/bks/1983-2003") > 0 Then
nNumRecords = CS.SearchList("Margaret", "Description", False)
MsgBox (nNumRecords) + " records found"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for the title Gone with the Wind in Books format only and only items published between 1983 and 2003.
  • If the search retrieves multiple records (a brief list in this case), searches the description column of the list for any instance (not case-sensitive) of the term Margaret.
  • Returns the number of records containing Margaret or margaret in the message X records found (where X = the number of records).
  • Selects the records that contain the search term.

GetListItem

Syntax BOOL = CS.GetListItem (nListIdx)
Use to Open a record from the currently displayed list by specifying its order in the list by number.
Parameters For nListIdx, enter the number that represents the order of the record that you want to open in the list.
Comments The first record on the list is 1 (1-based index).
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Search("WC", "gon,wi,th,w") > 0 Then
CS.GetListItem 2
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for the title Gone with the Wind.
  • If the search retrieves multiple records, opens the second item on the list (in this case, opens the second brief list on a group list).

GetFirstSelectedItem

Syntax BOOL = CS.GetFirstSelectedItem
Use to Opens the first selected entry on the current list.
Parameters None
Comments Opens any type of entry on the list, whether it is a record or another list.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.Logon "", "", ""
CS.Search "WC", "gon,wi,th,w/sco"
CS.SearchList "Max", "Description", False
boolean = CS.GetFirstSelectedItem
While boolean = True
CS.Validate sErrors
CS.CloseRecord False
boolean = CS.GetNextSelectedItem
Wend

End Sub

What this example does
  • Logs on to Connexion using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for items with the title Gone with the Wind in scores format.
  • Searches the Description column of the results list and selects items in the list that contain the term Max. Selects seven items.
  • Gets the first selected record in the list, validates the record, and closes it without saving.
  • Gets the next selected record in the list.

GetNextSelectedItem

Syntax BOOL = CS.GetNextSelectedItem
Use to Select and open the first entry on the current list.
Parameters None
Comments Opens any type of entry on the list, whether it is a record or another list.
Return values TRUE if the action is successful, or FALSE if not.
Example

See example above for GetFirstSelectedItem.


GetFirstItem

Syntax BOOL = CS.GetFirstItem
Use to Select and open the first entry on the current list.
Parameters None
Comments Opens any type of entry on the list, whether it is a record or another list.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
' Get the first record from the first list
If CS.Search("WC", "gon,wi,th,w") > 0 Then
If CS.GetFirstItem() = True Then
CS.GetFirstItem()
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for the title Gone with the Wind.
  • If the search retrieves multiple records (a group list in this case), selects and opens the first item on the list (which is a brief list).
  • Selects and opens the first record in the brief list.

GetNextItem

Syntax BOOL = CS.GetNextItem
Use to Select and open the next entry on the current list.
Parameters None
Comments Opens any type of entry on the list, whether it is a record or another list.

If you are on a record, opens the next record in the list.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
' Get the first record from the first list
If CS.Search("WC", "gon,wi,th,w") > 0 Then
' Get brief list
If CS.GetFirstItem() = True Then
' Get the first record from the list
If CS.GetFirstItem() = True Then
' Move to the second record
CS.GetNextItem() = True Then
End If
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for the title Gone with the Wind.
  • If the search retrieves multiple records (a group list in this case), selects and opens the first item on the list (which is a brief list).
  • Selects and opens the first record in the brief list.
  • Selects and opens the next record in the list.

GetPrevItem

Syntax BOOL = CS.GetPrevItem
Use to Select and open the previous item on the current list.
Parameters None
Comments Opens any type of entry on the list, whether it is a record or another list.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Search("WC", "gon,wi,th,w") > 0 Then
If CS.GetFirstItem() = True Then
If CS.GetFirstItem() = True Then
If CS.GetNextItem() = True Then
  • CS.GetPrevItem
End If
End If
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for the title Gone with the Wind.
  • If the search retrieves multiple records (a group list in this case), selects and opens the first item on the list (which is a brief list).
  • Selects and opens the first record in the brief list.
  • Selects and opens the next record in the list.
  • Selects and opens the previous record in the list (the first record opened originally).

GetNext100Records

Syntax BOOL = CS.GetNext100Records
Use to Open the next list of 100 records resulting from a search of:
  • Online bibliographic save file
  • Authority File
  • Online constant data file

    Note: Search results lists from these online files display 100 records at a time.

Same as using the View > Navigate Records and Lists > Next 100 Records menu command.

Parameters None
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "AF", "pn:William"
CS.GetNext100Records

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the Authority File for the heading William. (The search retrieves more than 100 records.)
  • Gets the next (second set of) 100 records.

GetPrevious100 Records

Syntax BOOL = CS.GetPrevious100Records
Use to Open the previous list of 100 records resulting from a search of:
  • Online bibliographic save file
  • Authority File
  • Online constant data file

    Note: Search results lists from these online files display 100 records at a time.

Same as using the View > Navigate Records and Lists > Previous 100 Records menu command.

Parameters None
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "AF", "pn:William"
CS.GetNext100Records
CS.GetPrevious100Records

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the Authority File for the heading William. (The search retrieves more than 100 records.)
  • Gets the next (second set of) 100 records.
  • Gets the previous 100 records (goes back to the first set).

CloseList

Syntax BOOL = CS.CloseList
Use to Close the current list.
Parameters None
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
If CS.Search("WC", "gon,wi,th,w/bks/1983-2003") > 0 Then
If CS.GetFirstItem() = True Then
CS.CloseList
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for the title Gone with the Wind in Books format only and only items published between 1983 and 2003.
  • If the search retrieves multiple records (a brief list in this case), selects and opens the first item on the list (a record).
  • Closes the list..

CloseRecord

Syntax CS.CloseRecord (bSaveRecord)
Use to Close a record.
Parameters For bSaveRecord, enter true to save the record or false to close without saving.
Comments You must enter the bSaveRecord parameter (no default value is provided). If you do not, you get an error message.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.CloseRecord True

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Closes record number 1 and saves it to the online bibliographic save file.

GetWindowTitle

Syntax BOOL = CS.GetWindowTitle (nWindowId, sTitle)
Use to Return the specified window title.
Parameters
  • nWindowId is a zero-based window identification.
  • Enter the parameter sTitle to store the window title.
Comments If you use -1 as the window identification, the macro returns the title of the current window.
Return values TRUE if the title is retrieved, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sTitle As String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.OpenWorkform "bks"
CS.Search "WC", "#1"
CS.Search "WC", "gon,wi,th,w"
CS.GetWindowTitle 0, sTitle
MsgBox sTitle
CS.SetTopWindow 0
CS.GetWindowTitle -1, sTitle
MsgBox sTitle

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Opens a workform with the Books format.
  • Searches WorldCat for record number 1 (opens a record).
  • Searches WorldCat for Gone with the Wind (opens a list).
  • Returns the title of the currently active window: in this case a list, WorldCat Group List, returned from the derived title search for Gone with the Wind.
  • Changes the top window to the first window opened.
  • Returns the title of the new top window, the first window opened: in this case, Bibliographic Workform: Books.

ItemType

Syntax nType = CS.ItemType
Use to Return the window type of the current (top-most) window.
Parameters None
Return values Returns an integer that indicates the type of the current window. The numbers indicate the following window type:
0 Online bibliographic record (WorldCat)
1 Online bibliographic save file record
2 Online bibliographic constant data record
3 Online authority record (Authority File)
4 Online authority save file record
5 WorldCat group list
6 WorldCat brief list
7 Online bibliographic save file list
8 Online bibliographic constant data list
9 WorldCat browse list
10 Authority File brief list
11 Authority browse list
12 News list
13 Online authority save file list
14 Online authority constant data record
15 Online authority constant data list
16 Authority expanded browse list
17 Local bibliographic save file record
18 Local authoritysave file record
19 Local bibliographic constant data record
20 Local authority constant data record
21 Local bibliographic save file list
22 Local authority save file list
23 Local bibliographic constant data list
24 Local authority constant data list
25 WorldCat truncated list
26 Online Hand Press Book record
27 Online Hand Press Book group list
28 Online Hand Press Book brief list
29 Online Hand Press Book truncated list
30 Online Hand Press Book browse list
31 Local Hand Press Book save file record
32 Local Hand Press Book save file list
33 Online Hand Press Book save file record
34 Online Hand Press Book save file list
35 Online bibliographic institution record
36 Online bibliographic institution list
-1 Unidentified item
Example

Sub Main()

Dim CS as Object
Set CS = CreateObject("Connex.Client")
If CS.Logon "", "" "" = True Then
CS.Search("AS", "pn:jones")
If CS.ItemType = 13 Then
MsgBox "Online authority save file list"
If CS.GetFirstItem() = True Then
If CS.ItemType = 4 Then
MsgBox "Online authority save file record"
End If
End If
End If
End If

End Sub

What this example does
  • Logs on to Connexion, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches the online authority save file for the personal name Jones.
  • If the search successfully retrieves multiple records, returns the message Online authority save file list.
  • Gets the first item on the list and, if the first item is an authoirty save file record, returns the message Online authority save file record.

SetTopWindow

Syntax BOOL = CS.SetTopWindow (nWindowId)
Use to Make the window specified by its numeric identification the current (topmost) window.
Parameters
  • For nWindowId, enter the window number you want to make the current window, with 0 (zero) representing the first window.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sTitle As String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.OpenWorkform "bks"
CS.Search "WC", "#1"
CS.Search "WC", "gon,wi,th,w"
CS.GetWindowTitle -1, sTitle
MsgBox sTitle
CS.SetTopWindow 0
CS.GetWindowTitle -1, sTitle
MsgBox sTitle

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Opens a workform with the Books format.
  • Searches WorldCat for record number 1 (opens a record).
  • Searches WorldCat for Gone with the Wind (opens a group list).
  • Returns the title of the currently active window: in this case WorldCat Group List, returned from the derived title search for Gone with the Wind.
  • Changes the top window to the first window opened (in this case a workform with the Books format).
  • Returns the title of the new top window, Bibliographic Workform: Books.

WindowCount

Syntax nCount = CS.WindowCount
Use to Give the number of open windows.
Parameters None
Comments Counts only record and list windows only.
Return values An integer representing the number of open windows.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.OpenWorkform "bks"
CS.Search "WC", "#1"
CS.Search "WC", "gon,wi,th,w"
MsgBox CStr(CS.WindowCount) + " open windows"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Opens a workform with the Books format.
  • Searches WorldCat for record number 1 (opens a record).
  • Searches WorldCat for Gone with the Wind (opens a group list).
  • Returns the total number of open record and list windows (in this case 3) in the message 3 open windows.

CreateLocalFile

Syntax nResult = CS.CreateLocalFile (sPath)
Use to
  • Create a local file in the specified path and set the file as the default.
  • If the file already exists, set the specified existing file as the default.
Parameters For sPath, enter the full path and file name.
Comments The macro command does not validate the path name for a file, nor does it create directories in the path.

The specified file extension determines the type of file created:

  • *.bib.db creates a local bibliographic save file
  • *.auth.db creates a local authority save file
  • *.bibcd.db creates a local bibliographic constant data file
  • *.authcd.db creates a local authority constant data file
Return values Returns an integer with one of the following values:
0 = New file successfully created and set as the default
1 = Existing file successfully set as the default
2 = Access to the specified file denied
3 = Specified file not found
4 = Undefined error
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
Dim nResult as Integer
nResult = CS.CreateLocalFile "D:\Program Files\MyLocalFiles\
Jan10.bib.db"
If nResult = 0 Then
MsgBox "File was created and set as the default successfully"
Else If nResult = 1 ThenMsgBox "Local file already exists. Set as default"
Else
MsgBox "Error creating local file"
End If

End Sub

What this example does
  • Attempts to create a new local bibliographic save file named Jan10.bib.db in the file path D:\Program Files\MyLocalFiles.
  • If the new file is successfully created and set as the default, returns the message File was created and set as the default successfully.
    Or
    If the file already exists, sets the file as default and returns the message Local file already exists. Set as default.
    Or
    If the file is not created or does not exist or another type of error occurs, returns the message Error creating local file.

CopyRecord

Syntax CS.CopyRecord (sToFile)
Use to Copy a local file record or records selected in a local file list to another, existing local file that you specify.

Same as using the Action > Copy Record menu command.
Parameters For sToFile, enter the full path and file name of an existing local file to which you want to copy the record(s).
Comments The macro command must specify an existing path and file name, or the macro will fail. It does not create folders in the path or the file.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.CopyRecord "d:\Data\NewBib.bib.db"

End Sub

What this example does
  • Copies the current local record or records selected in a local file list to the NewBib.bib.db file in the \Data folder of the D drive.
  • Also retains the record(s) in the original file.

MoveRecord

Syntax CS.MoveRecord (sToFile)
Use to Move a local file record or records selected in a local file list to another, existing local file that you specify.

Same as using the Action > Move Record menu command.
Parameters For sToFile, enter the full path and file name of an existing local file to which you want to move the record(s).
Comments The macro command must specify an existing path and file name, or the macro will fail. It does not create folders in the path or the file.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.MoveRecord "d:\Data\NewBib.bib.db"

End Sub

What this example does
  • Moves the current local record or records selected in a local file list to the NewBib.bib.db file in the \Data folder of the D drive.
  • Removes the the record(s) from the original file.

Macro commands for navigating in records

Syntax ... use to
Syntax: Use to move the cursor:
CS.EndCell To the end of the current cell
CS.HomeCell To the beginning of the current cell
CS.EndRecord To the end of the variable fields
CS.HomeRecord To the beginning of the variable fields
CS.KeyUp One line up
CS.KeyDown One line down
CS.KeyRight One position to the right
CS.KeyLeft One position to the left
CS.NextSubfield To the next subfield
CS.PrevSubfield To the previous subfield
CS.DeleteKey One position to the right and delete
the character or space to the right
of the cursor's original position
CS.Backspace One position to the left and delete
thecharacter or space to the left of
the cursor's original position
Parameters None
Comments Most of these commands correspond to keys on the keyboard. They are used for themacro recorder.
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ItemType = 0 Then
CS.HomeRecord
CS.EndCell
CS.KeyRight
CS.KeyRight
CS.KeyRight
CS.EndCell

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Places the cursor at the end of the first row of record number 1.

back to top

Connexion client macro commands: Print and work with macros, statuses, holdings, labels, user profiles

SetMyStatus

Syntax BOOL = CS.SetMyStatus (sStatusName)
Use to Add a customized My Status to the current record.

Same as using the menu command Action > Set Status.
Parameters
  • For sStatusName, enter the My Status text you want to add to the record. Enclose in quotation marks. Use free text limited to 40 characters (enter in lowercase, uppercase or mixed case).
Comments You must be logged on to run this macro.

If you enter more than 40 characters, the data is truncated at 40 character.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.OpenWorkform "bks"
CS.SetMyStatus "My workform"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Opens a workform with a Books format.
  • Assigns the My Status My workform to the workform.

SetWorkflowStatus

Syntax BOOL = CS.SetWorkflowStatus (sStatusName)
Use to Change workflow status for the current record (default: In Progress).

Same as using the menu command Action > Set Status.
Parameters
  • For sStatusName, enter one of the following, enclosed in quotation marks (enter in lowercase, uppercase or mixed cast):
    • Completed (for bibliographic records) Complete (for authority records)
    • In Process
    • In Review
    • New
Comments You must be logged on to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.OpenWorkform "bks"
CS.SetWorkflowStatus "New"

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Opens a workform with a Books format.
  • Assigns the workflow status New to the workform.

IsHeldBy

Syntax BOOL = CS.IsHeldBy (sSymbol, sState)
Use to Determine whether a specified holding symbol (OCLC institution symbol) is included in the current record.
Parameters
  • For sSymbol, enter the holding symbol.
  • Enter the parameter sState to store the state/country of the institution represented by the holding symbol.
Comments You must be logged on to run this macro.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.IsHeldBy("OCL", sState) = True Then
MsgBox "Record #1 is held by OCL in " + sState
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Determines whether the institution symbol OCL (symbol for OCLC) is included in the current record and returns a message that includes the state/country where OCLC is located: Record #1 is held by OCL in Ohio [state where OCLC is located].

Holdings

Syntax CS.Holdings
Use to Return a list of all holdings for the current record.

Same as using the menu command View > Holdings > All.
Parameters None
Return values A list of all holding symbols for the current record, separated by commas.
Example

Sub Main()

Dim CS As Object
Dim sHoldings As String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
sHoldings = CS.Holdings
MsgBox Left(sHoldings, 100)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Returns a list of holding symbols, separated by commas, for record number 1. If the list is more than 100 characters, returns only the first 100 characters.

Print

Syntax BOOL = CS.Print
Use to Print the current (topmost) record.

Same as using the menu command File > Print.
Parameters None
Comments Uses your default printer in Windows, unless you previously set the option in Tools > Options > Printing to print records to a text file..
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.Print() = True Then
MsgBox "Record printed OK"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Prints record number 1. If the record prints successfully, returns a message Record printed OK.

PrintList

Syntax BOOL = CS.PrintList
Use to Print the current (topmost) list.

Same as using the menu command File > Print List.
Parameters None
Comments Uses your default printer in Windows.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "gon,wi,th,w"
If CS.PrintList() = True Then
MsgBox "List printed OK"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for Gone with the Wind using a derived title search.
  • Prints the search results list. If the list prints successfully, returns a message List printed OK.

PrintLabel

Syntax BOOL = CS.PrintLabel (sHoldingCode, nCopies, sConstant1, sNumbers1, sConstant2, sNumbers2)
Use to Print the label from the current record or from records selected in a list, based on field data in the record(s).
OrI
If you have the Label Printing option selected under Perform local actions in batch (in Tools > Options > Batch):
  • Marks the record ready (R) for batch label printing (if record is in the local save file).
    Or
  • Saves the record to the local save file and then marks it ready for batch (if record is in the online save file).

Same as using the menu command File > Print Label(s).

Parameters
  • For sHoldingCode, enter the holding library code used to print the label, enclosed in quotation marks (determines the input stamps for the label).
  • For nCopies, enter the number of copies of the label to print (1 to 999). Default: 1 copy.
  • For sConstant1, enter text to print on the label to identify multiple copies or parts, enclosed in quotation marks. Use letters, numbers, and punctuation marks.
  • For sNumbers1, enter numbers to appear on the label with print constant 1, enclosed in quotation marks. Use only numbers, commas, hyphens, and quotation marks.
  • For sConstant2, enter additional text to print on the label, enclosed in quotation marks. Use letters, numbers, and punctuation marks.
  • For sNumbers2, enter numbers to appear on the label with print constant 2, enclosed in quotation marks. Use only numbers, commas, hyphens, and quotation marks.
Comments
  • You must start the label printing process with StartLabelBatch and end the process with EndLabelBatch when you use the PrintLabel command.
  • Field data in the record(s) that impacts on content of the label(s) must be correct before you use this command.
  • Printing setup options in Tools > Options > Printing apply.
  • Uses your default printer in Windows or the label printer you select in Tools > Options > Printing.

    See Cataloging/"Print labels" for more information about how the client produces labels.
  • The client automatically saves the record when you use this macro command.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "gon,wi,th,w"
batchStarted = CS.StartLabelBatch
If batchStarted = True Then
CS.PrintLabel "ZMYA", 2, "v.", "1,2,3", "c.", "1,2"
CS.EndLabelBatch
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for Gone with the Wind using a derived title search.
  • Starts a label batch print and prints two copies of labels based on field data for record number 1 for holding library code ZMYA with the following print constants:
    • v.1 c.1
    • v.1 c.2
    • v.2 c.1
    • v.2 c.2
    • v.3 c.1
    • v.3 c.2

PrintLabelEx

Syntax BOOL = CS.PrintLabel Ex (sHoldingCode, sSpine, sCall1, sAuthor1, sTitle1, sCall2, sAuthor2, sTitle2, nCopies, sConstant1, sNumbers1, sConstant2, sNumbers2)
Use to Allows you to edit data for a label for the current record before printing the label.

Same as using the menu command View > Label to open a label for the current record for editing.
Parameters
  • For sHoldingCode, enter the holding library code used to print the label, enclosed in quotation marks (determines the input stamps for the label).
  • Enter the parameter sSpine to supply the text to print on the spine label.
  • Enter the parameter sCall1 to supply the call number to print on the pocket label.
  • Enter the parameter sAuthor1 to supply the author to print on the pocket label.
  • Enter the parameter sTitle1 to supply the title to print on the pocket label.
  • Enter the parameter sCall2 to supply the call number to print on the second pocket label.
  • Enter the parameter sAuthor2 to supply the author to print on the second pocket label.
  • Enter the parameter sTitle2 to supply the title to print on the second pocket label.
  • For nCopies, enter the number of copies of the label to print (1 to 999). Default: 1 copy.
  • For sConstant1, enter text to print on the label to identify multiple copies or parts, enclosed in quotation marks. Use letters, numbers, and punctuation marks.
  • For sNumbers1, enter numbers to appear on the label with print constant 1, enclosed in quotation marks. Use only numbers, commas, hyphens, and quotation marks.
  • For sConstant2, enter additional text to print on the label, enclosed in quotation marks. Use letters, numbers, and punctuation marks.
  • For sNumbers2, enter numbers to appear on the label with print constant 2, enclosed in quotation marks. Use only numbers, commas, hyphens, and quotation marks.
Comments
  • You must have a record open to use this macro command.
  • Use this command with GetLabelSpine, GetLabelCallNumber, GetLabelAuthor, and GetLabelTitle to retrieve and edit data for the content of a label before printing.
  • Leave pocket 2 parameters empty to duplicate pocket 1 parameters (same as selecting Mirror Edits in View > Label).
  • You must start the label printing process with StartLabelBatch and end the process with EndLabelBatch when you use the PrintLabelEx command.
  • Printing setup options in Tools > Options > Printing apply.
  • Uses your default printer in Windows or the label printer you select in Tools > Options > Printing.

    See Cataloging/"Print labels" for more information about how the client produces labels.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sSpine as String
Dim sCallNumber1 as String
Dim sAuthor1 as String
Dim sTitle1 as String
Dim sCallNumber2 as String
Dim sAuthor2 as String
Dim sTitle2 as String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "gon,wi,th,w"
CS.GetLabelSpine "ZMYA", sSpine
CS.GetLabelCallNumber "ZMYA", sCallNumber1
CS.GetLabelAuthor(sAuthor1)
CS.GetLabelTitle(sTitle1)
sCallNumber2 = sCallNumber1
sAuthor2 = sAuthor1
sTitle2 = sTitle1
'Edit label fields as required here
batchStarted = CS.StartLabelBatch
If batchStarted = True Then
CS.PrintLabelEx "ZMYA", sSpine, sCallNumber1, sAuthor1, sTitle1, sCallNumber2, sAuthor2, sTitle2, 2, "Part", "1,2", "Copy", "1,2"
CS.EndLabelBatch
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Starts a label batch print and prints two copies of labels for record number 1 for holding library code ZMYA, based on spine, call number, author, and title text you edited, with the following print constants:
    • Part 1 Copy 1
    • Part 1 Copy 2
    • Part 2 Copy 1
    • Part 2 Copy 2

GetLabelSpine

Syntax BOOL = CS.GetLabelSpine (sHoldingCode, sSpine)
Use to Returns the spine text based on the holding library code as it would appear in a label for the current record, so that you can modify it.

Same as using View > Label to open a label for the current record for editing.

Parameters
  • For sHoldingCode, enter the holding library code used to print the label, enclosedin quotation marks (determines the input stamps for the label).
  • Enter the parameter sSpine to return the text of the label spine for editing.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sSpine as String
Dim nResult
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nResult = CS.GetLabelSpine ("ZMYA", sSpine)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Returns the text of the spine label for editing.

GetLabelSpine
Unformatted

Syntax BOOL = CS.GetLabelSpineUnformatted (sHoldingCode, sSpine)
Use to Returns unformatted text (no line breaks) for a spine label extracted from the current record, based on the holding library code, so that you can modify it.

Same as using View > Label to open a label for the current record for editing, except that the label text has no line breaks..

Parameters
  • For sHoldingCode, enter the holding library code used to print the label, enclosedin quotation marks (determines the input stamps for the label).
  • Enter the parameter sSpine to return the text of the label spine for editing.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sSpine as String
Dim nResult
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nResult = CS.GetLabelSpineUnformatted ("ZMYA", sSpine)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Returns the text of the spine label unformatted (no line breaks) for editing.

GetLabelCallNumber

Syntax BOOL = CS.GetLabelCallNumber (sHoldingCode, sCallNumber)
Use to Returns the call number based on the holding library code as it would appear in a label for the current record, so that you can modify it.

Same as using View > Label to open a label for the current record for editing.

Parameters
  • For sHoldingCode, enter the holding library code used to print the label, enclosedin quotation marks (determines the input stamps for the label).
  • Enter the parameter sCallNumber to return the call number for editing.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sCallNumber as String
Dim nResult
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nResult = CS.GetLabelCallNumber ("ZMYA", sCallNumber)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Returns the call number for editing.

GetLabelAuthor

Syntax BOOL = CS.GetLabelAuthor (sAuthor)
Use to Returns the author text from the current record, so that you can modify it.

Same as using View > Label to open a label for the current record for editing.

Parameters Enter the parameter sLabelAuthor to return the author for editing.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sAuthor as String
Dim nResult
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nResult = CS.GetLabelAuthor (sAuthor)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Returns the author text for editing.

GetLabelTitle

Syntax BOOL = CS.GetLabel (sTitle)
Use to Returns the title text from the current record, so that you can modify it.

Same as using View > Label to open a label for the current record for editing.

Parameters Enter the parameter sTitle to return the title for editing.
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim sTitle as String
Dim nResult
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
nResult = CS.GetLabelTitle (sTitle)

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Returns the title text for editing.

StartLabelBatch

Syntax BOOL = CS.StartLabelBatch
Use to Starts the label printing process.
Parameters None
Comments You must use this command to start label printing before you can use the PrintLabel or PrintLabelEx command in a macro.
Return values TRUE if the action is successful, or FALSE if not.
Example See the example for PrintLabel or PrintLabelEx.

EndLabelBatch

Syntax BOOL = CS.EndLabelBatch
Use to Ends the label printing process.
Parameters None
Comments You must use this command to end label printing after you use the PrintLabel or PrintLabelEx command in a macro.
Return values None
Example See the example for PrintLabel or PrintLabelEx.

PrintMacro

Syntax BOOL = CS.PrintMacro (sMacroName)
Use to Print a specified macro.
Parameters For sMacroName, enter the name of the macro, enclosed in quotation marks, in the following format (do not type the brackets):
[macro book name]![macro name]
Return values TRUE if the action is successful, or FALSE if not.
Example Sub Main()
Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.PrintMacro "ClientMacros.mbk!Test"

End Sub

What this example does Prints a macro named Test in a macro book file named ClientMacros (always has the file extension .mbk)

RunMacro

Syntax BOOL = CS.RunMacro (sMacroName)
Use to Run a specified macro.
Parameters For sMacroName, enter the name of the macro, enclosed in quotation marks, in the following format (do not type the brackets):
[macro book name]![macro name]
Return values TRUE if the action is successful, or FALSE if not.
Example Sub Main()
Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.RunMacro "ClientMacros.mbk!Test"

End Sub

What this example does Runs a macro named Test in a macro book named ClientMacros (always has the file extension *.mbk).

AssignMacroToKey

Syntax BOOL = CS.AssignMacroToKey (sKeyName, sMacroName, bOverwrite)
Use to Assign a keystroke shortcut to a specified macro.
Parameters
  • For sKeyName, enter a key name enclosed in quotation marks.
  • For sMacroName, enter the name of the macro to which you want to assign the key. Enclose the name in quotation marks. Enter in the following format (do not type the brackets):
    [macro book name]![macro name]
  • (Optional.) For bOverwrite, enter true to override any existing assignment to the key. Otherwise, the new assignment is ignored and the existing assignment is retained.
Return values TRUE if the action is successful, or FALSE if not.
Example Sub Main()
Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.AssignMacroToKey "F10", "ClientMacros.mbk!Test", True"

End Sub

What this example does Assigns the F10 key to run a macro named Test in a macro book named ClientMacros (always has the file extension *.mbk). The key assignment overrides any existing assignment for <F10>.

QueryRecordStatus

Syntax BOOL = CS.QueryRecordStatus (sStatus, sReturnValue)
Use to Request the specified status of the current record.
Parameters
  • For sStatus, enter the type of status* you want to know about (use uppercase).
  • Enter the parameter sReturnValue* to store the status of the current record for the specified status type.

    *See the list of values for available status types below.
Return values TRUE if successful, or FALSE if not or if the current record does not support the status.
Example

Sub Main()

Dim CS As Object
Dim sValue As String
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.QueryRecordStatus "LOCK", sValue
MsgBox sValue
CS.QueryRecordStatus "NUM", sValue
MsgBox sValue
CS.QueryRecordStatus "TOTAL", sValue
MsgBox sValue

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Requests and returns the lock status of the record.
  • Requests and returns the record's control number.
  • Requests and returns the total number of holdings for the record.

Available status types and values

Status type
(enter in uppercase)
Definition and type of record that supports the status Possible return values
NUM Control number

Bibliographic and authority (& HPB*)
1 through 99999999
SAVE Online or local save file number

Bibliographic and authority (& HPB*)
1 through 9999
VAL Validation status

Bibliographic and authority (& HPB*)
c (completed), f (failed), r (ready), - (not set)
UPD Update status

Bibliographic
c (completed), f (failed), r (ready), - (not set)
PRD Produce status

Bibliographic
c (completed), f (failed), r (ready), - (not set)
DELH Delete Holdings status

Bibliographic
c (completed), f (failed), r (ready), - (not set)
XPO Export status

Bibliographic and authority (& HPB*)
c (completed), f (failed), r (ready), - (not set)
LBL Label status

Bibliographic (& HPB*)
c (completed), f (failed), r (ready), - (not set)
ADD Add to Authority File status

Authority
c (completed), f (failed), r (ready), - (not set)
LOCK Lock status

Bibliographic and authority (& HPB*)
y (yes), n (no)
RPL Replace status

Bibliographic and authority (& HPB*)
c (completed), f (failed), r (ready), - (not set)
SOURCE Source of the record

Bibliographic (& HPB*)
Derived, Extracted, Imported, OCLC, Pathfinder, URL, Workform
EDIT Edit status

Bibliographic and authority (& HPB*)
y (yes), n (no)
HELD Holding status

Bibliographic
y (yes), n (no)
WORKFLOW Workflow status

Bibliographic and authority (& HPB*)
Completed, In Process, In Review, New
MYSTATUS My Status

Bibliographic and authority (& HPB*)
My Status you entered in free text (limit: 40 characters, not case-sensitive)
TOTAL Total number of holdings

Bibliographic
A number representing the total number of holdings
ADDHPB HPB* c (completed), f (failed), r (ready), - (not set)
TOTALIRS IRs** Total number of IRs attached to the displayed record (value is 0 if the record is not a WorldCat master record)
MYIRS IRs** Number of IRs your library has attached to the displayed record (value is 0 if the record is not a WorldCat master record)
*HPB = Hand Press Book. Hand Press Book is available by contract with OCLC to members of the Consortium of European Research Libraries (CERL) only.
**IR = Bibliographic institution records attached to WorldCat master records.

LoadProfile

Syntax BOOL = CS.LoadProfile (sName)
Use to Load or create a user profile
Parameters
  • For sName, enter the name assigned to the user profile you want to load, enclosed in quotation marks.
    Or
    Enter a name to create a new user profile based on client default settings.
Comments
  • LoadProfile is for users who create multiple profiles to catalog for different libraries using different sets of user options, local files, settings, etc.
  • The client installs with one (default) profile named MyProfile.
  • User profiles are listed in the Profile Manager window (Tools > Profiles).
Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
If CS.LoadProfile "HealthSci"
Msgbox "Profile HealthSci loaded"
End If

End Sub

What this example does
  • Sets the HealthSci profile as the default and loads the profile.
    Or
    If a HealthSci profile does not exist, creates a new profile with that name using system default settings, sets the new profile as the default, and loads it.
  • If you have local files open, closes them. If you are logged on, logs you off.

SendKeys

Syntax CS.SendKeys string$ [, wait%]
Use to Send keystrokes to the client.
Parameters
  • For string$, enter enter an expression containing the characters to send. See Comments for how to represent keystrokes with characters.
  • For [, wait%], enter a numeric expression to determine whether to wait until all keys are processed before continuing program execution:
    • -1 = wait
    • 0 = do not wait (default)

Both parameters are required.

Recommendation OCLC recommends that you precede a CS.SendKeys string in a macro with an empty CS.SendKeys string to help stabilize the way SendKeys works.

Example:

Dim CS As Object

Set CS = CreateObject ("Connex.Client")

CS.SendKeys "", -1

CS.SendKeys "{(}abc{)}", -1Sends the keys (abc).

Comments
  • To specify an ordinary character, enter it in the string. For example, to send character 'a' enter "a" as string. Several characters can be combined in one string: string "abc" means send 'a', 'b', and 'c'.
  • To specify that Shift, Alt, or Control keys should be pressed simultaneously with a character, prefix the character with:
    • + to specify Shift
    • % to specify Alt
    • ^ to specify Control
  • Parentheses can be entered to specify that the Shift, Alt, or Control key should be pressed with a group of characters. For example, "%(abc)" is equivalent to "%a%b%c".
  • Since '+', '%', '^' ,'(' and ')' characters have special meaning to SendKeys, they must be enclosed in braces if they need to be sent with SendKeys. For example, string "{%}" specifies a percent character '%'.
  • The other characters that need to be enclosed in braces are '~' which stands for a new line, "Enter" if used by itself, and braces themselves: enter {{} to send '{' and {}} to send '}'. Brackets '[' and ']' do not have special meaning to SendKeys but might have special meaning in other applications; therefore, they also need to be enclosed inside braces.
  • To specify that a key needs to be sent several times, enclose the character in braces and specify the number of keys sent after a space.
    Example: Enter {X 20} to send 20 'X' characters.
  • To send one of the non-printable keys, enter a special keyword inside braces, as shown in the list below.
  • To send one of function keys F1 through F12, enclose the name of the key inside braces. For example, to send the F5 key, enter "{F5}".
  • Note that special keywords can be entered in combination with +, %, and ^. For example: %{TAB} represents Alt-Tab. Also, you can send several special keys in the same way as you would send several normal keys: {UP 25} sends 25 Up arrows.
  • SendKeys can send keystrokes only to the currently active application. Therefore, you have to use the AppActivate statement to activate an application before sending keys (unless it is already active). (See OML Help for more information about AppActivate.)
  • SendKeys cannot be used to send keys to an application that was not designed to run under Windows.
Return values None
Example

Sub Main()

Dim CS As Object
Set CS = CreateObject("Connex.Client")
CS.SendKeys "", -1
CS.SendKeys "{F1}", 0

End Sub

What this example does
  • Sends an empty SendKeys string (see recommendation above).
  • Sends the F1 function key to the client to open Help. (F1 is the default keystroke assigned to open Connexion Client Help).

Keywords used to send non-printable keys
Key Keyword
Backspace {BACKSPACE} or {BKSP} or {BS}
Break {BREAK}
Caps Lock {CAPSLOCK}
Clear {CLEAR}
Delete {DELETE} or {DEL}
Down Arrow {DOWN}
End {END}
Enter {ENTER}
Esc {ESCAPE} or {ESC}
Help {HELP}
Home {HOME}
Insert {INSERT}
Left Arrow {LEFT}
Num Lock {NUMLOCK}
Page Down {PGDN}
Page Up {PGUP}
Right Arrow {RIGHT}
Scroll Lock {SCROLLLOCK}
Tab {TAB}
Up Arrow {UP}

back to top

Connexion client macro commands: Bibliographic institution records

ShowInstitution
Records

Syntax nNumRecords = CS.ShowInstitutionRecords (bRetrieveAll, sSymbol)
Use to Show institution records (IRs) attached to the displayed WorldCat master record.

Same as using one of the following commands:
Cataloging > Show > All Institution Records
Cataloging > Show > My Institution Records
Cataloging > Show > Institution Records For
Parameters
  • For bRetrieveAll, enter True to retrieve all institution records attached to the displayed master record.
    Or
    Enter False and give a value for the second parameter to retrieve IRs contributed by a specified library.
    Or
    Enter False and leave the second parameter empty to retrieve IRs that your library contributed.
  • For sSymbol, enter the OCLC institution symbol of a library for which you want to retrieve contributed institution records. Enclose the symbol in quotation marks (").
    • This parameter is ignored if the first parameter is True.
    • Enter False for the first parameter and leave this parameter empty to retrieve IRs that your library contributed.
Comments This command does not require that your logon authorization include institution records.

You must be logged on to run this macro command, since the client retrieves IRs from WorldCat (IRs are not saved with master records in the online or local save file).
Return values An integer representing the number of institution records retrieved.
Example

Sub Main()

Dim CS As Object
Dim nNumRecords As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.ShowInstitutionRecords(False, "ocl") > 0 Then
MsgBox (nNumRecords) + " records found"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • If IR(s) contributed by the institution represented by OCLC symbol ocl are present, returns the number of IRs attached.
  • Retrieves the IR or list of IRs contributed by ocl.

UpdateAndAdd InstitutionRecord

Syntax BOOL = CS.UpdateAndAddInstitutionRecord
Use to For a displayed WorldCat master record, update holdings in the master record and then create and add an institution record (IR) based on the master record, linking the IR to the master record by adding the OCLC number of the master record in read-only field 079.For a displayed IR workform, update the master record and then add the IR (make the workform a record), linked to the master record by the OCLC number of the master record in read-only field 079.Same as using Action > Holdings > Update and Add Institution Record.
Parameters None
Comments This command requires that your logon authorization include institution records.

You must be logged on to run this macro command, since batch processing is unavailable for institution records.
Return values TRUE if the actions are successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.UpdateAndAddInstitutionRecord
If bResult = True Then
MsgBox "Update and add IR completed"
Else
MsgBox "Update and add IR failed"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Updates holdings on master record number 1, creates and adds an institution record based on record 1, and links the IR to the master record by adding the OCLC number (1) in read-only field 079.
  • If these actions are successful, returns the message Update and add IR completed. If not, returns the message Update and add IR failed.

ProduceAndAdd InstitutionRecord

Syntax BOOL = CS.ProduceAndAddInstitutionRecord (bAdProduce, bAllProduce, shExtraCards)
Use to For a displayed WorldCat master record, update holdings for the master record and produce output as described in your OCLC cataloging profile (for example, produce catalog cards), and then create and add an institution record (IR) based on the master record.

Same as using the Action > Holdings > Produce and Add Institution Record menu command.
Parameters

None

Comments This command requires that your logon authorization include institution records.

You must be logged on to run this macro command, since batch processing is unavailable for institution records.
Return values TRUE if the actions are successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.ProduceAndAddInstitutionRecord
If bResult = True Then
MsgBox "Produce and add IR completed"
Else
MsgBox "Produce and add IR failed"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Updates holdings and produces output for master record number 1, and then creates and adds an institution record based on record 1.
  • If these actions are completed, returns the message Produce and add IR completed. If not, returns the message Produce and add IR failed.

AltProduceAndAdd
InstitutionRecord

Syntax BOOL = CS.AltProduceAndAddInstitutionRecord (bAdProduce, bAllProduce, shExtraCards)
Use to For a displayed WorldCat master record, update holdings for the master record and produce output as described in your OCLC cataloging profile (for example, produce catalog cards), and then create and add an institution record (IR) based on the master record.

Same as using the Action > Holdings > AltProduceAndAddInstitutionRecord menu command.
Parameters
  • For bAdProduce, enter true to produce standard cards as defined in your OCLC cataloging profile, or enter false to cancel this option.
  • For bAllProduce, enter true to produce standard cards for all holding libraries listed in the 049 field of the record, or enter false to cancel this option.
  • For shExtraCards, enter the number of extra copies you want of the main entry card for the record
Comments

This command requires that your logon authorization include institution records.

You must be logged on to run this macro command, since batch processing is unavailable for institution records.

Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Dim bAdProduce As Integer
Dim bAllProduce As Integer
Dim shExtraCards As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
CS.AltProduceAndAddInstitutionRecord True, True, 6
CS.Search "WC", "#2"
bAdProduce = True
bAllProduce = False
shExtraCards = 4
If bResult = True Then
MsgBox "Altproduce and add IR completed"
Else
MsgBox "Altproduce and add IR failed"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • For master record number 1:
    • Updates holdings (adds your institution symbol)
    • Produces standard cards as defined in your OCLC cataloging profile
    • Produces standard cards for all holding libraries listed in the 049 field of the record
      Produces six extra copies of the main entry card
    • Adds an institution record based on the master record
  • Searches WorldCat for record number 2.
  • For master record number 2:
    • Updates holdings (adds your institution symbol)
    • Produces standard cards as defined in your OCLC cataloging profile
    • Produces four extra copies of the main entry card
    • Adds an institution record based on the master record
    • If the action is successful, returns the message Altproduce and add IR completed. If not, returns the message Altproduce and add IR failed.

ReplaceUpdateAnd
AddInstitutionRecord

Syntax BOOL = CS.ReplaceUpdateAndAddInstitutionRecord
Use to For a displayed, modified master record, replace the master record, update holdings for the master record, and then create and add an institution record (IR).

Same as using the Action > Replace Update and Add Institution Record menu command.
Parameters None
Comments This command requires that your logon authorization include institution records.

You must have a master record open which you have modified.

You must be logged on to run this macro command, since batch processing is unavailablefor institution records.

Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
If CS.Lock = True Then
CS.AddFieldLine 1, "500 Field added at line position 1"
bResult = CS.ReplaceUpdateAndAddInstitutionRecord
If bResult = True Then
MsgBox "Replace, update, and add IR completed"
Else
MsgBox "Replace, update, and add IR failed"
End If
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Locks the master copy of record number 1.
  • Adds a new field 500 as the first line of the record, with no indicators (two blank spaces), and the text Field added at line position 1.
  • Replaces the master record (master record now contains the new field), updates holdings for the master record, and then creates and adds an IR based on the master record.
  • If the action is successful, returns the message Replace, update, and add IR completed. If not, returns the message Replace, update, and add IR failed.

DeleteAllInstitution
Records

Syntax CS.DeleteAllInstitutionRecords (bDeleteHoldAndLHRs)
Use to Delete all institution records (IRs) contributed by your library that are attached to the displayed WorldCat master record.

Same as using the Action > Holdings > Delete All Institution Records menu command.
Parameters For bDeleteHoldAndLHRs, enter true to also delete local holdings records (LHRs) and your library's OCLC symbol, or enter false to delete IRs only.
Comments

This command requires that your logon authorization include institution records.

The command is applied only to IRs your library contributed.

You must be logged on to run this macro command, since the client retrieves and deletes IRs from WorldCat (IRs are not saved with master records in the online or local save file).

Return values TRUE if the action is successful, or FALSE if not.
Example

Sub Main()

Dim CS As Object
Dim bResult As Integer
Set CS = CreateObject("Connex.Client")
If CS.IsOnline = False Then
CS.Logon "", "", ""
End If
CS.Search "WC", "#1"
bResult = CS.DeleteAllInstitutionRecords(true)
If bResult = True Then
MsgBox "The command completed successfully"
Else
MsgBox "The command did not complete successfully"
End If

End Sub

What this example does
  • Logs on to Connexion if not already logged on, using the default authorization and password you selected in Tools > Options > Authorizations tab.
  • Searches WorldCat for record number 1.
  • Deletes all IRs that were attached to record number 1 that your library contributed, deletes your library's OCLC symbol, and deletes LHRs.
  • If these deletions were successful, returns the message IRs, OCLC institution symbol and LHRs were deleted. If not, returns the message IRs, OCLC institution symbol and LHRs were not deleted.

back to top

ASCII and hexadecimal codes for diacritics and special characters

Enter diacritics and special characters using macros

If data used with macro commands such as CS.GetField or CS.SetField contains diacritics or special characters, the data appears with diacritics following the letters to which they belong. They do not appear as Unicode characters.

The standard function Asc returns the ASCII code mapped to the character. See an example of inserting characters in the description of ControlHeadingsAll in "Connexion client macro commands: Edit records."

The following table gives the ASCII codes and the equivalent MARC-8 hexadecimal codes for diacritics and special characters available for use when you write macros that insert characters (the client inserts the correct information automatically when you record macros):

Character ASCII decimal code MARC-8 hexadecimal code
Acute 226 E2
ae, lowercase 181 B5
AE, uppercase 165 A5
Alif 174 AE
Ayn 176 B0
Breve 230 E6
British pound 185 B9
Candrabindu 239 EF
Cedilla 240 F0
Circle above letter 234 EA
Circle below letter 244 F4
Circumflex, non-spacing 227 E3
d with crossbar, lowercase 179 B3
D with crossbar, uppercase 163 (same as eth, uppercase) A3
Degree sign Insert the following value for the ALA font code: 158
Delimiter (also listed under Subfield delimiter) 223 DF
Dot below letter 242 F2
Dot in center of line 168 A8
Double acute 238 EE
Double dot below letter 243 F3
Double tilde (left half) 250 FA
Double tilde (right half) 251 FB
Double underscore 245 F5
Eszett Insert the following value for the ALA font code: 159
Eth, lowercase 186 BA
Eth, uppercase 163 (same as D with crossbar, uppercase) A3
Euro Insert the following value for the ALA font code: 160
Fill character 252 FC
Grave, non-spacing 225 E1
Grave, spacing 96 60
Hacek 233 E9
High comma, centered 254 FE
High comma, off center 237 ED
Inverted cedilla 248 F8
Inverted exclamation point 201 C6
Inverted question mark 200 C5
I with slash, lowercase 177 B1
L with slash, uppercase 161 A1
Left hook 247 F7
Ligature (left half) 235 EB
Ligature (right half) 236 EC
Macron 229 E5
Miagkii znak 167 E7
Musical flat 169 A9
Musical sharp 204 C4
o with hook, lowercase 188 BC
O with hook, uppercase 172 AC
o with slash, lowercase 178 B2
O with slash, uppercase 162 A2
oe, lowercase 182 B6
OE, uppercase 166 A6
Phonogram copyright mark 203 C2
Plus/minus 171 AB
Pseudo question mark 224 E0
Right hook 241 F1
Script lowercase L 190 C1
Subfield delimiter 223 DF
Subscript 0 144 30
Subscript 1 145 31
Subscript 2 146 32
Subscript 3 147 33
Subscript 4 148 34
Subscript 5 149 35
Subscript 6 150 36
Subscript 7 151 37
Subscript 8 152 38
Subscript 9 153 39
Subscript left parenthesis 154 28
Subscript minus 156 2D
Subscript plus 157 2B
Subscript patent mark 170 AA
Subscript right parenthesis 155 29
Superior dot 231 E7
Superscript 0 128 30
Superscript 1 129 31
Superscript 2 130 32
Superscript 3 131 33
Superscript 4 132 34
Superscript 5 133 35
Superscript 6 134 36
Superscript 7 135 37
Superscript 8 136 38
Superscript 9 137 39
Superscript left parenthesis 138 28
Superscript minus 141 2D
Superscript plus 140 2B
Superscript right parenthesis 139 29
Thorn, lowercase 180 B6
Thorn, uppercase 164 A4
Tilde, non-spacing 228 E4
Tilde, spacing (use in URLs) 126 7E
Turkish i without dot, lowercase 184 B8
Tverdyi znak 183 B7
u with hook, lowercase 189 BD
U with hook, uppercase 173 AD
Umlaut 232 EB
Underscore, non-spacing 246 F6
Underscore, spacing (use in URLs) 95 5F
Upadhmaniya 249 F9

back to top