Microsoft Dynamics GP Roadmap Update

September 27, 2009

Back in April I published an article describing Microsoft Dynamics GP roadmap up to release GP 11 Future Pack. The timeline also described what would happen at least up to 2011.

Just recently the Microsoft Dynamics GP Product Management and Marketing team released a new stub titled Microsoft Dynamics GP “11” Preview with a link to the Dynamics GP “11” Presentation Pack (visit their site for more info). The presentation pack contained a Microsoft Office PowerPoint presentation describing the Dynamics GP roadmap up to GP “14”.

To comment a bit on the roadmap, the Product team has a vision that extends beyond the initial 2011 scope delivered back in April, throughout to 2016, which quiets down rumors as to the future of Dynamics GP and reafirming Microsoft’s real commitment. While the bullet points accompanying GP “12” and GP “14” are pretty vague, it’s worth mentioning that GP “14” is contemplating a major user interface update. I won’t be surprised to see more improvements to the GP ribbon and perhaps even extensibility of forms and reports with Visual Studio Tools for Applications. What is Visual Studio Tools for Applications? It’s Microsoft’s replacement for VBA. After all, VBA is old technology –reminiscence of Visual Basic 6 — and served it’s purpose already if you ask me.

What else to expect? Integration, integration, integration… tighter integration with Microsoft Office, tighter integration with Microsoft SharePoint Server, bigger-broader enhancements to BI, and even support for cloud computing deployments with SQL Azure.

Keep in mind as you read this article that these comments are my personal point of view based on the trends I am seeing across all Microsoft product stacks and do not represent the views and/or directions of Microsoft.

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com/


How to startup GP with a default navigation page rather than the home page

September 23, 2009

So you want to be able to startup GP with a navigation bar option instead of the typical home page? This request was posted today by Mary Fetsch on the Microsoft Dynamics GP community public newsgroup.

After playing around with the navigation bar for a while and some head scratching, the light bulb went off… use a macro! One peculiarity about the navigation bar is, while click actions are off limits to the macro system — the navigation bar is part of the .NET managed code application wrapper — each option can be accessed with a combination of the Control key on the keyboard and a numeric sequence associated to the option. As such, Home can be accessed with the CTRL+1 keyboard combination; Financial, with the CTRL+2 combination, and so on.


The macro

The macro I created is the typical login macro documented in the Integration Manager manual with an extra touch: I recorded extra steps to close all windows and the keyboard combination for the default startup navigation option, in this case the Purchasing option. The macro looks like this:

Purchasing.mac


# DEXVERSION=10.0.324.0 2 2
Logging file 'macro.log'
CheckActiveWin dictionary 'default' form Login window Login
MoveTo field Password
TypeTo field Password , 'somePassword'
MoveTo field 'OK Button'
ClickHit field 'OK Button'
NewActiveWin dictionary 'default' form sheLL window sheLL
NewActiveWin dictionary 'default' form 'Switch Company' window 'Switch Company'
MoveTo field 'OK Button'
ClickHit field 'OK Button'
NewActiveWin dictionary 'default' form sheLL window sheLL
NewActiveWin dictionary 'default' form sheLL window sheLL
NewActiveWin dictionary 'default' form syReminders window syReminders
ActivateWindow dictionary 'default' form sheLL window sheLL
CommandExec dictionary 'default' form 'Command_System' command CloseAllWindows
ActivateWindow dictionary 'default' form Toolbar window 'Main_Menu_1'
ShellCommand 'Navigate to \cmdNavigationPane\PurchasingButton\PurchasingAreaPage' # Purchasing
ActivateWindow dictionary 'default' form sheLL window sheLL

Once the macro was ready, all that’s needed is to change the Dynamics GP application shortcut to launch and play the macro all at the same time, as follows:

“C:\Program Files\Microsoft Dynamics\GP\Dynamics.exe” Dynamics.set purchasing.mac

One thing I like about these type of user questions is, they are real life situations that can shave minutes from someone’s daily routine making life a bit easier.

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com


Microsoft Dynamics GP v10 and supported virtualization platforms

