Dexterity programming language

From HandWiki

The Dexterity programming language was designed in the early 1990s for the implementation of platform independent graphical accounting software. Dexterity itself is written in the C programming language [1]. It was used in the development of Great Plains accounting software.

Microsoft Business Solutions GP, formerly Great Plains Dynamics and eEnterprise, is a Dexterity-written application. Microsoft's small business line, Microsoft Small Business Manager and Small Business Financials, were also written in Dexterity and use the same code base as Great Plains.

History of Dexterity

Great Plains Dexterity is a proprietary programming language and technology, designed in the early 1990s with the goal to build a platform-independent graphical accounting package - Great Plains Dynamics. Dexterity itself is written in C (with the hope that C would provide platform independence). You can install Dexterity from the Dynamics GP CD #2 and it allows custom pieces to be seamlessly integrated with the Dynamics GP interface.

Features

Native Dexterity Cursors
Dexterity was designed as a platform-independent programming language. If you want code to be operable on all currently supported Dynamics GP databases, use Dexterity ranges and loops to manipulate the records
Dexterity with SQL Stored Procs
Currently, most Dynamics GP installations have been moved to MS SQL Server - so you can use Dexterity for custom forms drawing only and make the buttons run SQL stored procedures.
COM Object calls
Beginning with version 7.0, Dexterity supports COM objects - register them as libraries in Dexterity. Refer to the manual as to how to do this. This technique allows you to call such things as web services across the internet.
Dynamics GP Alternate Forms
These are modifications to existing forms – the ones found in DYNAMICS.DIC. The most popular customizations are made on the SOP Entry form. Alternate forms are not recommended by Microsoft as they make version upgrades more difficult. Customization usually has to be redone.
Some restrictions
Dynamics GP is actually an integration of multiple dictionaries: DYNAMICS.DIC, ADVSECUR.DIC, EXP1493.DIC, etc. In your Dexterity customization you can generally deal with only one dictionary - DYNAMICS.DIC. Integration with other dictionaries is supported but is difficult.

Dynamics GP macros can also be recorded in Dexterity. The ability to handle branches does not appear to exist in these macros.

References