Sunday, May 24, 2009
RoloFlex PRO 2009 based on VDF 15.0
RoloFlex Pro 2009 contains upgrades for virtually ALL the suggestions we have had for RoloFlex:
New Features Available Today:
========================
* Import EMail Contacts into RoloFlex from Outlook, GMail, Yahoo, AOL, etc.
* Birthdays of People entry: and reminders
* Customizable categories for attributes [ Source, Category, Rep, Status are all RENAMABLE now ]
* Default the values of the attribues [ Source, Category, Rep, Status ] to make data entry faster
* Default the CITY, STATE, POSTAL, etc.
* Allow PHOTOS of people to be any size .JPG, etc. image (not just small bitmaps)
* Create your OWN Call History Contact Types [ PHONE, MAIL, etc. ]
* Date of Last Contact automatically saved.
* Reports on CONTACT ACTIVITY available.
ALSO: There are many small improvements, touchups, and features such as Microsoft Office MailMerge.
Here is the VIDEO INTRO on RoloFlex PRO : click this link to play the Rolo* Pro Video: Click For RoloFlex2009 Video
As a RoloFlex user, you know that the software is highly effective, reliable, and polished: This is a fantastic new release, packed with features.
All RoloFlex Users will receive an upgrade offer within 30 days.
Regards,
Peter A Donovan
Applause Software of Boston, MA USA
Monday, August 11, 2008
OOPS Proper: What's an obtainable goal for centralized code in Visual DataFlex?


Visual DataFlex - Organization Foundation