September 22, 2009

The Windows Server Catalog site may just be one of the best kept secrets on the web. According to the About This Site page, “[t]he Windows Server Catalog lists thousands of hardware and software items compatible with the Microsoft Windows Server 2008 R2, Windows Server 2008 and Windows Server 2003 operating systems. In addition, products may also be compatible with other versions of Microsoft Windows as shown in each product details page.

In response to my friend Steve Endow’s inquiry on Microsoft’s support of vitualization environments and Dynamics GP, I went in quest of finding the answer since it is not always apparent where to find this information. The first place of course, the Systems Requirements page of CustomerSource/PartnerSource. On this page, you can clearly read the software and hardware virtualization platforms supported, but as usual the fine print is rather more interesting.

It turns out this page points to the Windows Server Catalog page where furthermore you can inquiry on other tested solutions by clicking on the Server Virtualization Validation Program site link.


The site has a Support Policy Wizard link that will take you to a wizard-based tool where you can select the products you would like to obtain support information about.

Next, in the product drop-down, you can choose any of the Microsoft products listed, in this case, Dynamics GP. Version 10 is the only release listed, but I am sure this will change in a couple years from now with the advent of new releases.


After clicking Next, the wizard presented a drop-down list with the supported virtualization technologies. Among the ones listed:

  • Microsoft Hyper-V
  • Cisco WAAS Virtual Blades 4.1
  • Novel SUSE Linux Ent Server 10 SP2
  • VMWare ESX 3.5 Update 2, 3, 4
  • VMWare ESXi 3.5 Update 3, 4
  • VMWare vSphere 4
  • Citrix XenServer 5, 5.5

But there had to be more, right? Right! The wizard allows you to check on the guest operating system configurations and processors along with the environment to verify which configurations have been tested and are currently supported.


As indicated in the screenshot, I decided to try something not too common: I selected Cisco WAAS Virtual Blades 4.1 as the virtualization technology, Windows Server 2008 R2 as the guest OS, and x64 as the OS architecture. When I pressed Next …

…I was pleasantly surprised to see that Cisco WAAS Virtual Blades with Windows Server 2008 R2 (x64) was a supported platform. The good news is, as long as a platform and a configuration is supported you are able to obtain technical support.

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com


The Technology Corner – Windows 7 and Microsoft Dynamics GP 10.0 Update

September 20, 2009

In the previous article I reported having an issue with Support Debugging Tool not unchunking and generating a “Table not found” issue. After a couple of minutes online with my good friend David Musgrave he made me realize that unchunking applications with User Account Control activated can also cause the Dynamics application runtime engine to wreak havoc in the process.

After running Dynamics GP as administrator (only needed for unchunking the Support Debugging Tool) everything went just fine. One can make the general assumption that if you are installing any third party Dexterity-based application, then UAC must be disabled or Dynamics GP must be run as an administrator to allow chunk files to install properly.

PS. David took offense in the part where I said “SDT remains broken” as he felt I was blaming him. The problem is there will be little or nothing I can do to make up for this one, because the guy don’t even drink Coca Cola or smoke anything… ah, I just remembered Veal Parmagiana!

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com


The Technology Corner: Windows 7 and Microsoft Dynamics GP 10.0

September 20, 2009

For those of you who follow me on Facebook and Twitter, you probably already got first hand updates as I was going through rebuilding my laptop with the new Windows 7 and getting all my core applications installed. Most of you are aware that I am more of a technical guy, so hardware and applications performance is very critical.

Let’s start with my laptop… I currently own a Dell XPS M1710 running Intel Centrino Duo core and 2.5GB in RAM. I know, yes! I use a gaming notebook taking advantage of the processing capabilities and the massive 17″ screen. A little outdated when compared to the new XPS, but it still gets the job done!

