Basic Functions of GoldBox

Download Demo Download Word Document

Price: $190 ORDER



{Batch} {Import/Update} As mentioned, this is one of the big hammers in GoldBox. It also takes the most analysis and planning. Most often, you are bringing data into GoldMine that was setup to work a certain way in another system. Now you have to make it work within GoldMine, and follow the rules setup by FrontRange Solutions for managing its own data tables. The Import/Update is definitely not something you want to just dive into immediately. You first have to have a basic understanding of how GoldMine stores its data. See the above section on GoldMine Data Tables, and of course ensure you review the GoldMine documentation on its data table usage (which is the best source for this information).

Once you have decided where in GoldMine you will store the incoming data, you then must analyze the incoming data to see if its import into GoldMine is feasible. Some quick notes:

The incoming data must eventually be in dBase format. If it is in ASCII or SDF format, GoldBox has tools to convert to dBase, and so does Excel and Access. See the Import/Update documentation at F1 Help for information on how to do this.

Import into the Main Contact File is rather straightforward, for adding new contacts. If you want to Dupe Check the incoming records before they are added, this must be done as an {Update Main Fields} process in GoldBox. Plug in all the fields you need for a new record, then press the {Shield} button at each field. This stops the GoldMine field from being updated on a match. At the Update Setup screen, select the checkbox to Add Unmatched Records as New.

If you are bringing data into the Tab files, determine how the Tab data is stored in the incoming file(s). If it is contained in the same record as the Main data, you can plug in the Tab records so they are attached in a single pass. If they are in separate related tables, determine which field relates them to the Main data. This field value must be mapped when doing the GoldBox Main Import of New records, to the Assistant/Secretary field, one of the 5 Key fields, or one of the first 10 User-defined fields.

GoldBox allows you to match an incoming record to a GoldMine record using multiple fields. The result of the Record Match expression cannot exceed 100 characters. You could, for example, match on Company + Contact, or Company + Phone1 or Company + Contact + Zip Code.

If you want to update existing Tab records in GoldMine from an outside file, or if you want to stop a dupe Tab record from getting into GoldMine, GoldBox provides a mechanism for this. See {Tab Attach, Update, Dupe Detection) in the F1 Help system.

GoldBox anticipates many of the formatting issues you may have when importing data:


A very powerful function called VLink2dBase() is provided in GoldBox to allow a virtual link to any dBase table from GoldMine. Please see the documentation for this function. Using a GoldMine table as the master, you can read from or write to any of the fields of the linked table. This might be used as an alternative to Updating, by doing a Global Replace instead and linking to the outside table. In GoldBox-SQL, you also have a VLink2MSSQL() function to link to another SQL table.



{Batch} {Export} Exporting is taking data from one or more GoldMine tables and creating a single flat file, in dBase or Text format. This can be used as:

The following highlights the key points of the GoldBox Export:


{Misc} {GXW Browser} {Any File} {List} button. This is available for GoldBox-4 and GoldBox-5. You can create simple list-type reports from any GoldMine table (or indeed from any dBase table).


{Misc} {GXW Browser} {Any File} {Write} button. Displays the full record as one field per line, and includes listing the entire contents of the Notes field. This can be viewed in the scrollable window, or printed.



{Batch} {Merge-Purge} The GoldMine Merge-Purge concept was originated in GoldBox and is generally faster, more failsafe and contains more options than the one in GoldMine. Merge-Purge allows you to identify dupes based on one or more fields, then Merge the related Tab records of the Deleted dupe into the Saved dupe. In GoldBox, you can choose from Batch, Count, Manual or Delete Modes; Save Deleted dupes off to another Contact File; Create Additional Contacts from Deleted dupes; Create a list of dupes in Count Mode; and, in Batch Mode, backfill Saved fields from Deleted fields. You can also save off the field values in the Deleted record that differ from the Saved record to a History record. Main Notes from the Deleted are not added into the Notes of the Saved record. Instead, a special History record is created, and the Main Notes of the Deleted record become the Notes value of the History record.


