|
[description], Story, any other text you want to use.
Upgrading Great Plains Dexterity Customization – switching to new technologies: SQL, Crystal, eConnect
by: Andrew Karasev
This article is for intermediate Great Plains Dexterity developer. It describes the directions to phase out Dexterity functionality and replace it with newer technologies.
Microsoft Great Plains and its current programming language Dexterity should still be considered seriously by developers community. However Microsoft Business Solutions announced switching to new technologies, mostly .Net, where all the MBS applications will be arranged into suites (Microsoft Financials, Microsoft Distributions, Microsoft Manufacturing, Microsoft Human Resources) and integrated into so called Microsoft Business Portal. Looking into the future we recommend you to analyze Microsoft Great Plains Dexterity customization for replacement it's portions with Microsoft SQL Server stored procs, Crystal Reports, direct C#/VB.Net web publishing, eConnect
1. Replace Dexterity cursor with SQL Stored Procedure
Dexterity was designed as multiplatform technology (primarily Btrieve, Ctree, SQL Server, potentially Oracle). Dexterity data retrieving mechanism is based on Range start, Range End, Get First and Get Next clauses. It is in fact similar, however a little bit slower to cursors in Transact SQL. Long ranges in Dexterity are good candidates for replacement by SQL stored procedures with update clause.
For example, consider to replace following Dexterity code:
Range clear SOP_HDR_WORK.
Clear 'SOP Type' of table SOP_HDR_WORK.
Clear 'SOP Number' of table SOP_HDR_WORK.
Range start table SOP_HDR_WORK.
Get first table SOP_HDR_WORK.
While errEOF do
If 'Salesperson ID' of table SOP_HDR_WORK = "ERIC" then
Edit table SOP_HDR_WORK.
Set 'Salesperson ID' of table SOP_HDR_WORK to "BILL".
Save table SOP_HDR_WORK.
End if.
Get next table SOP_HDR_WORK.
End while.
With the following SQL code
Update SOP10100 set SLPRSNID="BILL" where SLPRSNID="ERIC"
Bringing new data into a table in Dexterity is based on change/edit table clauses, in SQL they are equivalent (by performance) to inserting one record at the time.
When having long cycle of change/edit table in Dexterity, consider replacement by SQL stored procedure with Insert Into clause.
2. Use Crystal Reports, call them from via VBA in Modified form
The easy way to call Crystal Report from your VBA code from your modified form:
Const RPT = "D:ClientsTheClientInvoice Status.rpt"
Public crwApplication As CRPEAuto.Application
Public crwReport As CRPEAuto.Report
Private Sub Print_BeforeUserChanged(KeepFocus As Boolean, CancelLogic As Boolean)
If SalesTransactionInquiryZoo.Type = "Invoice" Then
If crwApplication Is Nothing Then
Set crwApplication = CreateObject("Crystal.CRPE.Application")
End If
Set crwReport = crwApplication.OpenReport(RPT)
crwReport.ParameterFields(1).SetCurrentValue (DocumentNo)
crwReport.Preview
End If
3. Use Direct .Net Web Publishing from Great Plains Database
The easiest and safest way is to use eConnect - SDK with VB samples, created for eCommerce programmers and web designers to call the functionality in Microsoft Great Plains. If your company can not afford eConnect - create your own set of stored procedures to address Great Plains database and go ahead with Visual Studio.Net to do the web publishing.
Happy upgrading and customizing! if you want us to do the job - give us a call 1-866-528-0577! help@albaspectrum.com
About The Author
Andrew Karasev is Chief Technology Officer in Alba Spectrum Technologies – USA nationwide Microsoft CRM, Microsoft Great Plains customization company, based in Chicago, California, Texas, New York, Georgia, Arizona, Minnesota, Washington, Colorado and Florida and having locations in multiple states and internationally (www.albaspectrum.com), he is Dexterity, SQL, C#.Net, Crystal Reports and Microsoft CRM SDK developer.
akarasev@albaspectrum.com
|
live broadcast
If you're still reading and haven't visited the live broadcast links yet, let me reveal how this web site happened. I was finding it extremely difficult getting the exact info I was looking for, I know some sites do have it, like the live broadcast sites I listed above, but mostly web sites don't offer to the exact thing.
Instead of searching the web and going from one live broadcast website to the next I thought I'd create my own live broadcast site, and it's obvious I've only just made a start on it. Right now I haven't really got the content I want compiled, which is why I've listed these other, more established live broadcast sites. One day soon this will be the best place to visit to find information or buy. Until then you'll have to be satisfied with the live broadcast listings.
Broadcast On the Net Index
|
Main Menu
Broadcast On the Net
Site Map
Affiliate Ads, Links, news, etc.
News for 08-Oct-25 Source: BBC News - Home The technology of touch Source: BBC News - Home Rockettes set for Trump inauguration Source: BBC News - Home David Moyes: Manchester United's great traditions have gone says Sunderland boss Source: BBC News - Home Real-life Libya plane hijack halts hijack film shoot Source: BBC News - Home Gorging on love Source: BBC News - Home Africa's top shots: 16-22 December 2016 Source: BBC News - Home Is Nigeria's 'plastic rice' actually real? Source: BBC News - Home Crash survivor: 'I put my seatbelt on' Source: BBC News - Home Bethlehem icons created by artists Source: BBC News - Home Libyan hijacker arrested in Malta
Links
Links
Links
|