- - Workspace
- - Project
- - Layers
- - AppHtml - .asp code and supporting images plus cascading style sheets, etc.
- - AppSrc - windows source code
- - Bitmaps - images
- - Data
- - DDSrc - data dictionary class layers and table definitions
- - Help (blank)
- - IDESrc - vdf class information
- - Programs - executables and workspace definition file plus debugging tracer code
- - The Desktop is the name for anything outside the inner containers
- - The Desktop contains an application object which defines the paths and behaviors associated with the application.
- - The Desktop contains: the MAIN panel, the CodeJock skinning, and possbily a Login Panel?
MAIN: ====================================
- The Main is a SDI panel which functions as a main container object for the application.
- The Main contains the MENU
- The Main contains the CLIENT_AREA : the container for interactive modules/objects.
APPCLIENT_AREA:==============================
The APPclient_area is the working ground of all major components of your system.
It contains:
- Data Entry Forms
- Reports
- Selection Lookup Lists
- Modal Dialogs
- Business Process Objects
- Resources such as methods and classes
All Together, the workspace, as described, is designed to let delegation, encapsulation, and polymorphism happen within the context that the modules and sub_objects are arranged.
All Together, it looks like the picture above: click on image for larger view!
Regards,
Peter A Donovan, Applause Software
http://www.applausesoftware.com/
Tuesday, July 29, 2008
DOS to Windows anyone?
What advantages does a DOS to Windows Conversion hold, and why should I fix what isn’t broken?
The title and subtitle indicates corporate thinking as I have heard it, from many of the clients I know who have a DOS product fueling their company’s IT needs. The fact of the matter is that there is apprehension to move from a proven software platform. So why invest?
“The most important development in computer technology since the IBM PC”
What was this magazine cover article describing? Not a DOS to windows move! It was describing the onset and implementation of OOPS programming technology that I glanced at while marking time in a company’s waiting room many years ago! More important than nice windows interfaces and gui screen design! The fact is, that both DOS and Windows can be programmed with “Object Oriented Programming Style” but the odds that your DOS program has this structure is very low. Here’s my spin on the top 10 ways this affects your life:
1. Spaghetti Code VS OOPS:
The older style of dos programming has become known as “spaghetti code” when seen in contrast to oops. The basic structure, layout, and philosophy of coding software changed in a wave of approval that is now standard with every modern programming language.
2. Centralized Coding:
The new style of programming impacts your cost to adjust business rules in a huge cost savings factor. The cost savings come mostly by being able to release new versions without unwanted side effects, and also in terms of IT time to create, test, and deploy.
3. Don’t Fix it if it isn’t broke!:
This stand on computer technology was caused by spaghetti code! With “spaghetti code”/DOS standard technology, a change in business rules was feared because it generally caused an upheaval in operations. With DOS standard technology, your system is comprised of hundreds of individual standalone executables running from a menu structure where each of the programs contains duplicate code to perform similar functions along with its look and feel individually set.
4. Training:
Compare the training necessary to learn the function keys that operate DOS with a simple OOPS menu (generally regarded as a windows menu, but also available in dos) where the function you want to perform “enter payments” is listed from a dropdown menu instead of “doing 4-2-5-7 as my first job in the morning”. A standard oops interface includes a FILE/SAVE option along with standard Microsoft keys that are known to many users, and once trained in them apply to “all windows and web products” – not an exercise in teaching company defined keystrokes!
5. Standardization:
New technology standardizes the look and feel of your individual modules inside one (or just a few) programs, not only from the “windows look” but in the way that the business rules apply such as;
· Whether the company name of customers is labeled “Customer Name:” or “Client:” or “Name:”.
· Whether the company name of customers is “required”, or “capslock”, or “able to be changed by the user”.
· Whether the “Apply Finance Charges” option accepts only a Y/N value and whether the value for a new customer is defaulted to “Y” or not… and how!
· Whether one can delete a payment or not!
· Whether these kind of options must be re-coded for every module or not!
6. Combining Similar Functionality:
One of the most visible changes of a conversion to oops takes similar DOS executables such as “Enter Sales Order”, “Change Sales Order”, “Delete Sales Order”, etc. and moves them into one program. The ability to do this is the power of oops centralized coding and new windows technology which just simply outperforms DOS technology and spaghetti code.
7. Transaction Control:
One of the most basic data related improvements introduced into database technology since most DOS programs were written is transaction control, where “half baked” transactions that partially succeed, leaving a cleanup job for IT are totally eliminated.
8. Speed:
It is true that DOS speed is unmatched by windows technology. It’s not true that this is a significant advantage considering that the reason for dos speed is partially that the transactions do not flow thru centralized business rules to perform their database actions, but simply “write to disk” directly!
9. Maintenance:
Once your system is retrofitted to use oops programming style and structure, changing a business rule such as the way a sales order is calculated is a matter of changing the business layer rule in one spot, instead of updating “sales order entry”, “change sales orders”, “print unshipped orders”, and “update order as delivered”. The tongue in cheek saying for this amazing new technology is; “One changes the business rule in just one spot, and the resulting code is either perfect system wide, or wrong system wide!”.
10. Investing in Technology:
The time to invest in a DOS to windows conversion is overdue. If you’ve waited for the “wrinkles to smooth”, the “bugs to be fixed”, or determined in the past that the “investment” wasn’t worth the result, then I believe you are on the brink of extinction, because the software engineers that understand BOTH the dos and windows technology (and hence the ability to render a modern version from the old true code) are on the verge of retirement! If you wait, it’s a total rewrite to face.
Summary:
These are my top ten reasons to consider a DOS to Windows conversion, and if you started with a goal to port some of your functionality to the web, please consider the windows conversion a half-step there, because most platforms/languages have an extension of the business rule layer that is applicable to the web, or usable by a webapp so that part of your cost is a move closer to internet presence, whether it be customer data sharing, order entry, part availability, or simply customer and prospect information gathering.
About the Author:
By: Peter A Donovan
Applause Software of Boston, USA http://www.applausesoftware.com/
Member in good standing of the NEDC Programming Group: http://www.nedataflex.com/
Peter started his IT career as a combined sales executive/custom application developer the year following the release of the IBM PC. After similar corporate positions, where he was responsible for both Sales and Programming responsibilities, he obtained a position with a software distributor/authorized factory technical service center, where he excelled in custom application development for many different industrial and commercial markets and also travelled throughout the USA, Canada, Europe, and Africa training IT staffs in correct implementation of OOPS foundation coding technology and data dictionary technology.
Currently an independent IT consultant specializing in database software, Peter is actively involved in bidding on new challenges, maintaining a customer base, and publishing a freeware database contact manager “rolodex style” called RoloFLEX as a showpiece for his business.
www.RoloFlex.Biz
Thursday, July 24, 2008
Visual DataFlex Class~ Instruction via Internet
*Highly Competitive with Data Access Rates!
"The wide open possiblities of coding techniques can be explained in conceptual terms so that you code to form a solid foundation for your application based on correct OOPS programming concepts."
Internet Instruction Benefits:
"a 10-20 hour course @ $80 per hour using your application will cover all of the topics of a classroom environment without the travel, hotel, and inconvenience and produce usable and functional code for you to implement at your company and use as a reference".
"GoToMyPC, PCAnywhere, VNC, or other communication software puts us on the same desktop together, while we discuss the challenges you are facing and decide upon the most useful tools available to use, and the best OOPS techniques to use to accomplish your goal."
Global Internet Instruction:
Applause Software can offer voiceover communication while we codevelop your application thru instruction: please see: http://www.skype.com/ which allows free communication from Applause to you with the use of a headset with microphone.
Kindly reach Peter A Donovan at http://www.applausesoftware.com/ for further details!
Container Technology in Visual DataFlex
Procedure Item_Change integer iFromItem integer iToItem returns integer
Integer iRetVal
Forward Get Msg_Item_Change iFromItem iToItem to iRetVal
If (Current_Col(Self) = 2) Begin
Send Request_Save of oProdLine_DD
End
Procedure_Return iRetVal
End_Procedure
What came of the conversation we had was that the "Send Request_Save" actually (and unintentionally) avoided the container technology of Visual DataFlex so that validation, the confirm message, and the ability to augment these functions in the container were completely misdirected!
Here's what happens when a Request_Save is sent by normal means (i.e. clicking the save button, using the save key, changing a row in a dbgrid, etc):
- The container runs request_validate of the server ddo and validates the datadictionary class rules upon the data. Upon failing, the save is aborted, a message about the error is sent to the user, and the focus attempts to go directly to the window or cell that doesn't pass validation. Upon success, the next step occurs.
- The container then runs the function named in the verify_save_msg property handle. "Would you like to save?", or a custom message if you have programmed it. Upon a NO answer, the save is aborted and the focus returns to the object or cell in the focus tree. Upon a YES answer, the save cascade of messages continues.
- The container then asks the DDO (server) to save. Upon any error, all changes are rolled back and the focus returns to the object/cell in the focus tree.
- Then, the container (if it's not a data aware grid or list) clears the buffer and the ddo record attached to it.
- Then, the container (if it's not a data aware grid or list) sends the message "beginning_of_panel" (augmentable) which determines the first focusable object on the form/view and gives the focus to it.
- DONE
So, as many are aware, when you take control of the save mechanism to do it manually, you should do the following steps:
- Request the ddo validation to a boolean: Get Request_Validate of oProdLine_DD to bCancel.
- Ask or confirm the save: Get Confirm "Would you like to save?" to bCancel
- Send the save command: Send Request_Save of oProdLine_DD
- Upon success, clear the record: If (Not(Err)) Send Clear of oProdLine_DD
- Move the focus: Send Beginning_Of_Panel
So, in summary, the container technology has 5 main steps to it (actually six!). Prior to any of the five actions, it asks the server DDO if there are any changes to save! If there are no changes to save, then none of the above five steps ever execute.
Many are familiar with the Save cascade of messages from creating, backout, update, etc. but the container cascade of messages/methods is also important to realize prior to the save cascade ever occuring.
Posted by:
Peter A Donovan
Thursday, May 15, 2008
Uniform Rental Service Employee Paid No Contract
The author Peter A Donovan is not affiliated with any unform rental company now, and was previously employed in the industry for 12 years negotiating rental contracts and speaks from this experience.
For the sake of mathematics, let's assume the ABC Manufacturing Company has 10 employees who pay and contract for uniform rental service, and that ABC will not payroll deduct or manage uniform service for unnamed reasons which could include overhead of management time.
What impact does this have on quality of uniforms, price, and the selection of a uniform rental firm?
To understand, you need to be "in the head" of a uniform rental company.
In a normal situation, where ABC negotiates and signs a contract, here's what happens. The uniform rental plant bidding for the business does this:
Each employee gets an inventory of 11 uniforms: 5 in the locker for M-F, 5 dirty in the plant being cleaned from last week, and 1 on the back of the employee, a "swing" garment.
Uniforms cost money. Let's just say each uniform outfit costs $75, and with 11 to purchase, that comes to $825 - not a trivial amount. They "lay it on the line" with a 3 or 5 year contract at $14.00 per week coming in per employee and give new garments to begin service. Math please! That comes to an income of 14x52 weeks = $728 per year. There is cleaning, employees to pay, trucks to maintain, and gas prices too. The normal new uniform contract takes about 1/2 the contract amount to break even. Let's not even go to "value of money over time". The uniform rental plant is in the business of long term profit and when you renew your contract for another 3 years, there's no huge overhead so there is finally some profit at the end of the tunnel.
Now, when ABC refuses to sign a contract (employees cannot) what does this do?
You have to be the uniform company on this one.
First, let's talk about the "stock room" of uniform rental plants. Every plant has a stock room full of used garments that they decide are good enough to rent but used, so they use them a replacement garments when regular uniforms are destroyed and for employees added to a contract during the contract period. When you have a sizeable stock room bulging with used uniforms, you can go after employee paid no contract accounts. $14 per week per employee still and used uniforms. Wait.
Who has uniform stock rooms bulging? When a uniform company has customers that end contracts, all the uniforms are returned to them. When a uniform company has a low quality control standard for used garments and retains all rather than RAN "replace as needed" you get the perfect mix.
If your customers are happy and don't leave, PLUS you have a high quality RAN system, you just can't bid for the ABC account, can you?
So, the impact of ABC's non-involvement does this:
1. The uniform vendor will be of the type mentioned above most likely.
2. The employees get used and pay for new.
3. AND they impact the image of the ABC company when visitors arrive.
This article is written expressly for reading by the owner of ABC, whomever you may be.
Sincerely,
Peter A Donovan
Applause Software
http://www.applausesoftware.com/
Monday, May 05, 2008
Uniform & Linen Rental Plant Software Launched

A new software product for commercial textile rental plants (uniform & linen rental) will be launched this week from Applause Software of Boston.
Created in 20066, coming to market now, is RoloFlex UL.
A Sales and Marketing contact manager featuring custom proposal generator, email blaster, document management and scanning, market share analysis, targeted lead generation, and salesrep activity monitor, RoloFlex UL will be launched this week with a nationwide telemarketing campaign.
Based on a Visual DataFlex front-end, this product is years in the making and is singly the only PRO application available for the industry specifically.
There are approximately 400 commercial textile plants in the USA specializing in uniform rental and linen rental. The organization that forms the association for these companies is the Uniform Textile Service Association (UTSA) which features a publication and trade shows for the industry.
RoloFlex UL is currently featured on: http://www.roloflex.net/
Author: Applause Software of Boston: Peter A Donovan http://www.applausesoftware.com/
Sunday, April 13, 2008
Microsoft TAPI DIALER with Vista

- Bug: The MS-Dialer in Vista is not backwards compatible with XP.
- Bug: There is no documentation in Vista on how to use TAPI or the MS Dialer.Exe
- Bug: The documentation that MS provided does not dial USA phone numbers correctly.
Here's the problem:
If you were to dial in XP, you would dial this: 1 781 555 5555 as an example. This no longer works in Vista, and the output dialed is exactly this: 1 7 555 5555 where 2 digits of the area code is truncated.
If you were to follow the (paid to provide) documentation, you would now dial: +1 781 555 5555 but this results in the following number dialed: 781 555 5555 without the long distance "1".
The Answer:
Short and sweet: You must take the digits previously dialed by XP and add the country code for the USA like this: "+1 17815555555" with an important space after the "+1 ", resulting in the number dialed of 1 781 555 5555
This will be an important new addition to programs (such as RoloFlex from http://www.roloflex.biz/) which perform under both operating systems, XP and Vista, so the programmer must identify the OS and adjust the TAPI interface accordingly.
In the hopes of helping someone else with their TAPI interface, so that you don't have to pay Microsoft $59 US to help you discover this....
Regards,
Peter A Donovan : Applause Software, Boston USA http://www.applausesoftware.com/
Saturday, March 15, 2008
EMail Marketing with Visual DataFlex Software
... considering [as example] the “under $1,000” customized package available from Auto-Mate Software from longtime VB and VDF developer Garret Mott of the NEDC.
Once installed, you can instantly notify your entire market that new products are available, or write pre-written excellently worded letters that are sent to individuals when the need arises.
Layman’s terminology only:
1. Write an email. Edit carefully, proof, and save into a database using a windows program that guides you.
2. Select whom out of your database you’d like to send it to.
3. Click a button, and each of your prospects receives an individual email within minutes.
- How to slice and dice your market:
- Let’s assume you have a database with customers and prospects. If you don’t, it’s time to take this on. Your database contains vital information about each entry such as the zip code, state, type of account, balance, payment terms, etc.
- What if you could instantly generate revenue for no cost? Let’s setup your email screen as Garret Mott would do for you. Select from a drop-down list “COD”, select “MA” (Massachusetts) and pick customers only. Write up an email offering 10% discount on orders in the next 48 hours, and send. When you feature a new product or listing on your website, why not let everyone know in a short email note?
- The other use for this kind of tool is to respond to inquiries with pre-written letters, edited for presentation quality, available to send to individuals upon request of information. Each business model has a set number of popular inquiry topics that customers ask for. Currently, do you respond with ad-hoc written emails and mailing of literature? A pre-written letter send to the individual who requested the information actually takes less time and both makes a better presentation and offers a delivery vehicle to attach a .PDF document. No cost, improved results, and instant delivery.
These are the two most common uses for email marketing, but I’m sure you can think of more.
Delivery:
Are we all tired of the HTML emails that feature graphical art advertisements? The systems that I currently use feature plain text with links. They look like an individually typed email, and they are really. Many email recipients have “html off” as an option on their emails, so why send an email that only a portion of your readers will actually see?
Difficulties:
Many ISP’s (Internet Service Providers) have limits on how many emails you can send in an hour. We have found that options on your email sending package can spread these emails over the course of a day or two, or that simple negotiation with your ISP can unlock this limit. Many times a requirement that you include an “unsubscribe” link could be encountered, and is a good practice to include.
Summary:
Generate income, keep in touch with your market, break news instantly, and respond more professionally to both sales and service opportunities.
Recognizements:
Auto-Mate Software: http://www.automatesoftware.com/
Author:
Peter A Donovan, Applause Software: http://www.applausesoftware.com/










