HandyShopper

HandyShopper works on Palm-based handheld computers.


Contents

Postcard-Ware
Disclaimer
HandyShopper User Group
Installation
Special Bonus
Features
Going Shopping
Ideas for Creative Use of HandyShopper
Desktop Companion Programs
HS2Convert Converter Tool
Future Features
Feedback


Postcard-Ware

HandyShopper is (and has always been) FREEWARE.

But if you like HandyShopper, please send me a postcard. My favorites are local or scenic cards. I've lost count, but you've sent thousands from all over the world. "Thank you" to everyone who has sent a postcard.

Please send postcards to:

Chris Antos
9649 174th Place NE
Redmond, WA 98052
USA

Disclaimer

This software is FREE and I cannot be responsible or liable for lost data or any other problems. If this is not acceptable to you, do not use HandyShopper!


HandyShopper User Group

Visit the HandyShopper User Group. The group was started on October 21, 2000 by enthusiastic users of HandyShopper. Here are just some of the things you can do when visiting the user group:

Beta versions also appear here sometimes before being released publicly at PalmGear.


Installation

Important: Do not delete or uninstall previous versions of HandyShopper before installing the new one; if you delete it, that tells the Palm OS to also erase all your data.

Here is how to install HandyShopper onto your handheld device:

  1. Use the Palm Install Tool to queue the HandyShop2.prc file for installation during the next HotSync operation.
  2. If you don't already have an icon set installed, use the Palm Install Tool to queue either the HS2Icons_Color.prc or HS2Icons_Mono.prc file for installation during the next HotSync operation (sample color icons, or sample monochrome icons, respectively).
  3. Put your handheld device in its cradle and press the HotSync button to transfer and install the files.
  4. After the HotSync, HandyShpr will show up in your Launcher's "Main" category (or in the "Unfiled" category if your device doesn't have OS 3.5 or higher).
  5. The first time you run HandyShopper, it will check to see if you have an older HandyShopper version 1.x on the device. If you do, it will ask if you want to import your data from that. (Or you can do it later, by using the menu).

If you were previously using any HandyShopper version 1.x, then be sure to import your data into the new version of HandyShopper before deleting the 1.x version from the device. (HandyShopper 2.x doesn't overwrite HandyShopper 1.x or its data, so if you'd like, you can safely have both of them on your device at the same time).

HandyShopper supports a collapsible Graffiti area on any Palm OS 5.3 or higher device, regardless of the screen resolution or size (if the device has a collapsible Graffiti area). Sony Clie devices with a collapsible Graffiti area also supported. The collapsible Graffiti area on other devices is not supported, and HandyShopper will behave as if the device has a normal Graffiti area.
Tungsten T3: The T3 is a Palm OS 5.2 device, not a 5.3 device, and it does not seem to correctly support the official PalmSource API for collapsible Graffiti areas. It is necessary to install a patch before HandyShopper can take full advantage of the collapsible Graffiti area on these devices. As of this writing, Palm has not produced an official patch, but you can download a temporary patch from Red Mercury.


Special Bonus

Peter Ong has donated the food icons (65 high resolution icons) from his M3 : HD Definitive Iconset Light to the HandyShopper user community. To take full advantage of these high quality, high resolution food icons you'll need to install both the M3-HS2-FoodIcons.prc icon set and the Icon Manager application. Use Icon Manager to copy the food icons into your regular HandyShopper icon set. These are high resolution icons, so if your device is a low resolution device, you can use the Conversions command in Icon Manager and bulk convert the icons into low resolution icons (the quality will suffer a bit, of course). Thanks, Peter!


Features

HandyShopper comes with very little documentation, but hopefully it doesn't need much documentation. Tap the "i" buttons for helpful Tips, or visit the HandyShopper User Group to find a user manual written by other enthusiastic HandyShopper users.

Here are a few of the many features of HandyShopper:

Tips:

One-handed operation while shopping:

Icons:

HandyShopper uses the same icon standard used by DateBk5 and Agendus (formerly known as Action Names). HandyShopper first looks for an icon set named HS2Icons, and uses icons from there if it exists. If this icon set is not found, HandyShopper looks for any compatible icon set (a 'Rsrc' type database with the creator id 'Actn', containing 10x9 icons). Note that once installed on the device, both the HS2Icons_Mono.prc and HS2Icons_Color.prc files are actually named HS2Icons.

HandyShopper icon associations are not affected by rearranging the icons in your icon set. You can easily customize your icon database using Icon Manager (written by yours truly) or dbIcon+.

If you are using DateBk4 or higher but still use DateBk3 style black and white icons, you'll find that DateBk4 and higher prefer to use the Agendus icon format instead (which can be color, grayscale, monochrome, high resolution, etc). There are only two solutions in that case -- you can either not install the HS2Icons file (and not use icons with HandyShopper), or you can upgrade from the DateBk3 style black and white icons. See the DateBk documentation for more information about DateBk icons.

Sample Icon Sets for Download:

Here are just a few of the icon sets that you can find on the internet, listed in alphabetical order by artist:

Expansion Cards:

HandyShopper supports storing databases on expansion cards, and finds databases in the /PALM/Programs/HandyShopper directory. To move a database to a card, go to the databases view (select the Databases... command from the DB menu) and then tap the dropdown arrow next to the database and select the Move to card command from the popup menu.

Note that the Find command only searches HandyShopper databases on the handheld, and skips databases on an expansion card, and HandyShopper does not support alarms for databases on an expansion card. Also, if the HandyShopper application itself is installed on an expansion card, then no alarms from any HandyShopper databases will work (this is due to limitations in the Palm OS).


Going Shopping

