Microsoft Dynamics GP Developing for Dynamics GP
A blog dedicated to the Microsoft Dynamics GP Developer & Consultant community
 
Welcome to MSDN Blogs Sign in | Join | Help

Developing for Dynamics GP

by David Musgrave (Australia) and the Microsoft Dynamics GP Developer Support Team (USA)

News

  • Please use the Blog Feedback? - Contact Us link at the top of the page to email questions relating to the blog itself.

    If you wish to ask a technical question, please use the links below to ask on the Newsgroups. If you ask on the Newsgroups, others in the community can respond and the answers are available for everyone in the future.

    Please do not use comments on pages and posts to ask questions unrelated to the topic on that page or post.



    Dates of Interest:

    11-Jul-2008: Blog Created by David Musgrave.
    10-Oct-2008: First Post by Scott Stephenson.
    04-Nov-2008: First Post by Dave Dusek.
    11-Nov-2008: First Post by Beth Gardner.
    28-Nov-2008: First Post by Chris Roehrich.
    30-Dec-2008: First Post by Patrick Roth.
    24-Feb-2009: First Post by Greg Willson.
    22-Apr-2009: First Post by David Clauson.
    04-May-2009: First Post by Ryan Wigestrand.
    19-Jun-2009: First Post by Dawn Langlie.
    03-Jul-2009: First Post by Emily Halvorson.



    WorldMaps Statistics since
    24-Feb-2009:






    Translator Tool:




    Disclaimer

    This blog is provided "AS IS" with no warranties, and confers no rights.

    The links in this blog may lead to third-party Web sites. Microsoft provides third-party resources to help you find customer service and/or technical support resources. Information at these sites may change without notice. Microsoft is not responsible for the content at any third-party Web sites and does not guarantee the accuracy of third-party information.

Contents

Favourite Posts

Blog Links

Newsgroups Links

Resources Links

SnapShot for Microsoft Dynamics GP

David Meego

Not long after I joined Microsoft in May 2001, I found myself working as part of a global development team for Asia Pacific. The team was based in Manila in the Philippines and was involved in a regional research project to check the feasibility of releasing a version of Great Plains eEnterprise v6.0 for China.

Now, it should be mentioned that Dexterity (and so Microsoft Dynamics GP) does not support double byte or Unicode characters. This project was investigating whether a third party tool such as Rich-Win could be used to display Chinese characters using two single characters for each Chinese character.  While it was possible to translate the documentation and most of the windows, there were a number of quirky issues with data entry that eventually caused the project to be stopped.

Another part of this project was looking at the reporting requirements for Chinese companies and creating custom code or Advanced Financial Analysis (AFA) reports to handle the requirements.  AFA stores the report setup in tables as data and so this data would need to be added to new companies after they had been created. 

This is where the SnapShot tool I created comes into the picture. SnapShot works by copying the contents of selected tables to Ctree files in a separate folder, thus creating a SnapShot of the data. This separate folder can then be copied to a target system and the data inserted back into the actual tables. SnapShot has a wizard interface (which can be controlled with dex.ini settings) to automate the process of importing the data back.  Using SnapShot we could pre-load the AFA reports setup every time a new company was created.

So that is the history of where SnapShot comes from and why it was created.  Even though the project that spawned the code is no more, SnapShot was too useful to let die.

SnapShot's primary functionality is the ability to copy data between systems (of the same version), including between different account frameworks or database types.  It can be used to help migrate data from Ctree or Btrieve/P.SQL to MS SQL Server when a third party vendor does not have a migration tool. It can be used to pre-load standard configurations. It can be used to backup and restore data from a client. It can be used to backup and restore test or demo data on a consultant's workstation.

SnapShot also has the ability to print or export resource data about the tables and fields used in any table in any dictionary/product in the system.  It can output the data in a variery of forms including reports, tab delimited text files, XML and even GenView SQL Scripts.

NOTE: SnapShot is not an officially released tool and is not supported.  It is made available "as is".

The code and documentation for v8.0, v9.0 & v10.0 is attached at the bottom of the article.

Please add your comments to say how you have used this tool. 

David

Posted: Monday, July 28, 2008 12:51 PM by David Musgrave
Attachment(s): SnapShot.zip

Comments

jivtesh said:

Hey David, Its great to read your posts with these stories :) Are the rapid application tools for migrating data from Quickbooks built on top of the Snapshot tool ?

Jivtesh

# July 28, 2008 7:07 AM

David Musgrave said:

No, SnapShot was not adopted by the development team, even though the technique that I developed to allow any table in any dictionary to be opened twice in two locations with potentially different database types has been used by the later versions of the GP database migration tool.

David

# July 28, 2008 8:32 AM

PM2885 said:

The ability to backup, move and restore data makes SnapShot a valuable tool.  I find the part that I use most often is SnapShot’s ability to export table and field data to an Excel spreadsheet (via a TAB delimited file).  This functions as a replacement to 'Resource Descriptions' table and field listings.  SnapShot is several magnitudes easier, and actually produces useful reports.

You have the ability to choose your tables you require across multiple dictionaries and modules.  You may export just the tables or include the fields.

Great for Report Writer, SmartList, SmartList Builder, Dexterity, etc.

Paul

# July 28, 2008 6:46 PM

David Musgrave said:

# August 4, 2008 12:54 PM

David Musgrave said:

Posting from About Dynamics, Development and Life (Jivtesh Singh's Blog)

http://www.jivtesh.com/2008/07/snapshot-tool-from-david-musgrave.html

# August 4, 2008 12:56 PM

Developing for Dynamics GP said:

This is an updated version of an article I wrote a while back for the Microsoft Dynamics GP community

# October 10, 2008 5:00 AM

David Musgrave said:

# October 27, 2008 8:28 PM

Developing for Dynamics GP said:

This is an updated version of an article I wrote a while back for the Microsoft Dynamics GP community

# October 28, 2008 10:18 AM

Developing for Dynamics GP said:

From the Microsoft Dynamics GP Application Level Security Series . With the change from the optimistic

# November 10, 2008 10:07 AM

Teguh said:

Hey David, I want ask about use this tools in GP 10 SP 3, because i got error must upgrade version when deploy in GP 10 SP 3.

Teguh

# March 2, 2009 11:42 PM

ABower said:

Hi David,

Was looking at this handy tool, and reading through the docs, there is reference to using a conversion table for handling acct framework differences. I can't seem to find where/how you actually set that up however. Am I missing something, or is that function not in the app at the present time ?

Thanks,

ABower

# May 26, 2009 8:23 AM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Page view tracker