Another Phone Number Translation

Here's another Phone Number Translation.
It's done in Formula Language so it's fast.
It basically takes anything entered into a phone number field and makes it look
(123) 456-7890
They can enter 123 456-7890 or 123.456.7890.
The formula using some functions with their optional parameters which I'll bet
you didn't know existed.

Marc Alumbaugh

REM "DSCValidatePhoneNum";
REM " V1.0 - 7/4/96";
REM " Intellectual Property of Data Solutions Corp.";

work := CP_CompPhone;

REM "If it is the way we want it then exit";
@Matches(work; "{(}{0-9}{0-9}{0-9}{)}-{0-9}{0-9}{0-9}-{0-9}{0-9}{0-9}{0-9}") |
work = "";

REM "Get the junk that is not numeric";
NotWanted := @Implode(@Explode(work; "0123456789"));

REM "Get rid of the junk that is not numeric & all spaces";
GoodNumber := @Implode(@Explode(work; NotWanted); "");

REM " If it isn\'t the correct length than leave it alone ";
@Length(GoodNumber) != 10;

REM "Now Format the Phone";
areacode := @Left(goodnumber; 3);
restphone := @Right(goodnumber; 7);
"(" + areacode + ")-" + @Left(restphone; 3) + "-" + @Right(restphone; 4)

This was first published in November 2000

Dig Deeper on Domino Resources - Part 2



Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:




  • iSeries tutorials's tutorials provide in-depth information on the iSeries. Our iSeries tutorials address areas you need to know about...

  • V6R1 upgrade planning checklist

    When upgrading to V6R1, make sure your software will be supported, your programs will function and the correct PTFs have been ...

  • Connecting multiple iSeries systems through DDM

    Working with databases over multiple iSeries systems can be simple when remotely connecting logical partitions with distributed ...