FAQ's,
Support, and Resources
Contents:
NOTE: If you have a question regarding:
-
how PhoneSeal accesses your data
-
how PhoneSeal parses phone numbers
-
how PhoneSeal determines ambiguities
-
how dates and ZIP codes affect the process of correcting numbers
(PhoneSeal Professional only)
we
recommend you also check the new How
PhoneSeal Works page.
First,
the
For PhoneSeal
Standard, we only correct for changes to area codes since January
1995. If your data files are substantially older than this, then
we cannot guarantee the accuracy of the conversion. The oldest
actual area code for which we make changes is the January 15th
1995 split from 205 to 205/334 in Alabama.
We do not
make any claims for the completeness of the conversions. While
we believe we currently have every change recorded for every exchange
since January 15th, 1995, we make no guarantees. In the event
you discover we have an omission in our files, we will be very
glad to hear from you and will find some nice way to reward you
for being so helpful. :)
For PhoneSeal
Professional, we correct for changes to area codes from 1990.
The first split is the 214 to 903 split from November 4, 1990
to May 4, 1991.
If you have
support questions, our email address is: support@phoneseal.com.
If you have
files with complex formats that you need us to correct, or want
software developed for you to perform conversion, or need any
other advanced service related to PhoneSeal, please send email
to: consulting@phoneseal.com.
Back
to Top
PhoneSeal
writes the corrected numbers to a file with "-corrected" added
to the file name. So if you are correcting a file called "phonenumbers.csv",
then the output will be stored as "phonenumbers-corrected.csv".
PhoneSeal will not overwrite the original file.
Database updates
are completely different. No matter how a database is accessed
-- ODBC, OLEDB, or the built-in support for Microsoft Access --
when correcting a database, the phone numbers in the database
are overwritten with the new phone numbers. Back up your databases
before running the correcter, or run the correcter on a copy of
your database. This is important -- see "Phone Number Ambiguity"
below.
Back
to Top
There is no
national standard in the manner in which new area codes are deployed.
Accordingly, there have been, and will continue to be, some very
complicated changes which will give more than one possible answer
for area code changes.
For example,
if you got the phone number (206) 231-7777 before Jan 15, 1995,
it would have changed to (360) 231-7777. If you got it between
Jan 15, 1995 and April 27, 1997, it would have changed to (425)
231-7777.
We call these
'ambiguous numbers'. The problem is obvious when you realize that
the file in which the numbers are recorded will have a date on
it (from when the file was most recently saved), but the date
at which the actual information was recorded in the file is very
unlikely to be available.
Most of the
time, only a small percentage of numbers are ambiguous. To give
you a real world example, in a real file containing 3,657 telephone
numbers with 1,434 numbers that required area code correction,
there were only 4 ambiguous numbers. However, if most of the numbers
in your file are in an area where such multiple splits occur,
it is possible you may have a large percentage of ambiguous numbers.
Unfortunately,
there is no way an automated tool like PhoneSeal can resolve these
ambiguities. To be absolutely certain, somebody has to verify
the numbers with a phone call. So, for those people who want perfection,
we have a perfect answer.
To get that
short list of ambiguous numbers, we use the PhoneSeal PreCleaner.
It prepares a report on the ambiguous numbers in a file, along
with the possible numbers that may have resulted from area code
changes. With a few telephone calls, and the very minor manual
updating that needs to be done to pre-launder the list, the file
can then be submitted to the PhoneSeal Corrector for a 100% correction
result.
So in the
example above, the report comes up with the four numbers. Somebody
spends ten minutes calling the numbers and verifying which number
is correct for each conversion, and manually updates the file
for those four numbers.
Then, the
PreCleaned file is submitted to the PhoneSeal Area Code Corrector,
which will correct the rest of the file flawlessly.
Back
to Top
- Phone
Numbers
PhoneSeal recognizes most common phone number
formats. It recognizes a straight 10 digit number such as
2068828080, separating fields with dashes, e.g. 206-882-8080,
using parethesis around the area code (206)882-8080, putting
a country code at the front, e.g. +1-206-882-8080, and so
on.
If PhoneSeal is not recognizing your phone
numbers in your file or database, you have two options. You
can change your phone numbers into a format that PhoneSeal
recognizes, or you can use PhoneSeal Professional. With PhoneSeal
Professional, you have the ability to add your own phone number
formats to PhoneSeal, so PhoneSeal can understand your phone
numbers no matter what format they are in. PhoneSeal Professional
also has the ability to guess formats, which saves you time
if you have a lot of different formats in the same file.
- Dates
PhoneSeal uses Windows to translate dates
from text.
If PhoneSeal is having difficulty understanding
dates in your file, you might try changing the format in Windows.
To do this, go to the "Start" menu, select
"Settings", then "Control Panel", then the "Regional Settings"
icon, then click the tab that says "Date".
- ZIP
codes
PhoneSeal expects ZIP codes to be either
a 5-digit ZIP, such as 94052, a ZIP+4, such as 98052-0414
or a ZIP+4+2, 98052-0414-22.
Back
to Top
When run on a text file, PhoneSeal outputs all
the numbers in the input file, whether they are changed or not.
The output file is the same as the input file with the only difference
that the area codes are corrected for some of the numbers. The
phone numbers are kept in the same format they were found.
When run on a database, PhoneSeal updates the
number directly in the database, but it keeps the format the same.
PhoneSeal always keeps the data identical except for the change
in the area code.
Back to Top
If you are installing PhoneSeal on a Windows 95/98
system, it will require DCOM98 to install properly. This might
be at http://www.microsoft.com/com/dcom/dcom98/redis.asp.
If you are installing PhoneSeal on a Windows
NT or Windows 2000 machine, and you can't get past the message
box that says "Setup cannot continue because some system files
are out of date on your system. CLick OK if you would like setup
to update these files for you now. You will need to restart Windows
before you can run setup again. Click cancel to exit setup without
updating system files.", the reason is because PhoneSeal cannot
update a system DLL because the account you are logged in as does
not have sufficient priviledge to perform the installation. This
is not a fun problem to have because the only solution is trial
and error -- as Windows does not make it clear what the problem
is (it gives no indication what priviledge is missing or which
file it can't update on the reboot), and the account you are using
may appear to have all the required priviledges. Our suggestion
is to log in using a local machine account (not a network domain
account with local admin rights added). One user said that booting
in "Safe" mode helped. If you encounter this problem, please let
us know what exacty you do to fix it.
Back to Top
Go to your Control Panel and click Add/Remove
Programs.
Back to Top
Some programs, such as ACT!, have binary characters
in the text files, which prevents PhoneSeal from recognizing them
as text files. In many cases, these binary characters will appear
as a square in Notepad or Wordpad. So we suggest that you load
your files in Notepad or Wordpad and try deleting squares or other
non-text characters, and try your conversion again. Hopefully
your program will still be able to re-import the corrected file!
Open Database Connectivity is an industry-standard
interface for accessing databases. It is supported by Microsoft
Windows and PhoneSeal. PhoneSeal is designed to work with System
Data Source Names (System DSN's). However, explaining and supporting
ODBC is beyond the scope of this PhoneSeal support page. To help
you understand ODBC, we can only refer you to links on the Internet,
which we hope are useful -- if you have more comprehensive or
current links, please send them to us. We have no experience with
most ODBC complaint databases. We encourage you to look at the
documentation provided by your database vendor.
Information on ODBC:
Vendor-specific
information:
ODBC
compliant vendors:
Back
to Top
Database updates can fail for a variety of reasons.
Please check for the following possibilities:
- The
database is in a file with the read-only bit set
- The
database is in a file with access protected by NTFS file permissions
- The
database is protected by a security setting put in place by
the database administrator
- The
database is stored in a previous version's data format, and
has to be corrected to the current version
- The
database system requires regular maintenance
Back
to Top
- The file
is in binary format -- use WordPad to check to make sure the
file is stored as text
- Wrong delimiter
-- the colums are separated by a different character than what
you specified. Use WordPad to look at the file and see what
character is used to delimit the columns.
- Wrong column(s)
-- you told PhoneSeal to correct columns that don't contain
phone numbers. Columns are designated with letters, where A
is the first column, B is the second, and so on. When you get
to Z it goes to AA, then AB, AC, etc.
- The corrected
file already exists -- PhoneSeal should give an error message
for this. PhoneSeal writes the corrected numbers to a file with
"-corrected" added to the file name. So if you are correcting
a file called "phonenumbers.csv", then the output will be stored
as "phonenumbers-corrected.csv".
In addition, you can access Excel through its ODBC driver.
To do this, go to your control panel and click ODBC32. Click the "System DSN" tab. Click the "Add..." button. Select "Microsoft Excel Driver" and click "Finish". It should next ask you which version of Excel, which workbook you want to work with, what fields you want in the worksheet you selected and so on.
Once you have a data source set up in ODBC, you can use the ODBC option in PhoneSeal to access it. Just enter the data source name you used to create the data source in the ODBC setup.
Back
to Top
The reports that PhoneSeal generates are tab-separated values ascii text files. The checkbox in PhoneSeal determines whether PhoneSeal tries to use Excel instead of Notepad to display the results. If PhoneSeal is unable to run Excel, because Excel is not on the path or you installed it in a non-default location that PhoneSeal can't find, then that might explain why you are unable to see the results.
If this is the case, what you need to do is the following: After running PhoneSeal PreCleaner Professional, start up Excel, and open preclean.txt. This file will be located in C:\Program Files\PhoneSeal\Pro unless you installed PhoneSeal in another location. Errors will be in a file called errors.txt, and changes will be in a file called changes.txt.
Another solution: go into your system control panel and add the path to Excel to your system. This is controlled in the environment variables part of the control panel. Make sure the path goes all the way to the executable file Excel.exe. Then, you can use the checkbox that tells PhoneSeal to run Excel.
Another possibility is that you are not running PreCleaner. PhoneSeal only generates the ambiguous number report when you run PreCleaner. If you are only running Corrector, then PhoneSeal will never generate the ambiguous number reports.
PhoneSeal
Time Traveler has a "Date Bracketing" feature for handling dates
on files or databases.
The two dates
you enter are:
- The "Most
Recent All Good Date" -- the last time all the numbers
in the file or database were known to be working.
- The "Most
Recent Update Date" -- the last time any number in
the the file or database was changed.
What exactly
does PhoneSeal do with these two dates?
With the
first date, PhoneSeal simply discards any splits that occured
before that date. If your number was known to be good on January
1, 1997, for example, than a split on the same area code in 1995
would not apply to it.
With the
second date, PhoneSeal known that all subsequent splits apply
in chronological order. So if your number was not changed since
January 1, 1998, then a split in 1999 would apply to it. Then,
if that area code (plus exchange) split again in 2001,
the new area code from the 2001 split would apply to it. The resulting
number is not ambiguous in any way -- it is corrected to the new
code.
If a split
occurs between the two dates you give, ambiguities can result.
If every number in your file or database was known to be good
on January 1, 1997, and various entries have been updated up to
January 1, 1998, but none since then, then a split during 1997
may, or may not, be applicable.
It is important
to enter the correct dates here. Incorrect dates will result in
erroneous corrections, or too many numbers reported as ambiguous.
For the first
number, it is allowed to enter a date that is before area code
splits began (in 1990), which will cause PhoneSeal to consider
all splits up to the second date, and report all possible ambiguities.
Splits will be followed deterministically after the second date.
For the second
date, it is allowed to enter today's date, which will cause PhoneSeal
to consider all splits up to the present as potential ambiguities.
Entering
a date before 1990 for the first date and today's date for the
second date will cause PhoneSeal Professional to behave the same
as PhoneSeal Standard, which is not date-sensitive.
It is also
allowed to enter the same date for both dates. In this case, PhoneSeal
will treat every number in the file or database as if the date
of every number were known exactly. This tends to produce very
few ambiguities -- but should be done only if you are certain
of your file or database.
PhoneSeal
also has a date-per-record feature. If your file or database has
a date in each record, along with the phone numbers, you should
use that feature. It is much more accurate than entering "most
recent all good" dates and "most recent update date" for the entire
file or database. When using a date-per-record, PhoneSeal assumes
that the date is exact; that is, that it is both the date the
number was known to be working and the date the number was last
updated.
Back
to Top
If you're getting an error
message that says:
Error -2147217887: Multiple-Step OLE DB Operation generated errors. Check each OLE DB status value, if available. No work was done.
you may be able to fix it by upgrading your MDAC (Microsoft Data Access Components). This is available in the download section at microsoft.com.
Back
to Top
PhoneSeal accesses
ODBC through the ADO (ActiveX Data Objects) interface, and ADO has a 30 second timeout.
If you are having problems
with timeout errors, you should first try changing the ODBC timeout in your ODBC DSN (Data Source Name)
definition.
If you are still getting
timeout errors, you should try to simplify your data access:
- Index all your phone number and zip code fields, and
- access your tables directly, instead of through database views, if possible.
If you need to control the ADO timeout properties, you'll need to follow the following
procedure:
- Find the directory where PhoneSeal was installed (C:\Program
Files\PhoneSeal\Pro for example). This is the directory that contains
phoneseal.exe
- Create a file called phseal.ini in this directory. This should be a plain
text file.
- Add two lines specifying values for ADOConnectionTimeout and
ADOCommandTimeout. The values indicate the timeout period in seconds. For
example, if you wanted the timeout to be 300 seconds, your file would have
the two lines:
ADOConnectionTimeout=300
ADOCommandTimeout=300
PhoneSeal
reads the .ini file once when it starts up, so if you change the
settings, you will need to exit PhoneSeal and restart it. PhoneSeal does not
visually acknowledge reading the ini file. If you want to verify whether
PhoneSeal is processing the .ini file, add an invalid entry and PhoneSeal
should complain about it.
We've seen this error on a field whose name started with a numeric character.
Try renaming your field so that it starts with an alphabetic character.
If you are using PhoneSeal with
ODBC to update a database, and PhoneSeal PreCleaner works fine, but an error such as
Run-time error '-2147217900 (80040e14)'; [Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near '1'.
occurs when you run Corrector and PhoneSeal first attempts to perform an update, then you should try adding the following entry to phseal.ini:
EnableDatesInUpdateWhereClause=False
This will remove dates from the "where" clause of SQL update statements, which are the most common source of ODBC errors that occur only on updates.
This is because PhoneSeal uses your default date format (from the control panel) and your database system may not understand it. In addition, every database vendor formats dates differently.
Future versions of PhoneSeal will have a system for fully customizing date format strings.
If you need to know how to create phseal.ini, it is described in the support entry for ODBC Timeout Errors.
PhoneSeal should work without dates in the
"where" clause. The only situation where it matters is if you had the same number in your database twice, but it was
actually two phone numbers to two different people, one of which was issued before a split, and the other issued after
the split. If this happens, you have two records with the same number but with different dates, and the "update"
statement has to distinguish between them.
Your spam
filters are probably catching it. Make sure you can receive all email from the
phoneseal.com domain.
Got
a problem you can't solve with the information on this page?
E-mail support@phoneseal.com
or visit our contact page for more
contact options.
Back
to Top