Perfect Patterns Help
(As of v2.23)
Contents
Getting the pattern data onto your computer.
- Finding the pattern files.
- Acceptable file formats.
Loading the patterns into Perfect Patterns.
Sifting the patterns.
- Setting your parameters.
- Parameter formats.
- Criteria definitions.
- Saving your settings.
- Starting your sift.
Viewing sift results.
The Calendar
The printable calendar.
Getting the pattern data onto your computer.
Finding the pattern files.
There may be a several ways to get the pattern data onto your computer:
- Atlas. Pilots may download pattern data from the Atlas web site. Look in the
bid materials section. There are lot's of files in several formats so it is not easy to find
the desired file. Since there are several formats, please be sure to read the
section about file formats. In general, you'll want to download a pattern file
(xxx.patt.xxx) not the bid package file. For example: MSP320FO.patts.zip
- Floppy disk. If you have a friend that has already obtained the file, you can get it
from them on a floppy disk.
- Radar. Flight Attendants may obtain their bid packages from the NWA
Radar web site (www.nwapeople.com). After signing into the website, choose the link for
Flight Attendant Communications. On that page you'll see a group of boxes that allow you
to specify your base and the type of material you are looking for. When you display the
list of available files, you may see a list of both *.pdf and *.txt files. Perfect Patterns
cannot read pdf files, only txt files. The problem is that if you left click on the link for
any file on the page, your browser will simply display the file rather than download
it to your computer. Perfect Patterns needs the file on your computer, not displayed in
your browser. In order to download the file, click on the link with your RIGHT
mouse button. You will then be able to use prompts to save the file to your computer.
Acceptable file formats.
- Text. A simple text file containing no formating. This type of file will contain only
one set of patterns. For pilots, all monthly patterns are contained in a single pattern.
For flight attendants, there will be several files available depending on the aircraft in
which you are interested. However, Perfect Patterns allows using more than one file
simultaneously so this does not present a problem.
- Zip. Perfect Patterns can read zipped files, however, the zipped file must be in a
text format. That is, it cannot contain any of the unacceptable formats listed below. The good
news is that zipped files from CompuServe contain only text files. The bad news is that this
is not the case for the Atlas web site so be certain you know what you are downloading.
The zipped file can contain a single file
or multiple files. If it contains more than one file, Perfect Patterns will read all included
files. This is probably your best option for two reasons. First, zipped files take up less
disk space. Second, for flight attendants, it lets you use multiple aircraft patterns without
needing to open multiple files.
Unacceptable file formats.
- Archived.
- PDF.
- SIT.
- Word Processor formats such as DOC or RTF.
Loading the patterns into Perfect Patterns.
Once you have the pattern file on your computer you need to tell Perfect Patterns which file
to use. To do this either select File... Open from the menu bar or click on the
button. When you do, a standard file open dialog box will open and allow
you to select a file from anywhere on your computer. If you want to use data from more
than one file, simply repeat the process as often as necessary. If the file you select is a
zipped file and it contains more than one pattern file, Perfect Patterns will read all
the contained files. Whenever you select a file
for use, Perfect Patterns will display the name of the file on the titlebar.
If for some reason you want to stop using the current data and start using another file,
either select File... Reset from the menu bar or click on the
button.
When you do, all data will be erased, all parameters will be set back to your default settings
and you can start over again by opening a new file.
Sifting the patterns.
Setting your parameters.