{Batch} {Global Replace} You can globally replace Tab records, or a Main or user-defined field from a Tab field. You can also use VLink2dBase() and replace GoldMine fields from a linked dBase table directly. If you are looking to globally replace a Linked Document drive/path with a new one, choose {Supplemental}, and at the Setup screen, select {L} as the {Supplemental Record Type}. You will see the checkbox for this option. When the checkbox is selected, click {Field-1} and you are prompted for the rest of the information.


{Batch} {Global Delete} You can globally delete Tab records, and, in GoldBox-4 and GoldBox-5, records from any GoldMine file. That is available from {Misc} {GXW Browser} {Any File} {X-Del} button.


{Misc} {GXW Browser} {Any File} {U-Del} button. In GoldBox-4 and GoldBox-5, you can undelete records (a.k.a. Recall) from any file, as long as you have not done a file Rebuild in GoldMine since you performed the deletions. GoldBox has special logic when you choose the {Contact1} file. It will undelete the Contact record, and all related Tab records attached to it. This should be done as soon as possible, since GoldMine recycles deleted Tab records!


{Batch} {Notes Archival} Moves dated entries in the Main Notes into History. The procedure is based on the unique GoldMine Date Banner that is added when you insert a Note. 3 asterisks surrounding a User Name identify these. If you have imported Main Notes and they have a general banner for each entry, you may be able to use the GenBanner() function to convert them to GoldMine Date Banners. Then you can run this operation to send them to History. A general banner must begin with a date as the first word of a Notes line in order for GenBanner() to convert it.


{Batch} {User Name Changer} GoldBox has identified all the GoldMine tables that track the GoldMine User Name. Instead of doing Global Replaces on these tables individually, you can run this operation to select any or all of them. This is typically used to change a general GoldMine User Name, such as DAVE, to a more descriptive one, such as DPETONIC. Or, if an employee has left your company, it can also be used to reassign the records to a new user name.


{File} {Area Code Split Table} In this operation, you populate a GoldBox table called AREACODE.DBF with the split information. This consists of the Old Area Code, the New Area Code, and the Prefix or Exchange affected by the split. Optionally you can include a City, since in some rare cases this is used to determine a split. Once the table is populated to your satisfaction, you launch GoldBox with 3 simple parameters to run the operation. The 3 parameters are your GoldBox login initials, the code /A, and the drive/path to the Contact file on which to perform the operation. GoldBox will automatically check Phone1, Phone2, Phone3, Fax, any User-defined Phones, and the Phone and Fax of Additional Contacts and make any changes necessary, based on the AREACODE.DBF table. If you have the split information in a dBase or text file, you can also import into the table, via {Batch} {Import/Update} {Area Code Split Table}.



{Batch} {Group Builder} The finest Group Builder for GoldMine is not in GoldMine – it’s right here! This claim is based on the following:


{Batch} {Groups-by-Break) You can automatically generate GoldMine Groups by ‘breaking’ on unique values found in a field, or a field expression. For example, you wish to build a separate Group for each State in your Contact File. Instead of setting up an individual Group for each State, this option scans the State field and automatically generates a Group for each unique State.


{Batch} {Org Chart Creator} GoldBox lets you automatically generate single-level Org Charts, using the ‘break’ method described above. Or, you can setup one or more filters and add members to an Org Chart if they meet one or more of the filters. In this way, you can build ‘Visual Groups’. Again, you have the power of GoldBox’s function library to pinpoint Org Chart member inclusion, including the MultiTab() and VLink2dBase() functions.


{Batch} {Dupes Between Files} This is available for GoldBox-4 and GoldBox-5. It allows you to compare one Contact File against another, and create a Group of those records found in the other Contact File, based upon your Record Match expression. You might use this, for example, to delete the dupes directly, or copy them into the other Contact File and perform a Merge-Purge.



{Misc} {GXW Browser} This is available for GoldBox-4 and GoldBox-5. You can choose from any of GoldMine’s fields and generate a listing of all unique values in that field, whether an F2 Lookup entry exists, how many records contain the field value, and what percentage of the file contains that field value. This is ideal for use by DBAs, to standardize a GoldMine file before running reports or building Groups. You can also select this option for any GoldMine file, or any dBase file.