The goal was to install the following software:

  • Windows 7 Enterprise
  • Microsoft Office 2007 Enterprise, including Microsoft Project 2007 and Microsoft Visio 2007
  • Microsoft SQL Server 2008 Standard with Service Pack 1
  • Microsoft Visual Studio 2008 Standard with Service Pack 1
  • Microsoft Dexterity 10 with Service Pack 4
  • Microsoft Dynamics GP 10 with Service Pack 4
  • Support Debugging Tool for Microsoft Dynamics GP 10
  • Visual Studio Tools with Service Pack 4 for Microsoft Dynamics GP

In addition, I needed to install Microsoft Silverlight 3, Microsoft .NET RIA Services, Microsoft Virtual Earth Control CTP, and Microsoft Dynamics GP Integration Manager 10 with Service Pack 4.

After all, I am also gearing up for the Microsoft Dynamics GP Technical Conference, so I really needed to showcase all the latest technology — well, I would have loved to have Visual Studio 2010, but Visual Studio Tools is not compatible yet — to you the developers out there.

The prep work
I started out by backing up my all files onto my home NAS and progressed from there with a checklist of the most important programs I needed after the Windows 7 installation was complete. My goal was not to have a straight upgrade from Windows Vista Service Pack 2, but rather a fresh install as mostly recommended by Microsoft anyways.

Once backups were ready and the inventory of applications was completed came the actual installation of Windows 7.

Windows 7 installation.
I popped my copy of Windows 7 Enterprise into the DVD drive and rebooted my laptop. The first surprise was the now graphical installation interface, a long shot away from the old DOS interfaces that plagued previous Windows installations. The interface was pretty intuitive to navigate. I essentially started by reformatting my existing partion. This is where the second surprised come to play. In previous installations of Windows, formatting a partition could take long minutes. Windows 7 completed the reformatting of my 76GB partition in less than 10 seconds. From there on, copying the files and extracting them onto the hard drive was pretty simple. The footprint was minimal too, occupying less than 3GB.

As a laptop user, my major concern is always drivers. Windows 7 did an excellent job recognizing all my laptop components including the wireless… this was awefully cool because, the OS could immediately access other components available online and perform some basic updates at the same time the installation was happening. The only dissapointment was my display driver. That I had to install from a pen drive that I prepared before reformatting just in case.

Once the final reboot was complete, I run the Windows Update to make sure nothing else was missing… and yes, they are already a few Windows 7 updates available. End to end, the OS took approximately 30 minutes to install, including the updates. The third surprise came then… Windows 7 was booting up three-fold faster than Windows Vista. It went from a painful 1.5-minute boot up process to less than 10 seconds. My laptop seemed to have regained some life, though I was a bit skeptic since I really hadn’t loaded anything yet.

Programs installation

SQL Server 2008 Standard with Service Pack 1
Once the Windows 7 updates were installed, I moved on to SQL Server 2008 Standard installation. SQL Server installation was pretty straight forward, however, at the beginning of the install, Windows 7 warned me that this program was written for another version of Windows and presented me with a link as to where I could find the updates for SQL Server… now that’s productivity. Windows 7 askmed me if I wanted to change the installer compatibility, and did so upon my acceptance of the message. The installation continued as usual and without any hiccups.
I then went to the SQL Server site and downloaded and installed Service Pack 1. In less than 15 minutes I was up and running with SQL Server 2008 with Service Pack 1. I restarted the laptop to test the boot up and surprisingly, nothing had changed as far as performance.

Microsoft Office 2007 Enterprise

MS Office installation went uneventful. However, when the installation was completed and I let couple minutes pass by, Windows 7 had already downloaded Office 2007 Suite Service Pack 2 and the required security updates for everything else installed at this point. I thought this would be a drag, because they were more than 35 updates between SQL Server, Office, and other driver components on my machine that needed to be applied. Wrong! When I clicked on the shut down button. Everything got installed and applied in one pass! No more multipass service pack installation bootups! Between the installation of MS Office 2007 and the service packs, I spent another 30 to 40 minutes. I also activated all the products during this time.

Microsoft Visual Studio 2008 Standard with Service Pack 1

So I then put the VS2008 DVD in the drive and began the installation. Again, nothing much to report here. Once the installation was complete, I ran Windows Update. VS2008 SP1 was next in line. That got applied successfully without any issues and the whole experience took 20 minutes tops. Other security components were installed, but this took less than 5 minutes.

