Skip to main content

Legacy Programs Conversion from Xbase, Clipper, FoxPro, dBase


  • seamlessly run on 64bit Windows systems
  • renew your expandability potential
  • access any device or printer
  • take advantage of modern technology
  • overcome memory limitations

We have been working with Clipper since 1985 and have successfully migrated numerous mission critical applications from the DOS environment to the latest flavors of 32/64 bit Windows systems. But making it just work is not where we stop.

Is it worth doing?

We focus on medium to large legacy applications where a substantial investment in software and practices needs to be re-evaluated. What is worth doing and how, and what not. Often a minimal functionality is all that is justified. Other times the dependencies and costs already involved are so extensive that a serious re-assessment is imperative. Re-assessment may show that parts of the system are obsolete and need to be discarded while others require a major overhaul in order to be in tune with modern technologies. This is where we also come in. We make sure you not only protect, but also leverage your previous investment as is warranted without the risk of remaining outdated. It is possible that lots of program code and business logic may be salvaged at a moderate cost.

Not only will we help you reach the wisest decision but we will be there to support and implement it as well.

Will your users suffer a cultural shock?

Probably a negligible one because we take into account interface practices and respect them. Like the keyboard for instance which should behave as expected. A graphical interface is never an acceptable excuse for reduced productivity.

Is this a half-way solution?

No, it need not be. Your application can be as advanced as you wish both in terms of interface as well as in terms of other capabilities like supporting multimedia or being web-aware or sending e-mails or texting messages to mobiles.

How about the data?

We make sure nothing is lost. On the contrary we will port all historical data to new databases if needed without any data loss.

Will I be able to operate the old application concurrently with the new one?

Most likely. We aim at zero down time, gradual, safe and stress-free migration. Not all users will need to convert at once.

So if yours is not a one-off minor project but an important part of your business, we urge you to give us a call or write. We will more than happy to discuss your options.

Where can you go from there

a peek at our environment

Our sofware environment with Xbase++

We have a vast experience developing applications with Xbase++.  We have strived for stable, user-friendly, efficient and powerful working environments for our users, where productivity and accountability counts. Our designs are engineered in a way which enhances developer productivity and speedy debugging.

We are always happy to discuss synergies with other developers.

doing more for less

Tap on a thumbnail below

Large-scale applications

Mobile development

Mobilo is an ordering application designed to work on touch/pen capable portable devices such as tablets and laptops. It can survive unfriendly environments where speed,  efficiency and reliability is of out-most importance and connectivity is often unavailable. Keyboard is optional but barcode scanner if often recommended.  The app is self-sufficient in terms of databases but can synchronize with headquarters (send/receive) as soon as connectivity is available either via WiFi or mobile telephony (on 3G/4G SIM-equipped devices) through VPN/LAN/Intranet.

Mobilo is currently used by salesmen, sales reps, supply chain personnel who visit purchasers, super-markets, store depots or other sites. It can conveniently be used to replenish stock in-situ depending on shelf presence while the user can be consulted regarding previous order history, customer quotas and statistics, detailed product info etc. Item identification is assisted with photos.  It is also used for sampling in exhibitions, fares and conferences. Synchronization with Ultimo, our ERP system (also a 100% Xbase++ driven application) is performed

A recent accessory to this system is a mobile app both for Android and iPhones which provides online real-time product availability information. Its front-end is developed in Ionic/Cordova and is retrieving information provided by an Xb2.Net assisted Xbase++ server application which in turn is accessing our Ultimo ERP system databases (also Xbase++). Salesmen and sales-reps can now close deals while walking or driving and while simultaneously speaking on the phone with customers. For some it is a dream-come-true! Others can still not believe it is happening!

Web Services