{Batch} {Contact Validator} This is available for GoldBox-5. You can setup an unlimited set of rules for record values, and the process will create a listing of those records that did not meet all of the rules. Again, helpful to DBAs for standardizing record entry and Tab file record existence for Contacts. You can access the listing from {File} {Contact Validator Exceptions}



{Batch} {INI Settings Replicator} This is useful for DBAs who want to standardize one or more User INI files with sections from a User INI File chosen as Master. You can replicate one or more sections to any number of other User INI files. The process is saved and can be re-executed, if, for example, you make a minor change to a section and want to easily propagate the change.



(Command Line or Q-file driven) Available for GoldBox-4 and GoldBox-5. You can Pack, or Rebuild, any GoldMine tables. Some users have found that if GoldMine’s maintenance procedure fails on a particular file, this may process the file correctly. The Pack/Rebuild operation removes deletion-marked records, optimizes the Notes file by reducing its size and rebuilds all related index tags from scratch. The GoldBox file GXMDXDEF.DBF contains all of GoldMine’s index expressions and is updated each time a new GoldMine version is released. You may review this file but do not alter it.

GoldBox provides the additional service of creating a log entry for each file handled. This entry shows when the process began, when it ended, how many records the file started with, how many were removed, how many remain, the size of the Notes DBT file before the procedure and the size after.

You can also pass a 4th parameter called SYNC. This causes GoldBox to verify the record has a Record ID, and if not, it will create one and add a Tlog entry.

You can also pass a 4th parameter called ZZNEW for GoldBox-4 and GoldBox-5. This causes GoldBox to generate a New Sync ‘zzNew’ record for each record in the GoldMine table. In GoldBox-SQL, this is launched differently (see F1 help). You should definitely be a sync expert when using this option! It is typically only used when you want to clear out the Tlog file and begin sync transfers from a central system from scratch.


(Command Line or Q-file driven) Available for GoldBox-4 and GoldBox-5. Essentially the same as the above procedure, except that only the index tags are recreated.

In GoldBox-SQL, you can launch the creation or the dropping of any SQL index tag.


(Q-file driven) This is available for GoldBox-4 and GoldBox-5. Any dBase4 table can have as many as 47 index tags. You can add an index tag to any GoldMine table or alter an existing one, and this tag will be automatically maintained by GoldMine during normal interactive usage.

This operation is actually run by the freeware BR7 Utility, provided by Redstone SoftBase Company and existing in your GoldBox path as BR7.EXE. To automate the operation, it is setup in a Q-file.

Example: You wish to create an index tag on the Department field and alter the index tag for the Last Name field. You can either add entries to do this within an existing Q-file, or create a new Q-file specifically for this purpose. We’ll assume creation of a new Q-file. At {Misc} {Q-file Setup} select {Add} and key in a Description such as: Additional Index Tags for GoldMine. Make the Q-file name QADINDEX. Click {Quit} and you are taken to the entry setup for this Q-file.

Select {Add}, and from the list, near the bottom, select the {RUN WINDOWS PROGRAM} item. In the {Launch ID or Path Name} column, key in:

BR7 c:\progra~1\goldmine\common\contact1 condept INDEXON Upper(Department) /E

If the entry does not fit within this column, select the next column, {4th Parameter} and finish the statement.

Select {Add} again, select the {RUN WINDOWS PROGRAM} item, and key in:

BR7 c:\progra~1\goldmine\common\contact1 contlast INDEXON Upper(Lastname+Left(Contact,15) /E

Click {Quit} to exit the Q-file setup, and do not choose to run the Q-file. You can now store the call to the Q-file from {Start} {Run} or a shortcut.

When the first item is executed, the index is created by BR7, which then exits because of the /E parameter. Then the process repeats for the second index tag on Last Name. The alteration of the Last Name index tag is included as an example because GoldMine’s default index tag expression does not include the Contact’s First Name as a sub-sort after Last Name. This index will now allow you to view, for example, 50 contacts named Smith, sub-sorted by their First Names.


In addition to creating index tags on any dBase4 table, you can also launch the Pack/Reindex of any dBase4 table. This is done by passing a special parameter after the file name, such as:

BR7 c:\mydata\address.dbf DBFPACKEXIT


From within a Q-file, you can add commands to perform the disk file operations Copy, Rename and Delete. This precludes you from having to loop out to a DOS batch file for these operations. These capabilities may be useful when setting up complex Q-files, for Import, Update or Export operations. When setting up a Q-file, you will see these options near the bottom of the pick list.


Because of GoldBox’s excellent Automation Logic with Q-files, you can include the running of other applications right from within the Q-file. For example, before an Import or Update, you may need to run an outside application that converts an Oracle table to a dBase table. You would put the call to do this above the Import/Update operation so the file is ready for the Import/Update operation (which, as mentioned, uses only a dBase table as the final format). Please ensure the application is self-opening (no prompted user name or password) and self-closing (closes itself after running). That will cause GoldBox to move down to the next item in the Q-file task list and continue processing.

The call to BR7 to create or alter existing Index Tags, mentioned above, is a perfect example of this capability, since BR7 is not part of GoldBox and is an outside application.


Each batch operation that successfully completes, even the running of a non-GoldBox program, gets a log entry called a Batch Session Summary record. You can access these anytime for analysis, by going to {File} {Batch Session Summaries} and clicking the {View} button. The log entry shows who ran the operation, when it started, when it finished, whether it was called from a Q-file, number of records examined and the number processed (done).


Fully one half of GoldBox’s strength is found in its automation logic. You may thing it’s difficult to implement and mistakenly bypass it. In reality, setting up GoldBox’s automation logic is the easiest procedure – it is the icing on the cake. The harder work in GoldBox is in the planning, before you actually setup an operation, and in the setup itself. Once you have that done and have fully tested it, automation is a breeze!


A Launch Operation can be the running of just a single GoldBox operation, such as an Export, or, multiple operations stored to a single Q-file. Let’s say you have setup an export from History and want to auto-execute it anytime. You can do this from the Windows {Start} {Run} if you’d like and it will be saved. Or, from a Windows shortcut, from within another application, or even as an option on one of your GoldMine menus.

All you are doing with a Launch Operation is calling GoldBox with a few parameters. Parameters are items you ‘pass in’ to a program, which it acts upon. In Microsoft Word, for example, you can pass in a parameter after the program call to load a specific document. In the case of GoldBox, you are essentially passing in an Operation Code and the Launch ID of your Setup. A call to launch the above Export might be:

C:\goldbox5\gx5 dep /E XPHIST

This is a rather typical Launch Operation command, with 3 parameters. The first is your GoldBox login initials; the second is the Operation Code; and the third is the Launch ID. When you run this, GoldBox loads its processor, performs the operation, then exits. All Batch Operations in GoldBox have examples for launching in the User’s Guide so we won’t go into that here.

Now that you see how easy it is to launch a single operation, let’s take a look at the real power of automation in GoldBox.


GoldBox is so versatile in its data management capabilities that many times, you want to run multiple operations as part of a complete batch process. Q-files makes this possible. Their setups are accessible from {Misc} {Q-file Setup}.

Setup of Q-files is already documented so that won’t be repeated here. Essentially, you can add as many operations as needed into a single Q-file, set the order in which the operations execute, and optionally apply a simple filter to each entry for conditional processing. Remember, you can mix in Disk File operations and the calling of non-GoldBox programs in the Q-file. Q-files can contain as many entries as you require – in one scenario, a GoldBox user is calling a Q-file with 150 operations in it! Typically you won’t use that many, but this illustrates the power and versatility of Q-files.

Calling a Q-file is simple. A typical call might be:

C:\goldbox5\gx5 dep /Q QNIGHTLY


As the final piece, a basic timer is included with GoldBox so you can run Launch Operations or Q-files on a timed basis. You can setup a maximum of 35 timer calls, by day of the week and time of day (hour and minute). The timer is accessible from {Misc} {Timer Setup}.

Please be aware that the GoldBox Launch Timer will not execute if minimized. It must be maximized and must be the focused application on your screen in order for it to execute. You may want to load it before you leave work, to run, for example, the above QNIGHTLY Q-file.

The GoldBox Launch Timer is provided as is. You can use other timer programs if you prefer, such as one provided with Windows or a shareware program.



{Misc} {GXW Browser} Available for GoldBox-4 and GoldBox-5. This is the most powerful sync-aware browser of GoldMine tables, with multiple capabilities. You can open up any GoldMine table in row/column format. The Contact File you are browsing is based on the 3rd button entry at the {Service} {Config Screen}. In GoldBox-5, you can setup a menu option in GoldMine to launch the Browser directly. Press F1 at the GXW Browser screen in GoldBox-5 to determine how this is done, and to see the advantages of GoldMine data from another angle. A special DDE hot-link between the GXW Browser and GoldMine is auto-created so records you are browsing cause the Main Contact in GoldMine to appear instantly.


{Misc} {SQL Query Analyzer} Available for GoldBox-SQL. This is provided to work the way GoldBox-SQL processes SQL statements. Whenever you key in a SQL statement in GoldBox-SQL, you always leave off the SELECT command and begin the statement after the WHERE clause. In this way, GoldBox-SQL shields you from remembering table names and how they are joined to other tables. GoldBox-SQL handles that transparently.


{Misc} {Parse ASCII to dBase} This turns an ASCII text file into a dBase table, typically used before importing. If the parser is not working properly on your ASCII file, it is likely the file is non-standard and cannot be handled. In this case, you can try alternative methods, such as bringing the file into Excel or Access. When the ASCII file is clean, the GoldBox parser provides options not found in Access or Excel.

If you have a recurring Import/Update and the source file is always provided as ASCII, in the same format each time, you can launch the conversion into dBase from within a Q-file. See the {Text to dBase4 Conversion} F1 panel for more information.


This is another formidable capability in GoldBox, not found elsewhere. You have over 120 functions to choose from when building filters or field expressions. Each has a separate F1 panel with a full description. These are accessible from the {Contents} tab in the Help system, or by pressing F1 at the Filter and Expression Builder. In GoldBox-4, these are listed near the bottom of GX4GUIDE.DOC, alphabetically.


These include AddlConFld(), Deleted(), DidSession(), Empty(), File(), FileWild(), Flagged(), HistoryCode(), IIF(), InGMLookup(), InGroup(), InOrgLevel(), LatestSync(), LookupDesc(), LookupINI(), MultiTab(), MultiTab2(), ReferValue(), RollupAcct(), RoundRobin(), TabEdited(), VLink2dBase(), VLink2MSSQL(), VirtualFld(), xFrag()


These include ActBanner(), AfterFirst(), AllTrim(), ANSI(), At(), Canada(), Chr(), CountWords(), DupedWord(), DurConvert(), EndWords(), FieldContains(), FirstCharacter(), FirstLast(), FirstWord(), GenBanner(), Generate(), GetaWord(), GetCity(), GetCounty(), GetCustom(), GetDST(), GetGMT(), GetSICcat(), GetSlsTerr(), GetState(), GetTable(), GeTimeDiff(), GeTimeZone(), GetZip(), GrabCity(), GrabState(), GrabZip(), GXProper(), InList(), IsAlpha(), IsFoundIn(), LastFirst(), LastWord(), LinkedName(), Lower(), Ltrim(), Mline(), PadL(), PadR(), PhoneStrip(), PrimEmail(), PullEmail(), PullWeb(), Rat(), Replicate(), SmoothComp(), SmoothName(), SnipWord(), SoundEx(), Space(), StripFrom(), StripKeep(), StripMrMs(), StripSuffix(), StrTran(), SubStr(), TextSwap(), Transform(), Trim(), UDTbanner(), Upper(), UpperStrip(), USA(), Usterr(), Val(), WordOccur(), WordSwap()


These include Int(), Len(), Max(), Min(), Recno(), Round(), Str()


These include AgeByMonth(), AgeByYear(), CDoW(), Cmonth(), CtoD(), Date(), Day(), DoW(), DtoC(), DtoS(), EndOfMonth(), FirstOfMon(), GetAcct(), Month(), ProDate(), RealDate(), Year()


These include Time(), CalEndTime(), Make24Hour(), RealTime()


Quick Start Guide

GoldBox Guide (577K)