Surprisingly enough at this point, my laptop’s performance seem to hold steady…

Microsoft Dexterity 10 with Service Pack 4
Dexterity took less than 2 minutes to download, and 2 minutes to install… next!

Microsoft Dynamics GP 10 with Service Pack 4
Since the introduction of Feature Pack 1 with Service Pack 2, the GP installer had already incorporated changes to deal with .NET Framework and the newer operating systems. So I decided I would start my installation with the Feature Pack 1 with Service Pack 4 installer. Everything went fine until I launched Dynamics Utilities. It complained that it could not find BCP… hmm, then I remembered Vaidy’s article on the subject when he was attempting to install on GP on Vista. It’s easy to forget that Windows 7 also implements UAC — not a sarcasm by the way. Once I ran Dynamics Utilities as administrator, between the creation of the DYNAMICS system database and the sample company, Fabrikam, some 20 minutes had passed.

I have to admit that throughout this process, my laptop “seemed to had regained its focus” on delivering what it was designed to deliver: peak performance for demanding gaming applications. This was no different for my business applications either and that made me think that Windows 7 was doing a really good job at keeping a low memory and disk overhead, giving all other applications the room needed to perform adequately.

Visual Studio Tools for Microsoft Dynamics GP
Installing VST was a bit tricky. I started with the SDK download available from PartnerSource only to find out that it was asking for an existing installation of Visual Studio 2005 or greater. Since it said “greater” I assumed VS2008 would be just fine, but the installer did not seem to recognize I had VS2008 installed. I thought for one instance that this would be the wall that would stop me in my tracks. I ran a Windows 7 compatibility analysis on the MSI and Windows 7 suggested to run it in compatibility mode “Previous Windows version”. So I did, still the same error.

It turns out VST SP2 has an additional installer that checks for the existance of VS2008 and gives you the option to install the VST Templates for VS2005 or VS2008. Phew!! Sigh of releaf! The problem was not relaed to a compatibility issue with Windows 7. I moved on to download and install VST SP4 once the initial components were installed. Because of the issues I had, I wasted precious minutes in this step, so overall it took some 45 minutes and some swearing to get through.

Support Debugging Tool
I downloaded this baby from the Support Debugging Tool download page and attempted to extract directly into the Program Files\Microsoft Dynamics\GP folder and received a priviledge error — UAC in action again. It was necessary to extract it into the My Documents folder then move to the GP folder.

I booted up GP to add the code and got prompted as such. However, after acknowledging the message I got the following error:


I have a feeling this error is Service Pack 4 related, rather than anything to do with Windows 7, but for now, SDT remains broken. I then had to rename the chunk file and move on.

Integration Manager
I began Integration Manager’s installation very aware of Vaidy’s findings with his initial installation test on Windows 7 RC, but I figured, I will once more test Windows 7 backward compatibility features. After all, this is one of the biggest selling points to customers to upgrade to Windows 7.

Everything began just fine… space requirements computed, files transferred, components registered, registry keys created. Surprisingly enough, after launching IM — expecting it to bumb out — everything was fine! I entered my registration keys and opened an integration just fine. I installed IM from the Feature Pack 1 with Service Pack 4 DVD image. Not sure if this had anything to do with my success, but there it was, up and running! The process took less than 4 minutes to complete.

All in all my laptop reinstallation took over 5 hours (including moving back files to the hard drive).

Before deciding to perform a Windows 7 upgrade, take in to consideration all the factors and applications your business is currently running. Check with each one of the manufacturers to validate compatibility. However, as an early technology adapter, I am pretty please with the results of this installation and can give Windows 7 two thumbs up!

I will certainly be performing more tests and will let you know of any issues I may encounter.

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com/


Integration Manager 10 INI settings

September 18, 2009

The Integration Manager parameter file, Microsoft.Dynamics.GP.IntegrationManager.ini, provides a few keys that allow the application to perform certain actions according to the values and the sections in which these parameters are initialize . Here is a list of keys for the initialization file per section within the file:

IMBaseProvider section
This section controls the overall behavior of the Integration Manager application.

AutoUpgradeIntegrations= 0/1
Prompts IM to check whether to upgrade an integration or not.

CommandTimeout=30
Time allotted to execute a particular IM operation. If the operation is not successful in the time alloted, the record integration will fail.

HideMsgBox= False/True
Hides IM registration window during the application launch.

UseOptimizedFiltering= False/True
Allows you to maintain the same sorting as the original source. One note that I would make is that the following switch was put in more for performance. If you notice that your data is not coming in the same order as your source file you can set this switch to False and a lot of times that corrects the issue. If you do try changing this setting to false you will want to make sure you are on the latest service pack for version 10.0 of IM which is service pack 4.

IMGPPrv section
This section controls the behavior of the IM Standard integration adapter.

ShowDynamics=False/True
Shows the Dynamics GP interface during the integration process. The user will be able to observ how data is recorded. This feature is particularly useful if troubleshooting a problem record.

DoUIRedraw=False/True
Refreshes the interface when data is being integrated. Works in conjunction with ShowDynamics.

AllowOpenWindows=False/True
Suppresses checking of Dynamics GP windows status, this is, whether they are close or open.

HideMsgBox=True/False
Suppresses any integration status message box during the integration until records are fully integrated.

IMGPeConnect section
This section controls the behavior of the IM’s eConnect adapter.

SuppressIntegration=False/True
No information available on this switch.

HideMsgBox= False/True
Suppresses any IM message during the integration until the integration is complete.

Also one other note, on prior versions of IM you may remember a DumpMacro switch that would basically run a trace of what IM was trying to pass in. That switch is no longer used on version 10.0. Instead IM uses the Microsoft.Dynamics.GP.IntegrationManager.exe.config file. To create a trace file edit the configuration file as follows:

1. In Notepad, open the Microsoft.Dynamics.GP.IntegrationManager.exe.config file.

2. Change the value of the IMTracingOn switch to 1 as follows:

<add name="IMTracingOn" value="1"/>

3. Change the value of the TraceGPDexInstructions switch to 1 as follows:

<add name="TraceGPDexInstructions" value="1"/>

These configuration settings are only used by Integration Manager with the Standard adapter.

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com/


What do those strage reference codes in GL mean?

September 16, 2009

The following applies to inventory items with a valuation method of Average Perpetual, LIFO Perpetual, or FIFO Perpetual items.

As of the release of Dynamics GP 9.0 the system will automatically generate General Ledger adjustment entries for situations where an item was sold or consumed from inventory, but its cost was later changed.

In earlier versions of GP, adjustments to Inventory and COGS needed to be entered manually to correct the accounts used by the transactions that sold or consumed the items. As of Dynamics GP 9.0, those adjustments will now be automatically generated. You will see different codes in GL (MCTERCT for example) depending on the type of transactions entered and timing of the transactions.

Unfortunately at this time there isn’t a document describing the codes for Manufacturing. However, here are some codes based on various sources of info:

1. MCTERCT – If the items were issued in the Component Transaction Entry window and then the invoice is completed the adjustment will have a prefix of MCTERCT

2. MRCTRCV – If the items were issued in Mo Receipt Entry (they are backflushed) and then the invoice is complete the adjustment will have a prefix of MRCTRCV.

3. MCLSRCV – If the items were issued in the MO Close process (the MO was partially received and more backflushed items were issued during the close) and then the invoice is completed the adjustment will have a prefix of MCLSRCV.

As you can see the naming conventions follow a certain pattern. MCTE transactions come from the Component Transaction Entry window. MCLS transactions come from the MO Close process. MRCT transactions come from the MO Receipt entry window.Here is a complete list of the origins which may be used on Journal Entries that result from a change in average cost that affects sold receipt layers.

The following values will be used at the beginning of the Reference field for the specified originating document types:

1. BOM – Assembly Transaction
2. INV – invoice from the Invoicing module
3. IVT – inventory transfer
4. IVA – inventory adjustment
5. IVV – inventory variance
6. SALES – sales invoice from Sales Order Processing
7. PRTN – purchase return
8. MCTE – for a transaction that originated in Manufacturing Component Transaction Entry
9. MRCT – manufacturing receipt
10. MCLS – manufacturing close, including regular close and Quick MO
11. STCK – stock count variance
12. FSSC – field service Service Call
13. FSRMA – field service RMA
14. FSRTV – field service RTV
15. FSWO – field service Work Order
16. PA – project accounting
17. POP – close a PO line in Edit PO Status
18. RECON – created by Inventory Reconcile
19. CONV – created by an upgrade conversion
20. MCTERCT – If the items were issued in the Component Transaction Entry window and then the invoice is completed the adjustment will have a prefix of MCTERCT

21. MRCTRCV – If the items were issued in Mo Receipt Entry (they are “backflushed”) and then the invoice is complete the adjustment will have a prefix of MRCTRCV.

22. MCLSRCV – If the items were issued in the MO Close process (the MO was partially received and more “backflushed” items were issued during the close) and then the invoice is completed the adjustment will have a prefix of MCLSRCV.

There is a report you can install to better help determine where the accounts are pulling from. It won’t help for those entries already created in the system, but should provide you with the information related to the GL entries going forward. If you are on SP3 for Microsoft Dynamics GP 10.0 then you can add the following line under the [General] header of the Dex.ini file of your GP code folders:

RevalJEInDetail=TRUE

When you post a transaction, be sure you are printing the Cost Variance journals. Doing so will cause the PRUD (Purchase Receipt Update Detail) reports to print. This report will give a break down of any/all transactions that make up a particular variance transaction. If you do this then any of the cost adjustment transactions that will be written to the GL will also include the following information in these fields (GL20000):

ORCTRNUM (Originating Control Number) – this will now hold the original document number of the decrease item transaction affected by the cost variance adjustment.

ORMSTRID (Originating Master ID) – this will hold the item number that was revalued on the decrease item transaction.

ORDOCNUM (Originating Document Number) – this will now hold the original receipt number from the Inventory Purchase Receipt (IV10200) table that had a revaluation and forced the cost adjustment.

ORMSTRNM (Originating Master Number) – this will now hold the text value of “IV Ripple Transaction” to make it easier for users to identify the cost adjustments flowing into the GL.

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com/


GPUG now in full gear in Chicago

September 15, 2009

The GPUG Summit is now in full gear in Chicago and you can check the first pictures on the Microsoft Dynamics Community Facebook wall.

“Spin the Wheel” chance to win a Convergence 2010 pass and 120GB Zune

Microsoft Dynamics Communities conference booth

Is that Mark Rockwell?

The UnRuly Ladies

The GPUG Summit features a wealth of information-packed Educational Sessions and Role-Based Tracks that deliver Dynamics GP knowledge and experience designed to help organizations optimize the functionality, flexibility, performance and return on investment benefit offered by Dynamics GP.

Be sure to keep up with the Facebook wall or check the live blog at http://www.gpug.com/

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com


RW – Working with POSTNET barcodes for US zip codes

September 13, 2009

The Postal Numeric Encoding Technique (POSTNET) is a barcoding system developed by the United States Postal Service to assist with automatic mail sorting and routing. The POSTNET barcode uses a combination of half-bars and full-bars to encode the zip code that appears on a mail piece. The barcode starts and ends with a full bar (often called a guard rail or frame bar and represented as the letter “S” in the USPS TrueType Font).

In the United States, zip codes can be of 5 digits, 9 digits (also known as Zip+4), or 11 digits in the case of a specific delivery point. Each digit in the zip code is represented by 5 bars. Therefore a 5-digit zip code is represented by 25 bars. In addition, to ensurePOSTNET accuracy during mail processing, a check digit, which is five bars, is calculated and added to the zip code. Hence a 5-digit zip code would render a total of 32 bars: 25 bars for the 5-digit zip code + 5 bars for the check digit + the 2 enclosing guard rail bars. Hence, Zip+4 uses 52 bars, and a delivery point uses 62 bars.