In general, working with HandyShopper follows a pattern like this:

  1. Add items to database (or, go the All view and find items from previous shopping trips, that you need this time).
  2. Select the Need view.
  3. Go shopping at one store.
  4. Check off items as you put them in your cart.
  5. Pay for the items.
  6. Use the Checkout command (on the menu) to reset the list for the next store (this tells HandyShopper you purchased the items you checked off, otherwise they'll still appear in the Total at the next store). Note, the Checkout command also deletes any completed items that are marked as Auto-delete.
  7. Go shopping at another store, and go back to step 4.

COUPONS: Check the 'Coupon' checkbox in the item's Details screen. Copy the item, using the 'Copy Item' command (under the 'Record' menu), and assign a negative price to the new copy. For instance if you have an item "Coke, 2ltr" and a coupon for 50 cents off, you could copy the item, and assign $-.50 as the price (this makes the Total command more accurate).


Ideas for Creative Use of HandyShopper

Included here are some example ideas contributed by users - share your ideas and databases at the HandyShopper User Group.

Aromatherapy - submitted by Claire Appleby

I use HandyShopper to record different blends of aromatherapy oils for different uses. My items are individual oils and I use the stores to represent different uses such as relaxation, alertness, fatigue, headache etc. I have the database set to record per-store prices and aisles, and I use the aisles to record the number of drops of each oil needed when making up a blend for a particular purpose. This means when I select a particular use from the stores list, HandyShopper shows which oils I need with the number of drops for each oil.

Book List - submitted by Craig Lawson

I mix together books that I want to buy with those I want to check out from a library. If I discover someone has checked out the book from the library, I make note of the call number so I can quickly locate it again either there or at another library.

[editor's note: and the Custom Text field is great for storing the author's name, too!]

Collections - submitted by Gretchen Cawthon

HandyShopper is excellent for keeping track of collections. Use the quantity field to keep track of amounts, and the price field for current values. Also, the 'stores' and 'category' fields are great for easy sorting.

Furniture Shopping - submitted Janet Hilsmier

We loaded Rooms into the Categories. It was much easier to walk around the store, plug in each table, couch or chair that we liked, the dimensions and the price. When we finally decided which ones we "needed", it was easier to make sure the sales agent charged us correctly. Later, we added our downpayment and interim payments as negative numbers, so that we knew what was owed by final delivery.

Gift Idea/Shopping List - submitted by Gretchen Cawthon

Set up your categories as to the type of gift (Christmas, Birthday, Baby Shower). Use the person's name in the 'store' field. As your friends and family hint at what they want for their special occasion, add it to the list and then check it off as you purchase it. I also input the price so I can add up what I have spent for each person. It is also great to have that list handy when you can't find an item they ask for at Christmas. Then after Christmas you can use the list for potential birthday gifts, just change the category for the item.

Home Chores List - submitted by Janet Hilsmier

We loaded all of the mundane dusting, mopping, vacuuming tasks and rooms, plus the semi-annual and annual tasks like changing batteries.

Home Improvement Projects

Each month of the year is a store. Categories included "Indoor", "Outdoor" and "Painting". Then, each project was loaded. We assigned the projects to months to help us schedule everything we want to do, within reason. (It is impossible to paint, till, stain, mulch, build and plant in one weekend!) It also helps us to keep focused on getting to some of those "someday I'd like..." projects.

Impulse Purchases - submitted by Chris Antos

If you find yourself buying things you later realize you don't need, try this. Create a dated list called "Impulse", and make the Price and Date columns visible. Whenever you see something new you want to buy, add it to the Impulse list and mark down how much it costs and when you saw it. Then walk away and don't buy the item - wait about 3 weeks. Every few weeks, look through your Impulse list and see if you still really think you need the items. If you still think those $199 fold-up sunglasses will make a significant difference in your life, then by all means go back and buy them. <wink> This technique has saved me more than $1000 over the past year. Another great thing about the Impulse list is you can actually see how much money you've prevented yourself from wasting.

Inventory - submitted by Chris Antos

HandyShopper is NOT designed for inventory! Inventory and Shopping are opposite concepts. Extremely simple inventories can be done with HandyShopper, but in general HandyShopper does not work well for inventory. Several inventory programs do exist for the Palm devices, so I recommend searching web sites to find them.

Karate Training - submitted by Philip Wright

After three years of training, I reached the higher ranks at my karate school. But I still didn't have a good way to keep track of all my combat techniques. HandyShopper solved that problem. I created a checklist, and assigned the karate session (Jan-Feb, Mar-Apr, etc.) to the Stores field, and the level (Beginning, Intermediate, Advanced) to the Categories field. Now all I have to do is put the title of each technique in the task list, and put the instructions for each technique in the Notes field of the tasks. Now it only takes me two seconds to find a technique, and one tap of the stylus to see the complete directions for the technique. And one of the coolest things is that when I'm preparing to test for my next belt, I can check off each technique as I master it, so that I know which ones I still need to practice.

Movies - submitted by Chris Antos

When you see a trailer for a movie you'd like to see, add it to your Movies database, along with the its upcoming release date. You can use the categories for "Theater", "Rent", "Buy VHS", "Buy DVD", etc. Attach a note to the item, with a description of the movie, in case you forget what the movie's about or who's playing in it.

Orders - submitted by Gilly Rosenthol

When I order something, I record the item and the date ordered. That way I can keep track of what packages I'm expecting and see how long it's been.

Packing List - submitted by Gretchen Cawthon

This one is obvious but can be fun to experiment with. I set mine up with categories first (clothing, toiletries, food, accessories, etc.) Then I put everyone in my family in the 'stores' field. As I added the items to pack, I assigned them to the proper person. For example, my husband and I both wear contacts, so I assigned 'contacts' to both of us. For items like socks and shoes, I assigned them to everyone. Now, if only my husband will be traveling, I change the store to his name and he then has a customized list of things he needs to pack.

Project task lists - submitted by Claire Appleby

As a freelance lecturer, a lot of my work involves going through a specific sequence of tasks in relation to a particular project. For example, if I'm planning a new course for a particular college I have certain tasks such as planning the overall content, then planning the individual sessions, delivering each session, marking assignments and so on. I use a store for each project. The items are the tasks. I use the aisle number to record the sequence that the tasks have to be carried out in, and I sort the database by aisle. I use price to record the number of hours that each task usually takes, and quantity to record the number of times it has to be repeated (for example, assignments might take half an hour each to mark, but I might have 60 of them). At the start of each project, I can go through and select the tasks I need (usually all of them, but not always). I can also enter the number of assignments etc where relevant. I can then use the Total command, and HandyShopper tells me the total hours needed to complete the project, and how many hours work I have done so far.

Reading List with Calculated Priorities - submitted by Claire Appleby

I read somewhere that if you have to get through an awful lot of reading, you can prioritise this as follows. You estimate the importance of the article or book by deciding how much you would be prepared to pay to read it. However, if you would pay the same to read a 20-page paper and a 200-page book, then your time is better spent reading the paper. So you calculate your priorities by dividing the price your willing to pay by the length of the book or paper.

HandyShopper does this very nicely as follows. The items are the books or articles. I use quantity to record the number of pages and aisle to record how much I would pay (in GBP) to read the book. The built-in calculator is invaluable for calculating value (aisle) divided by length (quantity), and I use the price column to store this value. The list is sorted in descending order on price so that the highest priority item comes out on top. I use the categories to distinguish between reading for work and for pleasure, and I use the stores to record books I've finished reading and books I've started but not finished (because I tend to have several things on the go at the same time).

Recipe Database - submitted by Gretchen Cawthon

This is extremely easy to build. Use the 'stores' list to create categories, such as meat dishes, pastas, seafood, sauces, appetizers, etc. Then use the actual categories function to make a more detailed sort - like crockpot, holiday, favorites, etc. Add the title of the recipe in the description field and attach a note with the recipe instructions. This is quite handy for keeping track of recipes found on the net (copy/paste from memopad) and also helpful for jotting down recipes on the go.

Remodelling a House - submitted by Maria Popoli

I'm using it to remodel our house!! The categories are rooms, exterior elements, substructures. The stores are subcontractors, our own elbow grease, or particular stores for required purchases. We redecorated our son's room in a weekend because we had everything ready to go like a kit - no trips to the hardware store. I've got another database for the landscaping, categories are: nursery for purchases, existing design, gardening chores pending, failures, and growers. Stores are locations within my yard. No wasted money at the nursery and a beautiful garden.

Restaurants - submitted by David Jacobs

I have created a restaurant list using the "Stores" filed for "Style" of food (Asian, Vegetarian, Seafood, etc). This allows restaurants to be categorised by multiple "Styles". The categories field could be used to denote locations and the priority field for quality rating. The price field could be used to give an average cost for a meal.

Shopping - submitted by Gretchen Cawthon

Some tips on setting up shopping lists...
Unit prices are important in getting the best value. Some items, like laundry detergent, come in various sizes. If you buy 100-oz laundry detergent at K-mart for $3.99 and 200-oz at the Dollar store for $4.99, the best price will show up as $3.99@K-Mart. That may be the low price, but not the best value. All you needed to know is that the best unit price was $.03/oz. Instead of having 10 different entries for the various sizes of laundry detergent, try one of these two methods. Create on entry for laundry detergent and make the unit field 'oz'. Then attach a note to the field and insert the unit price info there (I created a shortcut that will add the appropriate text and I just fill in the price). Another way is to create a 'store' called "Unit Price". For this store, insert the unit price for the item. Now when you tap details to see the best price, you will see what a good unit price is for comparison.

Software List - submitted by Rosemary Lewis

Under categories, I use Accessories - Software. Under Stores, I use Author, (Seller names I use), Demos, Freeware, In ROM, Not Purchased, Purchased, Removed Permanently and Shareware. Of course each product can appear in a number of "stores" but this gives me the ability to keep track of every program I have ever tried out. What happened to it, my comments on each in Notes, see cost as Demos move to Purchased and of course, the total amount of $$ spent on this project. I am VERY happy with this effort!

Training - submitted by Bruce Chappell

I thought you might be interested in how I use your HandyShopper program. I am a Emergency Medical Technician (EMT) (Part Time), and am responsible for training other EMTs in a hospital. Because of the dynamics of Emergency Medicine, I can't always start teaching a, then b, then c, etc. So I use Aisles to group things, such as Heart Monitors Aisle 5, then list the various things I have to cover, Alarm Volume, How to alter preset limits, etc.

Before HandyShopper it was a miracle if I covered everything I was suppose to. I never could remember if I taught this shift to this person, or another shift to another person. Now I can guaranty that everything is covered before I sign somebody off as having completed their orientation. Thanks for a Great Program.

Wine Database - submitted by David Jacobs

Create different "classes" of wines (Red, White, Fortified, Sparkling, etc) using the "Stores" field and categories of wines (Shiraz, Chardonay, etc) and assigning "ratings" using the "Priority" field and using the "Notes" field for comments.

...And many more creative possibilites exist!


Desktop Companion Programs

I'm not going to write an official HandyShopper desktop companion program, or a HotSync conduit. But other software authors can (and have) written third party desktop companion programs for HandyShopper databases, using the CSV/PDB converter (HS2Convert) that comes with HandyShopper. The HS2Convert program is only available for Windows.

You can find the desktop companion programs by going to PalmGear and searching for "HandyShopper" (one word).


HS2Convert Converter Tool

HandyShopper comes with a converter tool that can convert the .PDB database file to other formats, and can convert from .CSV format back into a .PDB database file that can be installed onto the handheld. The converter runs only on Microsoft Windows.

The converter tool is a "command line" utility program, and does not have any graphical user interface. To use it, you must open a Command Prompt window first. There is usually a shortcut for this on the Start -> Programs -> Accessories menu.

Converting from .PDB to .CSV:

  1. Find the .PDB file that you wish to convert. It is usually located in the "C:\Palm\\Backup" directory. The file name of the .PDB file will usually be the same as what you named the database on the handheld device, but may begin with a "HS2_" prefix. However, if the database was created with an older version of HandyShopper the prefix may be omitted.

  2. Run the following command to convert your .PDB database file into a .CSV file.

        hs2convert -c C:\Palm\Username\Backup\MyData.PDB NewFile

    Two files will be created in the current directory: NewFile.CSV contains the items from the database, and NewFile.TXT contains the stores and other information about the database.

    TIP: You can use the CD command in the Command Prompt to change the current directory. Run "cd /?" for more information.

  3. If you intend to make changes to the .CSV file on the PC and synchronize the changes back to the handheld device, DO NOT use the database on the handheld until you install the updated database onto your handheld (see below). The PC will overwrite any changes you make on your handheld during that time.

Converting from .CSV to .PDB:

  1. Run the following command to convert the .CSV file from above back into a .PDB file.

        hs2convert -p NewFile.CSV NewDatabase.PDB

    This reads both the NewFile.CSV and NewFile.TXT files and produces the NewDatabase.PDB file, which can be installed onto the handheld device. The NewDatabase.PDB file is created in the current directory unless a pathname is specified.

  2. After the converter finishes, you can install the new database onto the handheld device, using the Palm Install Tool. One way to install the database is to type "start ." to open a window that lists the files in the current directory. Find the NewDatabase.PDB file and double click on it to queue it for installation during the next HotSync.

Converting from .PDB to other formats:

The converter tool can also convert to XML, but cannot convert back from XML. To export XML, run the following command:

    hs2convert -x C:\Palm\Username\Backup\MyData.PDB XmlFile

For information about the converter tool, run "hs2convert /?".

For other programmers:

Try out the -i flag, which makes the converter use ID numbers for stores. This can make certain tasks (such as renaming a store) easier and higher performance.

Future Features

There are a lot of features on the wish list. Some of the high profile ones are listed below.


Feedback

The best place to send feedback or ask questions is the HandyShopper User Group.

You can e-mail me at chrisant@premier1.net, but due to the volume of e-mail I receive I may not respond to your question or comment. The HandyShopper User Group is the best place to ask questions, make suggestions or observations, and etc.