ServiceMan manages all stages of electronics/electrical repair. Among others, SONY is using it in most repair centers in Greece. It is EICTA-IRIS coding compliant meaning that symptoms, conditions etc are subject to strict control via validations. SONY devices follow a particular path mostly determined by the outcome of web services provided by SONY headquarters.  After entering relevant data at appropriate repair stages, the user needs to apply for a web service which will approve or reject each step, provide repair assistance or other information. The screen shot demonstrates how this is done. The form contains all information pertaining to one particular repair which corresponds to the record the browser is pointing to. The browser on the background is by itself a particularly critical tool packed with search tools. Colors and icons help demonstrate status and repair details. Repairs are listed in varying sorting orders assisting management with proper prioritization, service performance monitoring and scheduling. ServiceMan also handles wholesale repairs and batch deliveries to outlets.

Smaller repair shops can use a stripped down version of ServiceMan, whereas large repair centers use the full version which integrates with our Ultimo ERP system which includes inventory management and accounting among many features. The application is 100% XBase++. Xb2.Net has been used for web service integration.

Industrial Contract Management

Industrial tomato contract management, production allocation, and distribution. Hundreds of thousands tons of industrial tomato bought from Greek producers, is weighed each year by an Xbase++ application. It began as a COBOL program later evolving into a Clipper Summer ‘87, then Clipper 5.3 sturdy application. Fresh tomatoes are processed in various production plants to satisfy a full range of tomato products in packages suitable for industrial, food service and retail channels worldwide. Among several later additions to the initial application, one stands out as it manages all purchase contracts agreed prior to production. As production depends on crop availability it becomes imperative to use tools which help allocate production and deliver appropriately. This screenshot provides a glimpse at what is involved.

If our calculations are correct, this Xbase++ application is handling more than 3% of the European industrial tomato production and about 50% of the Greek equivalent! The company using it, is the oldest tomato processing company in the world.

Tools & Environment

Browser Framework

Browser Framework. Past an initial menu or other selection means, our applications are browser-driven to a large extent. A consistent design is followed throughout. Root-menu entries are identical and all features one expects to find in one place invariably exists in all. A toolbar hosts several menu options including the editing group which handles the (modal) primary edit-form window (see example.) Any rectangular browser cell section either visible or not, can be marked. A marked section can be copied to MS-Excel for example, be printed or used otherwise by the application. Each browser’s layout is user configurable including column content. Popular layouts can also be shared.

Users can switch to any of the sorting orders available either via listbox choice or by clicking the corresponding column header. SEEKs can be performed on the active key by entering data on one or more key fields in a special window. An incremental search  feature is offered if appropriate, incrementally limiting the view-able records a-la-Google. What’s more, search is not only case but also language insensitive. Finally the whole database can be searched by clicking a column then entering a value or string which should match any part of the corresponding field. Results appear one-at-a-time, forward or backward, and of course searching can be always interrupted.

Browsers are often where all the action is. Which is why powerful debugging tools are always accessible to developers or alpha testers from there (see screenshot WaDebug)

Runtime Debugging Tools.

. Debugging not only involves code flow and variable content but also data environment and conditions that exist when it runs at a particular moment. If one wonders how this is feasible with Xbase++, take a look at this screenshot.

Developers need not specify any particular setup. One runs the app as usual either locally or at the customer’s site and users with developer’s credentials can then access the DevMode menu (see BrowserEng screenshot.)  There are two types of “explorers”. One, not directly linked to the database is the window/object/iVar inspectors which allow you to select any open window and inspect properties including objects and other iVar content. The second is the Workarea debugger which is a usual browser containing information for all open workareas with all relevant data and order components. The user can select any workarea and at any point navigate within it freely in a relatively protected environment via a powerful DBU type browser. The W/A Debugger can also be invoked from within Alaska’s debugger command line so there is no limitation to the particular code execution point one wishes to explore. The DBU type browser is also used by our maintenance engineers to perform database magic (extract, replace, retrieve, audit etc.)

Form Designer

This is a glimpse of our proprietary (at least for the moment) Designer. It is all written in Xbase++ and we heavily rely on it. It is capable of producing extremely complex forms and reports and is linked to our reporting and query engine. Objects can output field info or other expressions but can also be frames, lines, variable grids, pictures, or even RTF boxes. Layers are also supported as well as overlaying fields and objects on standard form images.

If this sounds exciting to you...
Let's talk

Call us at +30 210 3244 087

From 9:30 AM to 6:30 PM (GMT+2)