To calculate the check digit, each digit in the zip code is added. The result is then subtracted from the nearest multiple of 10. For example, if each digit in the zip code 33076 is added, 3+3+0+7+6 = 19, and we subtract from the nearest multiple of 10, number 20, then the check digit is 1. Mathematically speaking 10 – (digit-sum mod 10). This will yield the following S330761S. This number is then represented by the following barcode (including the guard rails, represented by “S”):

While based on a binary system, the weight of each bar is different than in standard binary. The weight of each bar is as follows:

The following illustration shows are representation of all numbers:

To add zip code barcoding capabilities to a Report Writer report, for example an Invoice or a Check, you must first download and install the fonts. You can get a set of fonts from here. To install the fonts (the TTF files in the zipped file), extract the fonts to your My Documents folder, then copy them to your Windows\Fonts folder.

1) Open Report Writer and select the SOP Blank Invoice Form. Click the Layout button to open the report in the Layout window.

2) Add the RM_Customer_MSTR_ADDR.Zip field to both Report Header and Page Header sections. Set the fields properties to Invisible.

3) Create a string calculated field called (C) Postnet. Assign the RM_Customer_MSTR_ADDR.Zip field to this calculated field as shown in the picture:

4) Add the (C) Postnet calculated field to the Report Header and Page Header sections. Change the font to IDAutomationSPOSTNET. By now, your report layout should look like this:


5) Add the report to VBA. Go to Tools > Add Report to VBA.

6) Select all 4 fields, the 2 on the report header and the 2 on the page header and add them to VBA. Go to Tools > Add Fields to VBA.

7) Open the VBA Editor, locate the SOPBlankInvoiceForm (Report) object in the Project Explorer , double-click and add the following code:


Public Function EncodeZip(pZip As String) As String
Dim i As Integer
Dim sZip As String
Dim digitSum As Integer
Dim checkDigit As Integer

sZip = "S"
digitSum = 0

For i = 1 To Len(pZip)
If IsNumeric(Mid(pZip, i, 1)) Then
' Concat the digit
sZip = sZip & Mid(pZip, i, 1)

' Add up the digits
digitSum = digitSum + CInt(Mid(pZip, i, 1))
End If
Next i

' Calculate check digit
checkDigit = 10 - (digitSum Mod 10)
sZip = sZip & CStr(checkDigit) & "S"

EncodeZip = sZip
End Function

Private Sub Report_BeforePH(SuppressBand As Boolean)
Dim sZip As String

sZip = Zip
sZip = EncodeZip(sZip)
CPostnet = sZip
End Sub

Private Sub Report_BeforeRH(SuppressBand As Boolean)
Dim sZip As String

sZip = Zip
sZip = EncodeZip(sZip)
CPostnet = sZip
End Sub

Compile the code.

8) Return to Microsoft Dynamics GP saving all changes as you exit.

9) Grant security to the modified report. Print an invoice to test.

I hope you found this article interesting and the implementation very simple. You can find the fonts and package file for this project at the bottom of this article.

Downloads

Postnet Fonts – Click here
v10 SOP Blank Invoice Form report – Click here

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com


Code Named "Version 11" now formally Microsoft Dynamics GP 2010

September 8, 2009

V11? No more. I could not help noticing that on the Microsoft Dynamics GP Technical Conference 2009, they were no references to Microsoft Dynamics GP “v11”, and rather every sessions GP related has introduced the future product as Microsoft Dynamics GP 2010.

It’s no secret the Product Management and Marketing team had been thinkering on whether to continue with the consecutive versioning, or adhere to the year versioning approach used by all other Microsoft products. I guess it’s clear now! The new product release name coincide with multiple “2010” products we will see from Microsoft:

Microsoft Office 2010
Microsoft SQL Server 2010, code named Killimanjaro
Microsoft SharePoint Server 2010
Microsoft Exchange Server 2010

Until next post!

MG.-
Mariano Gomez, MVP
Maximum Global Business, LLC
http://www.maximumglobalbusiness.com/