There are two steps involved in setting your parameters:
- Set your values. Enter your desired parameters into the available text boxes.
Be sure to see the next section about parameter formats. Failing to use the proper format
will result in incorrect results.
- Check the boxes of those parameters you wish to use. Once you have all the
parameters set, you need to check the checkbox for all items you wish to use. If the
checkbox is unchecked, Perfect Patterns will not use that parameter during its sift. This
makes it easy to select or deselect any items you wish to use or not use in order to tighten
or loosen your sift. Simply leave the values set the way you like them and then check or
uncheck the boxes as desired.
- Optional settings. You may use the Settings menu item to tailor Perfect Patterns
to your taste:
- Times. When you set a time of day parameter in Perfect Patterns such as takeoff time,
Perfect Patterns can treat this either as local time or base time. For example, if you want to
avoid getting up early in the morning and set an avoid takeoff times earlier than 0900, if you
set Perfect Patterns to use Local time, then it will look for no takeoff times before 0900
regardless of the time zone. However, if you set it to use Base times, then it would consider
0800 Central time to be the same as 0900 Eastern time.
- Colors. If you don't like the colors used to display the list of patterns found
you may use these menu items to choose your own colors.
Parameter formats.
There are several types of data that may be needed. This section describes the proper format
for each type.
- Times. Parameters requiring a time value, whether that be a time of day or a length
of time, need to be entered without a colon or period.
- For example, the following are all acceptable:
- The following formats would not be acceptable:
- 11:15 (contains a colon)
- 9.00 (contains a period)
- Dates. Dates need to be entered as a 2 digit number. If you want to enter
more than one date, they need to separated by exactly one space.
- For example, the following are acceptable:
- The following would not be acceptable:
- 1 (uses one digit rather than two)
- 012325 (no space between dates)
- Numeric. With one exception, numbers should all be integers
and need not contain leading edge zeros. Unlike dates, you may not enter more than one
value. NOTE: See special cases below.
- For example, the following are acceptable:
- The following are not acceptable:
- 02 3 13 (more than one value entered)
- 1.3 (uses a decimal)
- City Codes. City codes should be standard 3 letter codes. Codes
may be entered in either uppercase or lowercase. If you wish to use more than one city code
be sure to separate the codes by a single space. NOTE: See special cases below.
- For example, the following are all acceptable:
- The following are not acceptable:
- kord (uses 4 characters)
- mdwlgatpa (no space between city codes)
- Aircraft Codes. Aircraft codes should be entered just using three
digit codes just as they appear on your patterns. As with other parameters, if you want to
use more than one aircraft code be sure to separate them with a single space. It does not
matter whether you use upper or lower case.
- For example, the following are all acceptable:
- The following are not acceptable:
- 747-400 (not a 3 digit aircraft code)
- 727D10D95 (no space between aircraft codes)
- Special Cases.
- Good Layover City. Sometimes you just want a long layover sometime
during your trip. Therefore, for the Good Layover city there are two special city codes you can
use: "ANY" or "***". Using either of these city codes (without the quotes) will allow to find
a layover in any city that is at least as long as the value you set in the "...if at least(time)"
field.
- Meals/day. This field allows setting a decimal value such as 1.3
Criteria definitions.
In order to get the results you want, you need to know how
Perfect Patterns handles each criteria.
- Times in general. All times are local times, not times in your base.
- Earliest TRIP start(time). This is the first takeoff time for the trip, not the report
time.
- Latest TRIP end(time). This is the last landing time for the trip, not the release
time.
- Earliest TAKEOFF(time). This is the earliest takeoff for any day of the trip.
- ...except the last day. If you use the Earliest TAKEOFF(time) criteria, and you
also check this item, Perfect Patterns will ignore takeoff times on the last day of
the trip.
- Latest LANDING(time). The latest landing for any day of the trip. Landings between
midnight and 0500 are considered to be late landings. Think of landing at 0200 as 2600 (2 hours
later than 2400).
- Longest DUTY PERIOD(time). The longest duty period for any day of the trip. This
value is read directly from the pattern.
- Shortest LAYOVER(time). Layover time is defined as off duty time.
It is also the shortest layover for any day of the trip. In order to be considered a layover
the ground time must be at least 9:45.
- Longest LAYOVER(time). Like the previous item, this is off duty
time and is for any day of the trip. Here too, the ground time must be at least 9:45 to
be considered.
- Longest GROUND time(time). The longest ground time for any day of the trip. If the
ground time is less than 10:15, it will be considered for this criteria.
- Shortest GROUND time(time). This is the shortest ground time for any day of the
trip.
- Longest FLIGHT(time). The longest flight time for any day of the trip.
- Shortest FLIGHT(time). The shortest flight for any day of the trip.
- Avoid LAYOVER in(city). The trip may not contain a layover in specified cities. You
may, however, land there. You may list more than one city code.
- Avoid LANDING in(city). You may list more than one city code and the trip may not
even land in any of the specified cities.
- Only ILLEGALS. Perfect Patterns will only list trips that it considers to
be an illegal. A trip is considered to be an illegal if it:
- Is a 2 day trip and...
- Has no more than one leg each day and...
- The first takeoff of the trip is after 20:00 and...
- The last landing of the trip is before 10:00 and...
- It does not contain a redeye and...
- The layover is less than 11:00
- Avoid ILLEGALS. Perfect Patterns will illiminate illegals from consideration. See
the previous item to see what is considered an illegal.
- Maximum REDEYES(#). Enter a numeric value. A flight is considered to be a
redeye if it:
- Departs after 21:00 and...
- It lands after 3:00 and...
- The takeoff time is more than 2 hours later than the landing time.
- Or it departs before 4:00.
- Shortest TRIP(days). Enter a numeric value. Trip length is determined by reading the
value directly from the pattern. Trips must be at least as long as the value specified.
- Longest TRIP(days). Enter a numeric value. As above, trip length is read directly
from the pattern. Trips must be this length or shorter to be considered.
- Good LAYOVER(city). You may enter more than one city code. The trip must contain
a layover in at least one of the cities at least one time. This item may be combined with the
next two items to be a bit more restrictive if you wish.
- ...if at least(time). If you only want your good layovers when they are at least a
certain length of time, use this item to enter a minimum layover length. If this item is
checked, the trip must contain at least one layover in one of the specified cities and it must
be at least the length specified by this item.
- ...if on (date). If you only consider the layover to be good if it occurs on a specific date, use
this option to specify a date or dates. The date should be the date you arrive at the layover. There is one limitation
to Perfect Pattern's ability to meet this parameter; it does not look across the end of the month. For example, if there
is a trip on January 31st that has the desired layover on February 2nd, Perfect Patterns will ...not... find that pattern.
- Start TRIP on. You may use this item to specify the day of the week that you want to
start your trip. The trip may, however, start on other days as well so be careful how you bid.
- Departure DATE(date). You may enter more than one date. Be sure to use the proper
format for dates. Trips must start on at least one of the dates specified. It may also start
on other dates so be careful how you bid.
- Maximum LEGS/DAY. Enter a numeric value. This is the most legs on any day of the
trip. All days of the trip must fly this many legs or less.
- Minimum pattern VALUE(time). Use this item if you want a trip that pays at least a
minimum amount.
- Maximum pattern VALUE(time). Selected trips may not pay more than the specified
value.
- Maximum actual fly(time). This is not pay. This is actual scheduled hard fly.
- Minimum PAY/DAY(time). Perfect Patterns reads the pattern value and trip length
from the pattern. It divides pattern value by trip length to arrive at this value. Fractional
minutes are ignored. For example, a 2 day trip that pays 1013 would be considered to pay
506/day.
- Desired AIRCRAFT. You may list more than one aircraft type. To be selected, a trip
must include at least one flight on this type aircraft. It may contain other aircraft
as well.
- Avoid AIRCRAFT. You may list more than one aircraft type. The trip must not use
this aircraft type even once during the trip.
- Maximum MEALS/day(average). This is the only numeric value that allows a decimal
value (for example 1.3). Perfect Patterns counts the number of meals during the trip and
divides by the trip length. For example, if a 4 day trip has 10 legs, but only serves 5 meals,
this would be a value of 1.25 meals/day.
- Start/end with DEADHEAD to/from. Enter a city code. The trip must either start with
a deadhead to that city or end with a deadhead from that city.
- Avoid DEADHEAD The trip may not include a deadhead anywhere in the pattern. It does
not know the difference between a must deadhead and a deadhead work.
Saving your settings.
You don't want to have to set your normal search criteria
every month, so Perfect Patterns allows you to save them the way you want. Set all the
criteria values the way you want and save them. Perfect Patterns will use those settings as
your default values. When you start Perfect Patterns or when you reset Perfect Patterns, all
your values will return to the values you've saved. Saved settings include the values you set,
which checkboxes have been checked, and the folder from which you opened the pattern file. To
save your settings, click on the
button or use the menu item
File... Save Settings.
Starting your sift.
Once you have loaded the pattern data, set your parameter values,
and checked the checkboxes; it's time to start the sift. To start your sift either use the
menu item File... Sort or click on the
button. The button will
not be visible and the menu item will be grayed until you select a pattern file to use. When
you perform a sift, only those patterns that meet all your criteria will be selected. If even
one criteria is not met, the pattern will not be selected.
Updating Perfect Patterns.
Updates are FREE. To update to the latest version:
- go to: www.bobpatch.8m.com and follow the links to find the update file.
- Download and save the zipped file to your computer.
- After you have downloaded the file, start Perfect Patterns.
- On the File menu you'll find a menu item for Update. Select that item.
- A file open dialog box will open. Find and select the update file you just saved.
- Perfect Patterns will unzip the file and replace your old files with the new versions.
- Shutdown Perfect Patterns. The next time you start Perfect Patterns it will be the new version.
Viewing sift results.
Qualifying patterns.
The area with a yellow background in the middle
of the window contains a list of patterns that meet all of your criteria. You may
select individual pattern numbers by clicking on the number.
Show selected button.
When you click on the Show selected button,
Perfect Patterns will display pattern details for all patterns you selected by clicking on them.
Show all button.
If you click on the Show all button, Perfect Patterns will
display the details of all patterns in the list whether you have selected them or not.
Eliminated patterns button.
Click on the Eliminated patterns button
and Perfect Patterns will display a list of patterns which were eliminated from consideration
for each reason. This can actually be useful for certain types of searches. For example, if
you prefer to start your trip early in the morning, you can set the Earliest TRIP start(time)
parameter to some value such as 0900. When you perform the sift, any trip that starts before
0900 will be eliminated from consideration. You can then use this button to find the pattern
number of those trips.
The Calendar.

Using the calendar.
To display the calendar, click on the
button on the main screen. This
button will not be visible until you have loaded pattern data. Once the calendar is visible
be sure to ensure you have the desired month selected. Perfect Patterns attempts to determine the correct
month but will occasionally make a mistake. To change
months, use the
or
buttons.
Enter any carry-in, vacation, or training value you want included in your calculations. Use
the same time data format as the main screen. Enter pattern numbers in the
text box for the desired date. You may also enter non-numeric notes in the pattern number
boxes. For example, if you want to remember that there is a birthday you want to be home for
you could enter the word birthday on a date rather than a pattern number.
When you are ready to perform calculations, click on the
button. Perfect Patterns will perform several operations:
- Check to ensure the patterns you have entered actually operate on the dates you used.
If they do not, Perfect Patterns will let you know.
- Sum up the total value of carry-in, vacation, training, and the current month value of
each trip.
- Check for legalities you have selected on the menu:
- 30 in 7 (or optionally 29 in 7) for each domestic flight.
- 32 in 7 (or optionally 31 in 7)for each international flight (2 pilot rules).
- 24 off in 7. In reality, Perfect Patterns currently checks for 2530 off anytime during
the 7 day period. This covers a worst case situation where you finish a day with an international
flight that requires customs (30 minute after block in release time). Therefore, there
may be times when Perfect Patterns warns you to check for 24 off when in fact you are
legal by up to 15 minutes.
- 9 hours off duty. In reality, Perfect Patterns checks for 1030 between flights. Again,
this is to cover worst case situations involving international flying and the later release
time. Therefore, again, there may be times when Perfect Patterns warns you about the
rest problem when in fact you are legal by as much as 45 minutes. This would be the case of
ending one day with a domestic flight and starting the next day with a deadhead flight (30
minute report time).
If you want to build a different schedule, you may quickly erase all pattern data by clicking
on the
reset button. Reset will not delete your non-numeric notes
from the calendar. The only way to delete these notes is to do so manually or to close the
calendar and then open it again from the main screen.
You may wish to save a schedule. To do so, click on the
button. Perfect
Patterns will save all data to a file on your computer. Next time you use Perfect Patterns to
view this month, the saved schedule will be loaded into the calendar. If this schedule operates
during the last 7 days of the month, when you start working with the following month, Perfect
Patterns will do two things:
- It will use data from the saved month to check for legalities at the beginning of the month.
- If the saved schedule contained carry-out flying, that flying will be shown in the following month.
Available Menu items.
File...
- Check Now. This does the same thing as the
button.
- Print to browser. The same as clicking on the
button.
- Reset. The same as clicking on the
button.
- Save. The same as the
button.
- Exit. Closes the calendar window.
Settings...
- Legality checking
- 30/32 in 7 - 2 pilot. If this item is checked, Perfect Patterns will check for 30 in 7 (domestic)
and 32 in 7 (international) limitations.
- 29/31 in 7 - 2 pilot. Because NWA builds pilot schedules with these limitations, if you check this item
Perfect Patterns will use these values rather than FAA limitations.
- 24 off in 7. If you check this item Perfect Patterns will check for 24 off in 7. In reality it checks
for 2530 from landing to takeoff. See information above for slightly more detail.
- 1030 off between trips. Just as it says, check this item to check for 1030 off between trips.
- Printable Calendar
- Editable lines of text. You may choose to have Perfect Patterns include from 0 to 4 lines of editable text
on each date in the printable calendar.
- Blank lines after calendar. You may choose to have Perfect Patterns add from 0 to 4 blank lines after the
printable calendar before it starts printing patterns.
- Calendar and Patterns. If you have Perfect Patterns print both the calendar and its patterns, you may
choose to have it print the calendar and patterns on separate pages.
- Just the Calendar / Just the Patterns. You may have the printable calendar include either just the
calendar or just the patterns.
- Adjust Dates. Because pilot and FA month definitions are not always the same, and NWA changes the month
definitions from year to year, you may use this item to adjust the month definition to match the current
values being used by NWA.
Calendar field descriptions.
Carry-In value: Manually enter the value of any carry-in trip
you may have. Use the same time format as used on the main screen.
Vacation value: Manually enter the value of any vacation you
may have. Use the same time format as used on the main screen.
Training value: Manually enter the value of any training credit
you wish to claim. If you are taking training for pay but no credit, do not enter the value
of that training unless you just want to see what the total pay will be. If you do so, you
will have to manually decide if the credit value is within allowable limits.
Schedule value: Schedule value is the calculated value of all trips
you enter into the calendar (less carry-out), plus carry-in, vacation, and training values you
have entered.
Individual date display.

Date.
The calendar date is displayed in the upper left corner of
each day of the month.
Pattern number.
Click on or tab to the date you desire, then
manually enter the pattern number in the text box. You may also enter non-numeric notes in
this box. For example, if you need a day off for a birthday, enter a note such as Bday or
the name of the individual. If you try to include a pattern that flys on that date Perfect
Patterns will display a Conflict message.
Layover city / trip credit.
If this is not the last day of the
trip, Perfect Patterns will display the layover city on the second line of the date. If it is
the first day of the trip, Perfect Patterns will also display 'CR=' (2832 in the example)
followed by the total trip
credit value. This includes any carry-out.
Duty information.
On the third line of each day of the trip, Perfect Patterns
displays the first takeoff of the day (1830 in the example), the last landing of the day
(2356 in the example), and the number of legs (3 in the example) flown that day. All times are
displayed in the time zone of your base.
Phone number.
If this is not the last day of the trip, the layover
phone number is displayed on the bottom line of the date. If you have Perfect Patterns check
for legalities, any problems it finds will replace the phone number with a white on red warning.
The printable calendar.
If you like, you may print a copy of your calendar. To do so, click on the
button. When you do, Perfect Patterns will create an HTML file that
contains a copy of your calendar and displays it with your browser. The file may also contain
pattern details for all trips in the calendar. You may then use your browser to print the
file. Here is a sample portion of a printable calendar:
October 2001
Please note that even in this help file, if you pass your mouse pointer over the days of the
month, it will occasionally change to an I-beam. That's because each day of the month contains
up to three text boxes that you can edit. The text boxes are in the bottom half of each day but the
borders have been removed so they aren't obvious. When the mousepointer changes to an I-beam,
click on the screen and a cursor will appear. You may then enter your own text before printing.
Once you have a cursor in one of the text boxes, you may move to the next text box by pressing
the Tab key on your keyboard. The number of editable text boxes on each date depends on the
value you set on the calendar Settings menu.
If you like, you may use the calendar Settings menu to adjust the number of editable text boxes
as well as the number of blanks lines that are displayed after the printable calendar.
You have three other options on the Settings menu that allow you to control what you print.
You may choose to have Perfect Patterns print just the Calendar, just the pattern details, or
both. If you choose both, and then have your browser actually print the page on your printer,
Perfect Patterns designs the page so that there will be a page break between the calendar
and the pattern details.
However, because the pattern details contain
lines of text that are very long, you will most likely need to set your browser to small text or
change the orientation of the paper. If you don't, the hotel phone number probably won't fit
on the paper.