GP PowerPack Release 2017-06-09

V12.0.108 / 14.0.51 /16.0.19 Changes
(1) Updated WW Internal Resources. GPPP will now be fully functional in <TEST> companies.
(2) SOP Transfer Settings: added check that SOP Xfer Document is still open before attempting to set options (#20172245)
(3) Shortage Inquiry: addressed ‘record locked’ error when opening Shortage Inquiry from the Item Inquiry Additional Menu, with the Shortage Inquiry window already open and an item displayed, and focus is in the Item Number field (#20172024)

MOGenerator Release 2017-06-05

V12.0.70 / 14.0.45 / 16.0.23
* MORI: added a data validation to ensure a Draw From site is provided for Components in the MOPick table, or on the Scheduling Preference.
* Documentation: added a new page called “Error Messages” that lists all errors reported by MORI, a detailed description of what causes the error, and where/how to address it (//willoware.com/online/mo-generator-manual/#error-messages)

 

MFG Data Archive Release 2017-05-30

V12.0.20 / 14.0.11 / 16.0.6
(1) Peformance Improvement: added Setup option to control frequency of progress updates. Testing found eliminating all progress updates reduced time to archive each MO by about 21%, from 2.58 seconds to 2.03 seconds.
(2) Updated WW Internal Resources

MOGenerator Release 2017-05-25

V12.0.69 / 14.0.44 / 16.0.22
* ErrorLog: the Error Log window now shows errors from both the Core Utilities and MORI. The Error Note attached to a MO Receipt record in W7158MOHdr can be viewed, along with additional information from that table.
* MORI: Addressed issue that cause MORI to incorrectly calculate the available quantity of lot controlled items.

More Detail…

The updated Error Log window now includes a view that shows MO Receipt Integration Errors.

MORI performs a large number of validation checks and reports all errors in a Note attached to each Receipt Record in W7158MOHdr.  Those Notes can be viewed by clicking a line in the Error Log window.

The window shows ONLY records that are currently in a error status (Status = 1).

The expanded view shows additional information from the MOHdr and MOHdrOpt tables.

Troubleshooting

Microsoft Dynamics GP Troubleshooting

Sometimes things go wrong.  Is it something you can resolve yourself, or do you need expert help?  Where do you start?  There are as many troubleshooting techniques as there are unique problems.  Here we provide some basic steps that can always be used to start the process, in the order they should be performed.

Basics

What Did I Just Do?

The moment you get an unusual error, stop.  Take a moment to take some notes about what just happened.  Take a “history” of the incident, recording as much pertinent information as you can recall, without touching GP.

  • What was the document number/customer number/item number/etc?
  • What were the last few things you did in GP prior to the error?  Be specific.  Which buttons, which fields, etc?
  • Record the Date/Time.  This is important because it could correspond to something else occurring on the computer/network at the same time.

Screen Capture

Make this a habit!  When anything unusual happens in GP, press ALT+PrtScn.  Do it the first time.  Do it every time.  If you do not capture these important messages, troubleshooting may be very difficult if you cannot reproduce the error.

Using ALT+PrtScn is different than pressing the just PrtScn (Print Screen)–pressing Alt+PrtScn takes a capture of the “active window”.

Capturing the Active Window gets just the error message:

While just PrtScn (Print Screen) captures the entire window:

A screen capture that includes all open applications on multiple monitors can be so difficult to read that it is not helpful.

Then open Word, or an Email, and press CTRL+V (paste).

 

Types of GP Messages

There are several different “message” boxes that GP can present, and they provide a hint about the issue you are experiencing.  Being familiar with these may point you in a direction to find the solution.

An “ASK” dialog can have up to three buttons on it (such as Yes, No, Cancel).  This is an informational message.  This is a message coded by the developer, and might indicate setup is missing or incorrect.

A “WARNING”message has a single button: OK.  A warning message may simply be important information (“you can’t do that!”), but it may also be reporting an error.  We will look at a warning message presenting an error condition later in this post.  A warning message is also coded by a developer, so when it appears you know, at a minimum, it was an event anticipated by the developer.

An “ERROR” message is generally more severe.  An Error is usually presented when a problem has occurred with a table operation, or some fundamental software error has occurred.  It may indicate there is something wrong with the data, or the table storing the data, or in a calculation.  A developer can code an Error message, as shown below:

However, error messages are more often system generated:

If possible, scroll down in the error message and capture all of it.  If the message has a scrolling window, like the one above, you can copy the text.  Click into the message, then press CTRL+A (select all) and CTRL+C (copy).  Then paste it (CTRL+V) into Word or an Email.

If the message has another button (i.e. Debug, More Info, etc), click it can capture that information too.

WilloWare uses our own error reporting throughout all products to provide more detailed information.

 

This window provides the name of the product (“TEST”), the build number, the location of the error, and the cause of the error.  The window can also automatically generate a support case by clicking the email address.

Version Information

Depending on where the problem is occurring, you may not be able to even launch GP.  The steps below provide several methods to retrieve version information.

During log-in, the Welcome screen displays the GP version information.  This is read as Major Version 14, Minor Version 00, Build 0524.

If you can get logged-in to GP, go to Help >> About Microsoft Dynamics GP

The HELP button is the blue question mark in the upper-right corner

Take a screen capture of this window, and paste it into Word or an email.

Many 3rd Party Products will have “About” navigation on the first menu (where About Microsoft Dynamics GP is located), or off the Additional Menu on the About Microsoft Dynamics GP window.

The WilloWare About window (for all products) is off the Additional Menu (i.e. Additional >> About GP PowerPack).

Click into the window, press CTRL+A (select all), CTRL+C (copy), then paste it (CTRL+V) into Word, or an Email.

If you cannot launch GP because it crashes before you can even get to the login window, you can find version information on the application files themselves.

Open Windows Explorer, and navigate to the GP Program Folder.  This is usually in the following path:

c:\Program Files (x86)\Microsoft Dynamics\GP2015 (or GP2016, etc)

Right-click on Dynamics.exe

The right-click menu can be rather large.  Properties is normally at the bottom.

Click the DETAILS tab.  Note the File Version/Product Version.  This matches the Dexterity Version Information from the About window.

Steps To Reproduce

This might not be safe to do in the live company.  See the section in Tools regarding Test Company versus Test Server.

If it is safe to do so, attempt to reproduce the issue.  Write down the specific steps needed to reproduce the issue.  Think of writing a recipe where ingredients need to be added in a certain order.

What if you cannot reproduce it?  Computers are not random, so there is some logic to what happened, but it may not be possible to reproduce the issue.  For example, it could depend on a certain number of users all doing the same task at approximately the same time.  This would be extremely difficult to reproduce.  An issue that cannot be reproduced may not be fixable.

User Specific

At this point you have gathered some information.  You have tracked down version information, you may have screen captures, and you have determined how to reproduce the issue.  If you cannot reproduce the issue, the following steps cannot be performed.

One of the first troubleshooting steps is to check whether or not the issue is user-specific.

  • Can another user perform the same task and get the same error on a different machine?  If not, the issue might be related to one User ID and/or computer.
  • Eliminate all security issues and test again.  Log-in to the computer as the Windows Domain Administrator, then log-in to GP as “SA”.  Can you reproduce the issue?  If not, the issue is related to security.  It could be GP security (i.e. access to windows, reports, etc), or Windows Security (i.e. access to shared files, or appropriate access to the files in the GP program folder).  NOTE: you must use the actual account called Administrator to ensure complete access to all computer and network resources.
  • Can you reproduce the issue in another Company database (or Fabrikam)?  If not, there may be a company setting causing the issue, or a company-specific data issue.

Tools

Test Environment

Test Company or Test Server?  See our discussion of this question here:

//willoware.com/install/installation-best-practices/

In a nutshell, a Test Company is a safe place to test transactions.  It is usually a good place to attempt to reproduce an issue.  However, it is possible to create inter-company transactions, so a Test Company is not necessarily isolated from the Live Company.  A Test Server is a separate, replica of the live server.  This is a good place to test anything because there is no chance of impacting the live environment.

Log Files

Open Windows Explorer and navigate to the GP Program folder, which is typically:

c:\Program Files (x86)\Microsoft Dynamics\GP2015 (or GP2016, etc)

Go into the Data sub-folder.  Locate DEX.INI, right-click, select EDIT.

If ScriptDebugger and ScriptLogEnhanced switches not in the file, add them as shown above.

The other “SQLLog” switches are normally in the file.  Be sure to check the entire file before adding them.

Set all of the switches shown above to TRUE, then save the file and close it.

Log-in to GP.  The SQLLog settings are active immediately and will begin logging.  We’ll return to that log file in a moment.  The ScriptDebugger setting adds a DEBUG menu to the top of every window, and ScriptLogEnhanced adds a time-stamp to each line in the file.

You want to keep the log files as small as possible so they contain only what occurs when the issue is reproduced.

For example, we have found that when we click the “end of file” scrolling button (the right-most scrolling button), we get an error message.  The Sales Transaction Entry window is open, as shown above.  Go to Debug >> Log Scripts.  Save the file to an easy to find location, such as your Desktop.

WAIT! Before reproducing the error, delete the SQLLog file.  Use Windows Explorer to navigate to the GP Program folder.  In the Data subfolder, locate DEXSQL.LOG.  Delete it.  Keep Windows Explorer open on the Data folder.

Go back to GP and reproduce the error.

Go back into Windows Explorer and COPY DEXSQL.LOG.  This will ensure nothing else gets written to the file.  If possible, make a copy of the log file while the error message is displayed in GP.

Returning to GP, you may need to click on several messages before you can get back to the Debug menu to turn off script logging.  Go to Debug >> Log Script to disable script logging.

 

Close GP.  Go back to the DEX.INI file and set the logging switches to FALSE.

Save Dex.ini and close the file.

WilloWare’s Consulting Toolkit contains several free SQL Management tools, one of which is the SQL Trace utility.  This utility can enable the SQLLog switches discussed above, from inside GP, so that SQL Logging can be enabled/disabled exactly when needed just like the Script Log.  Read more about the SQL Trace utility here.

Interpreting Log Files

By copying DEXSQL.LOG at the moment the issue occurs, the last lines in the log file are what immediately preceded the issue.  So begin by scrolling to the bottom and working up.

An example from the file:

{CALL TWO.dbo.zDP_CO40100F_1(NULL,NULL)}

TWO is the database, and CO40100 is the table.

Likewise, the end of the Script Log contains the last steps GP performed before the issue:

The key to reading this file is trying to get a general idea of what is happening without getting buried in the details.  For example:

SetAttachmentButtons of form coAttachManagement‘, “0\Sales\Sales Order\2~”, DocumentsAttached, DocumentsNotAttached

The bold-red words are dexterity code and everything that follows that is input or output data.  From this script we can see that something is happening with Attachments.  We can also infer from this that the SQL log might be showing the tables involved in managing document Attachments.  Retrieving table information is discussed below.

The time-stamp is useful when troubleshooting a long running process.  Watch the time-stamp to see what process takes a long time to run.

Pay particular attention to entries in the script log that look like this:

‘Security’, 0, 2, 116, “”

The GP Security procedure checks to see if the user has access to the resource (a window or report).  Scrolling backwards in the Script Log until you find an entry for Security can help identify which product is encountering the issue.  The red number, in this case zero, is the Product ID.  You can connect the Product ID to the Product Name through the Edit Launch File window (Tools >> Setup >> System >> Edit Launch File):

In this case we can see that Product ID = 0 is Microsoft Dynamics GP.

Table Information

A little known, but very useful tool in GP is the Table Information window.  Go to Tools >> Resource Descriptions >> Tables.

Click the … button.

Select the Product (see the “Security” procedure in the previous section), and set View By to “By Table Physical Name”.  Tables are grouped by Series (i.e. Financial, Inventory, etc).  You can make an educated guess about the series, but sometimes tables are not where you would expect them to be and it requires a bit of searching.

SQL Profiler

SQL Profiler is a component of Microsoft SQL Server and is installed on the server.  We are not going to go into depth on how to use Profiler, except to say that the SQLLog file captures information similar to what can be recorded in Profile, but Profile has many more options for what can be recorded and how the information is displayed.

Note the similarities in the Profiler log to the SQLLog file:

Sysinternals Process Monitor

This tool can be downloaded from:

//technet.microsoft.com/en-us/sysinternals/bb896645

If that link is not available, check www.sysinternals.com for “Process Monitor”.

Process Monitor can report on pretty much everything an application does, from reading Registration Key settings, to internet communication, to file access.  It is this last task that can be helpful when there is a security related issue (i.e. there is tight network security and it is interfering with GP).

Begin by adding a couple of filters.

Filter 1: Process Name is dynamics.exe.  Click ADD.

Filter 2: Operation is ReadFile

Click OK to close the window.

Perform the task in GP that is causing an issue.  As an example, GP is generating a warning message shortly after launching the application, before reaching the login window:

As soon as the error appears, stop the Process Monitor.  Scroll up from the bottom of the window.

There are a large number of reads on the Dynamics.dic file.  An additional filter excluding these file reads would make the display easier to read.  Scrolling up in the file we start to see reads from other dictionaries:

In this case, the last dictionary it reads (excluding Dynamics.dic) is BS71.DIC.  Using the Edit Launch File window (discussed above), we could identify which product this is.  With this type of login error, the next step would be to edit the Dynamics.SET file to remove this product, then relaunch GP to see if the warning disappears.

Editing Dynamics.Set

Editing the SET file should not be done on a terminal server if there are other users in the system (or who could be in the system).  It is possible to launch GP using a separate SET file, but that is not covered here.

Dynamics.SET contains a list of the dexterity modules that comprise Dynamics GP.  It is located in the GP Program Folder:

c:\Program Files (x86)\Microsoft Dynamics\GP2013 (or GP2015, GP2016, etc)

Make a copy of Dynamics.set before editing it.

Open it in Notepad.  The file has three sections.

  • The number of products installed (47)
  • The product list (consisting of pairs of Product ID and Product Name)
  • The pathnames list below the “Windows” line (consisting of three lines per product, list the path to the application dictionary, forms dictionary, and reports dictionary)

The forms and reports dictionary files are only present if a window or report has been modified.

To remove a product from the SET file, decrease the product count by one, remove the two lines that identify the product, and remove the three pathname lines for the product.

To remove Manufacturing from this SET file, the product count could be 46.

Remove the two lines highlighted above, leaving no blank rows (Fixed Assets should be followed by 414).

Remove the three lines highlighted above, leaving no blank lines between “R309.DIC” and “HR.DIC”.

Save the file.

Google

An often overlooked troubleshooting tool is Google.  Search for the error message, or the window involved and include the word “error”.  If you have done some of the troubleshooting steps above you may have additional information such as a table name, or a script name from the script log.

 

 

 

MOGenerator Release 2017-05-22

V12.0.68 / 14.0.43 / 16.0.21
* MORI: Addressed issue that caused MORI to require presence of the MFG BOM when importing the picklist for a receipt of an existing MO, where it was the final/only receipt, and the Final Receipt flag was set to false.

MOGenerator Release 2017-05-17

V12.0.67 / 14.0.42 / 16.0.20
* MORI: Addressed issue when importing a picklist, with a lot controlled item, where the same lot number has multiple lot receipt records, that caused Manufacturing’s CreateNewPendingRecord procedure to not increment the SEQ_I column in MOP1020, resulting in a raw material inventory adjustment with partially selected lot quantities.

MOGenerator Release 2017-05-16

V12.0.66 / 14.0.41 / 16.0.19
* MORI: Addressed issue when importing a picklist that caused an incorrect conversion to Qty in Base on the Picklist, which resulted in unbalanced Lot Allocations on the raw material inventory adjustment. This also resolves a related issue when checking for available inventory of the Lot (#20172261).

MOGenerator Release 2017-05-12

V12.0.65 / 14.0.40 / 16.0.18
* MORI: Addressed issue when consuming serialized components, with multiple serials issued for one component, where inventory was being consumed in order of SN receipt rather than the SN specified in MOPick (#20172261)

CompleteCount Release 2017-05-10

V12.0.24 / 14.0.14 / 16.0.7

(1) Mass Add: (a) added support for using IV00102.BINNMBR, and addressed issue where IV00102.BINNMBR does not populate into the Excel export. (b) Field ‘Short Description’ was not spelled correctly when translated into the SQL query resulting in ‘invalid column name’ error (#20170181)
(2) Updated WW Internal Resources

MOGenerator Release 2017-05-09

V12.0.63 / 14.0.38 / 16.0.16

* MORI: Addressed issue when consuming lot controlled components, with multiple lots issued for a component, where all needed inventory was being consumed from the first lot and skipping subsequent lots unless the first lot ran out of inventory.

Scheduling MOGenerator

Overview

MOGenerator provides a number of useful Manufacturing integration utilities, such as the ability to create MOs, reschedule MOs, create child-MOs, and receive MOs.  Collectively these utilities will be referred to as MOGen in this post.

MOGen can be run manually, where it runs one time and processes all available records in the integration tables, and then stops.  Or, it can be run continuously.  When running continuously, it periodically polls the integration tables to see if there is anything to process.

When MOGen is part of a system integration, a common need is to have it run automatically on an unattended machine.  The steps below describe how a GP client can be configured to launch automatically everyday, run MOGen during business hours, then shut down.  The benefits of this process are that it ensures no GP clients remain connected to the SQL server during maintenance periods, and it provides for regular “refreshing” of the GP client (which tends to run better if it is regularly restarted).

 

Configuring MOGen

See the MOGen documentation for more information about this window.

Mark the box next to “Auto-start after login”.

All of the Timer settings are saved automatically, and reload when each time the window is opened.

The Timer must be ENABLED.

Stop After x-Hours.  Enter the number of hours the utility should run before it shuts down.  For example, 10-hours would calculate an end time 10-hours in the future from the moment the IMPORT button is clicked.

Close GP When Done.  MARK this box.  The macro discussed below will launch MOGen, when the stop time is reached, MOGen will stop processing and close GP.

If the utility will run overnight, add this setting to the DEX.INI file:

SuppressChangeDateDialog=TRUE

This setting keeps GP from popping the “Do you want to change the date” dialog at midnight.

Login Macro

If MOGen is going to be run on a dedicated GP client PC, or a VM that is not a shared GP instance, you can configure GP to remember the Username/password and Company.  These settings are stored in the DEX.INI file so they can only be used on a dedicated GP client.  If you can do this, skip the Login Macro information below.

The Login Macro will be used by Windows Scheduler to launch and log-in to Dynamics GP.  It then opens MOGen and clicks the Import button.

There are a few import sections of the macro.

The logging file entry:

Using a logging file keeps GP from popping up a dialog box when the macro finishes running.  The dialog box would interfere with MOGen, and also prevent GP from closing.  Set the path name to an appropriate location for your system.  A good place is in the GP\Data folder.

Username and password:

The Username and password are in plain text.

The next section of the macro selects a Company.  If you only have one company, or the MOGen user has access to only one company, remove these lines from the macro.

The next section of the macro opens the MOGen window and clicks the Import button.  If you have a newer build of the software that has the “Auto-start after login” option, remove these lines from the macro.

Selecting the company :

Edit the macro so that the “item 1” line selects the correct company from your login window:

As shown above “item 1” corresponds to “Fabrikam”, and “item 3” corresponds to “ZArchive”.  If you need “ZArchive” change the macro to “item 3”.

Download the MOGen login macro text file at the link below.  After downloading the file, change the extension to “.mac”.  Save the file into the GP Program folder, in the same location as DYNAMICS.EXE.

GPLoginMacroMOGen

Windows Scheduler

Use Windows Scheduler to create a Basic Task to “Start a program”.

The Program/Script is the path to DYNAMICS.EXE, such as

“c:\Program Files (x86)\Microsoft Dynamics\GP2016\DYNAMICS.EXE”

In the Add Argument field, enter:

DYNAMICS.SET GPLoginMacroMOGen.mac

If you can set GP to remember Username/password and Company, you do not need the Login Macro line above, just DYNAMICS.SET.

Set up the Task Schedule as desired.  The frequency with which the Task runs must be coordinated with the Timer Settings on MOGen to prevent launching GP before MOGen has closed GP from the previous run.

 

Monitoring MOGen

MOGen updates a record in a “heartbeat” table every time it runs.  So if MOGen is set to run once every 15 minutes, the heartbeat will be updated every 15 minutes.   The heartbeat table can be monitored to see if MOGen is still running–if it has quit updating the date/time stamp, it has quit running.

See the MOGen documentation for more information about monitoring MOGen remotely.

MOGenerator Release 2017-05-04

V12.0.62 / 14.0.37 / 16.0.15
* Added Timer Settings. MOGen can be set to run for x-hours, stop, and then close GP.
* Updated WW Internal Resources

More Detail…

This release adds “Timer Settings” to the Import Utilities section.  When “Run Import” is set to Continuously, the Timer settings can be used to have the utility automatically stop after a specified number of hours.  Additionally, the utility can close GP when it finishes.

The Timer Settings are intended to provide additional support for running the MOGen utilities on an unattended client machine.  Specifically, the Timer Settings will help with the following scenario:

  • Windows Scheduler is used to launch GP on  a regular basis, such as every morning at 7 AM.
  • A GP log-in macro launches MOGen and clicks the Import button
  • The timer settings might be for 10-hours, with the Close GP When Done box marked
  • The utility will run during business hours, then shut down at 5 PM

Having the ability to automatically close GP each evening ensures that no client connections are open to the database when SQL backups and maintenance runs.

MFG PowerPack Release 2017-05-01

V12.0.110 / 14.0.57 / 16.0.23 1-MAY-2017
* Vendor Pricing: addressed issue with multicurrency, when viewing a PO in Functional it is incorrectly using the value of the Alternate Cost (when no Price List was available) in the Originating Currency, as the Amount in the Functional Currency.
* Exploded BOM Report: addressed Illegal Address error in LLC calculation (#20171998)
* Quick Disassembly: addressed Illegal Address error caused by closing the IV Transaction window before clicking Process on the QD window (#20172045)
* OSRC Description & Cost enhancement: now work on the “Manufacturing Order/Purchase Order Link by Vendor” window

GP PowerPack Release 2017-04-25

V12.0.107 / 14.0.50 /16.0.18

  • ELA: Addressed syntax error when multiple lots are auto-generated during a PO Receipt and the Item has required lot attributes (#20171935)
  • SOP Print Defaults: addressed issue when transferring from Batch Entry that caused some options to be marked even though the batch did not contain the indicated SOP Type.

MFG PowerPack Release 2017-04-19

V12.0.108 / 14.0.55 / 16.0.21

  • Vendor Pricing: addressed issue with multi-currency where the Last Cost was pulled (in Functional) and used on the PO (in Originating).  It now pulls Last Cost if the PO Line Currency is Functional, and Last Originating if the PO Currency matches the Last Originating Currency ID.

GP PowerPack Release 2017-04-19

V12.0.106 / 14.0.49 /16.0.17

  • Extended Lot Attributes: addressed ‘illegal address’ error (#20171851)
  • SOP Print Defaults: addressed ‘illegal address’ error (#20171240)
  • SOP Print Defaults: added support for printing from SOP Batch Entry window
  • SOP Transfer Auto-Mark Options: added support for Batch Transfer

 

 

MFG PowerPack Release 2017-04-12

V12.0.107 / 14.0.54 / 16.0.20
(1) Scrap Reporting: addressed issue that caused the report to not display the User Defined Scrap Status codes, when present, and instead only used the default codes. NOTE: if you have modified this report, please see the “Preparation Steps” at www.willoware.com/install. The instructions discuss how to export the existing modifications and remove the modified reports dictionary prior to installing the new code.
(2) Updated WW Internal Resources

Consulting Toolkit Release 2017-04-06

V12.0.16 / 14.0.10 / 16.0.6

  • Virtual Triggers: (a) added support for storage or temporary parameters, (b) added an Export utility, (c) addressed issue that caused a ‘cannot find table’ error (#20171196)
  • Execute Stored Queries: addressed issue that caused a get/change error when attempting to execute a Query when the parameters window was left open from a previous query (#20171132)

SpellCheck Release 2017-04-03

V12.0.17 / 14.0.8 / 16.0.5  Changes 3-APR-2017

  • Addressed issue that cause get/change error on wSpellTrigs (#20170975)
  • Added check to ensure SpellCheck does not generate an error if Windows is missing MSXML2.DLL, or cannot access the internet (#20170928)
  • SpellCheck now automatically disables invalid SpellCheck locations, and provides more detailed messages about the issue (#20170129).
  • Setup window now provides more informative error messages for potentially invalid spell checking locations
  • Updated WW Internal Resrouces

Pro Forma Invoicing

Summary of Requirement

ACMECO makes innovative carrying solutions for the imaging world.  These are specialized backpacks, shoulder bags, camera pouches, rolling cases, etc., designed specifically for the needs of photographers and videographers.

Their worldwide distributors place orders on Business Portal, which feeds into Dynamics GP as Sales Transactions. ACMECO has the products made in overseas factories (China), and shipped in containers to the US.

There are two aspects of this process that require additional functionality in Dynamics GP.  First, the sales order lines need to be manually reviewed and split into smaller quantities based on freight container size and requested ship date.

Second, when a container is ready to be shipped, ACMECO needs to produce a pro forma Invoice to their customer for the shipment, and then record receipt of payment against the pro forma invoice.

 

Design Specification

DS0036

Material Test Report

Summary of Requirement

ACMECO manufactures equipment for Oil and Gas drilling.  The materials used (steel) in the manufacturing process have a large amount of testing data associated with each Lot Number that need to be tracked from purchasing through to distribution.

In some cases ACMECO acts only as a broker and never takes possession of the inventory, so they need to be able to record the material information for Lots that do not exist in inventory.

Conceptually the Lot Attributes window in Dynamics GP performs the correct function (in terms of tracking information), but needs to be expanded to track many more pieces of data.  Additionally, some fields are calculated based on the input in other fields.

ACMEco also needs to perform queries in Sales on the data to locate Lots of material that have particular characteristics.

ACMEco sometimes needs to record supplementary test information for a specific customer’s order (large amount of free notes).

Lastly, ACMEco needs to generate a report that shows all of the material information associated with the Lot when the product is sold.  There is a specific format for this Material Test Report (Certificate of Analysis).

 

Design Specification

DS0030

DS0030_MTR_Maintenance

DS0030_MTR_Sample

Smart Bin Lookup

Summary of Requirement

ACMECO manufactures forged steel pressure flanges.  The materials used include alloys, stainless, and carbon.  The material in stock has a wide range of physical attributes, some of which are coded into the Item Number.  To fulfill customer requests, ACMECO needs to quickly locate on-hand material that has certain characteristics (i.e. Material Type and Pressure Rating).

Bins are being used to group inventory by Material/Pressure Rating.

All purchased material is received into a default Bin, then manually transferred (Bin-to-bin transfer) into the correct bin for the material/pressure rating.

There are a large number of bins (about 650), so the user has to scroll through a large number of bins to select the correct one for the material.  This situation also makes it very easy to pick the wrong bin.

The combination of Material, Pipe Size and Item Class determines the Bin.  The Item Numbering logic is as follows:

 

Finish Material Pressure Rating Type Pipe Size
Char 1,2 Char 3,4 Char 5,6 Char 7,8 Char 9, 10

A solution is desired that will look at the Item being transferred, and restrict the list of displayed Bins so that only valid bin(s) are in the lookup.  It should also prevent the user from manually typing in an incorrect bin.

 

Design Specification

DS0027

POP to SOP Freight

Summary of Requirement

ACMECO creates drop-ship purchase orders from sales order processing.  When the PO invoice is received, the freight charges need to be passed along to the customer.  Currently this is a manual process that requires locating the linked sales order, and adding a line to the sales order for the freight charges.

A sales order could be linked to more than one PO, so as each PO is received the additional freight charges are manually added to the sales order as additional “freight lines”.

The desired solution would automate the process of adding freight charges from PO invoices to the linked sales orders.

 

Design Specification

DS0023

One Step Void Check and Voucher

DS0018

Void Check Enhancement

 

Problem Definition

ACMECO is a company that handles property foreclosures. They print checks in advance to be executed during the foreclosure sale. Often the sale is canceled and the checks and associated vouchers in AP need to be voided.

This is a two-step process in Dynamics GP:

1) Void the check

2) Void the voucher

Additionally, after the check is voided it no longer shows which vouchers it was originally associated with.

With a large customer they will have numerous voided checks and vouchers that require quite a bit of manual time to research which voided vouchers were assigned to which voided check. They need to maintain this association for quality and audit purposes.

There are two key requirements:

  1. When voiding payments provide a method to automatically void the associated vouchers
  2. Retain the original apply information, and provide a method to view that information

Design Features

Modifications to Void Historical Payables Transactions (VHPT)

When the applied Payment is voided, and the associated Voucher (or vouchers) is “un-posted”. The Voucher is removed from History and moved back into the Open transaction table. The distributions and any other applied document records are also moved back into the open tables.

The original apply record (of the voided Payment and the Voucher it was applied to) is deleted. This action loses the historical integrity of voided documents. Retaining this information is an objective of this design.

VHPT has the ability to void multiple payments (payments, returns, credit memos) for multiple vendors at the same time. When the user clicks the VOID button, the custom code will capture document information for each voided document and move the historical apply information to another table so that it can be referenced later.

When the void process is complete, a new window will open called Void Applied Vouchers. This window will display all of the Vouchers to which the voided payments had been applied, and all will be auto-marked to be voided.

VoidAppliedVouchers

The user will be able to select a document in the window and zoom to view the document in an Inquiry window. NOTE: the window will only display documents that CAN be voided—i.e. they have no other payments applied to them, or all payments that were applied to them have been voided.

When the user clicks the VOID button they will be prompted to confirm they want to void the selected transactions.

Modifications to Payables Apply Zoom (PAZ)

When the user opens Payables Apply Zoom, which is used to view the apply information for all payables document types, a new Extras menu will be available: Extras >> Additional >> Voided Apply.

A new window, Payables Voided Apply Zoom will be created to show the historical apply information. It will look identical to the existing Payables Apply Zoom window:

Bill of Lading

Summary of Requirement

ACMECO distributes agricultural chemicals, pesticides and fertilizers.  They are currently using Dynamics GP, and are looking for a way to eliminate some manual record keeping by the Traffic Department and Scale Operators, by bringing this external data into the system.

The external information falls into three broad areas:

  • The Traffic Department records information about the freight company or customer’s truck that will pick up the product. This information is used to generate the Shipping Schedule Report
  • Scale Operators record information about each individual shipment that is used to produce a Bill of Lading Document
  • Additional information needs to be captured about each Item Number to handle concentration and purity calculations (Conversion Factors).

Design Specification

DS0014

DS0014_Instructions

BOL Sample

 

Tracking Eaches Selling Feet

Summary of Requirement

ACMECO sells drywall and other building materials.  The products are purchased from vendors in many different units of measure, but are always treated as “eaches” by ACMECO.

For example, drywall is purchased per Thousand Board Feet, but is sold as 1-Sheet.  In some cases this conversion does not result in an exact conversion—such as a conversion yielding 4.999 sheets which should actually be 5.

Dynamics GP requires the unit of measure used on a Purchase Order Receipt and a Vendor’s Invoice to match the unit of measure used on the Purchase Order.

Since ACMECO treats their inventory in whole units, the desired solution would allow them to set up inventory in whole units in Dynamics GP, while being able to:

Print Purchase Orders showing a Unit of Measure used by the vendor (such as MSF or MLF).

Receive the Vendor’s Invoice in the vendor’s units of measure and easily match it to the quantity received (in whole units).

 

Design Specification

DS0012

DS0012_Instructions

 

International Shipping

Summary of Requirement

ACMECO is an exporter.  They need to have a specific format to Quotes, Orders and Invoices to capture insurance and freight/shipping related costs.  These details should appear in an extended “subtotals” sections on the sales documents.

ACMECO needs to list the item(s) being sold, then display one or more lines related to shipping (freight, insurance, duties, etc), then display a subtotal, then have additional lines of added processing costs, and another subtotal, and so on.  While there are often no more than two or three such sections, there could be many.

ACMECO have Spanish and English speaking customers.   A secondary requirement is to support printing documents in Spanish or English.  A Spanish speaking customer should always get documents in Spanish.

 

Design Specification

DS0006

DS0006_Instructions

 

Manufacturer Representative

Summary of Requirement

ACMECO sells direct (where they act as a distributor), and also as a representative of a manufacturer. In the rep sales, ACMECO receives a commission from the manufacturer for the sale, but manufacturing, order fulfillment and invoicing all occur through the manufacturer. Sales Transactions are either completely direct (ACMECO has the inventory) or completely done as a representative (MFSO).

The process is as follows:
– Customer places an order with ACMECO
– ACMECO takes the order and sends order information to the manufacturer (this is referred to below as a Manufacturer’s Sales Order, or MFSO).
– The manufacturer sends back confirmation of order information (quantities & pricing), and commission rates.
– The manufacturer fulfills the order and invoices the customer. The manufacturer sends a shipping notification to ACMECO to alert them that the order has been fulfilled (this may be in several partial shipments)
– ACMECO creates a commission invoice to the manufacturer for the sale (the Invoice is not sent to the manufacturer). Commission Invoice may be for the commission due on a partial shipment.

ACMECO needs to record the sale and keep a historical record of it, and also needs to know for which sales lines commissions have already been invoiced and paid.

The desired solution will:
– Allow ACMECO to take sales orders in GP and track them in history
– Communicate order information electronically to the manufacturer (optional)
– Automate creation of Commission Invoices.

  • A Sales Order is entered in GP
  • When Items are added the system captures the default commission percent for that item and stores it on the Sales Line
  • Order is printed and sent to Manufacturer
  • Manufacturer sends back confirmation of order. This has the Manufacturers Order Number (to be recorded in a SOP User Defined Field)
  • Any necessary changes are made to the Order
  • Manufacturer sends notification of shipment to ACME, and sends Invoice and Product to Customer
  • A Commission Invoice is automatically created in AR for the commission due on the items fulfilled by the shipment
  • When the Order is completely Invoiced it will move to history
  • Manufacturer send payment for Commission, which is applied to the AR transaction.

 

Design Specification

DS0003

DS0003_Instructions

 

Granite and Marble Slabs

Summary of Requirement

ACMEco imports and sells granite slabs. Granite is shipped in a Bundle, which contains a number of Slabs granite where the total square footage contained in the Bundle is about 300 square feet. A Slab is approximately 126 inches by 54 inches, or about 50 sq ft, so there is usually about 6 or 7 Slabs in a Bundle. The between-Slab variation in dimensions can be about +/- 10 IN.

Most granite is imported, and a Packing Slip will be received about 3 weeks prior to receipt of the granite. The Packing Slip details the number of Bundles, Slabs, and the Slab Dimensions. The producer usually measures the Slabs in CM, so ACMECO needs to convert to IN, however some manufacturers do provide measurements in IN.

During receipt each Slab is measured. ACMECO tends toward using a “generous” measurement. The difference in measuring techniques between the producer and ACMECO usually results in a variance between the received quantity and what is on the Packing Slip.

ACMECO will have an Item Number for each type or style of granite, such as Classico or New Venetian Gold. It is further assumed that there will be a separate Item Number for each Thickness—so 2cm Classico has a different number than 3cm Classico.

The Item Numbers will be Lot Controlled, and the base Unit of Measure is a square foot (SQFT). There will be one Lot Numbered generated for each Slab. For example, if a Slab were received with 126×54 IN, LOT123 would appear in the system as having 47.25 SQFT On Hand.

Since a Lot Number is a “group” of square feet of granite, which is actually a single Slab, a key requirement is the ability to store the actual dimensions of the slab attached to the Lot Number. This requirement has effects that flow from PO receiving, to Inventory maintenance, through to Sales Orders, fulfillment, and warranty claims.

The following sections describe in more detail the impact of Slab Dimensions in each area of the Dynamics GP inventory system, and present the proposed solution in each area.

 

Design Specification

DS0002

DS0002_Instructions

 

GPPowerPack Release 2017-03-21

V12.0.105 / 14.0.48 /16.0.16

  • U of M Change Utility: addressed issues that could cause the following tables to not update correctly: IS010210 (Mfg Shipping History Line), MOP1210 (MOP_PickDoc_Line), IV00104 (Item Kit Master), IV00106 (Item Purchasing).  Picklist now updates for all MOs that are not Complete or Closed.

Quickly Create And Update Items with Item Copy

ItemCopy (in WilloWare’s MFG PowerPack Suite) creates a new Item by copying settings from an existing Item.  “But wait,” you say, “Doesn’t GP already have an Item Copy?”

Yes, but the list of what the GP Item Copy can copy is pretty short (see above).

WilloWare’s Item Copy covers much more, including all of the Manufacturing related information.  It has options for copying Notes (Item Notes, Routing Sequence Notes), mapping Routings to the new Item, choosing which BOMs to copy, and much more.

The real unique power of WilloWare’s Item Copy is that it can create AND update Items from an Excel spreadsheet, or from a SQL staging table.

Sample of the staging table

Sample of the Excel spreadsheet

In both examples, the first row shows a “add new item” record, and the second row shows an “update existing” record.

By using the table or Excel import utilities, a large number of new items can be created quickly by copying from “template” items.

It can also update specific fields on existing items, and as part of creating a new item.

When importing from Excel, field updates are created by using the Table Name and Field Name as the column header, such as IV00101.USCATVLS_1.  The “new value” is entered into the rows below the column header.

The Excel spreadsheet shown above would update CAP100 to set the User Category #1 field to “Rev 2”.

The Excel and Table import utilties provide an easy way to load all of the setup needed for new items when implementing GP.  In a simple manufacturing environment, the Template Item could have a simple 1-step routing, which could be copied to new items, saving the step of needed to manually create hundreds or thousands of routings.

It could also be used as part of an on-going integration to support an external quoting system, or engineering system, which needs to create new items.  A simple integration to the staging table (New Item & Template Item) are all that would be needed to automatically create the Items in GP.

MFGPowerPack Release 2017-03-16

V12.0.106 / 14.0.53 / 16.0.19

  • ItemCopy: added functionality to mass import new items from Excel, or via a table Import. The Excel and Table import utilities can also update existing items.
  • Serial/Lot Mass Generate: addressed issue that caused an illegal address error when the Serial/Lot Entry window was close before the Generate window (#20170825).
  • Addressed issue that caused Class Not Registered error in functions that attempt to use Excel when Excel is not installed (#20170777).
  • Sales Forecast Import: addressed illegal address error caused by closing the window while it is importing a forecast (#20170763).

 

 

GPPowerPack Release 2017-03-10

V12.0.103 / 14.0.46 /16.0.14

  • Bank Deposit Filters: fixed an issue with the “Mark All” support added in v11.0.129/ 12.0.83 / 14.0.26 (9-MAR-2016) which could incorrectly calculate totals for the deposit. When this happens the Receipt Count (RCPTCOUNT) and/or Deposit Amount may not match the total of transactions recorded on the deposit in CM20300. To resolve, void the Deposit and re-enter it.  With this release the Mark All button can only be clicked once.  If the Filters are changed and Mark All is clicked again, the user will be warned that previous selections will be unmarked if they continue.

GP Report Extender Video

GP Report Extender (GP-REX) is a Report Writer enhancement that allows easily adding any field, from any table, to any GP Report Writer report.

You do not need to know VBA or Dexterity.  You just need to be able to write a simple SQL query.

The new video demo shows how easy it is to add a field…from a different DATABASE…to a report running in Fabrikam.

View the video here: //youtu.be/ArEgnkmXwpI

 

MOGenerator Release 2017-03-08

v12.0.61 / 14.0.36 / 16.0.14

(1) Go GP2015 (v14)/GP2016 (v16): exposed the following procedures for service based architecture: Extern_CreateMO1, Extern_CreateMO2, Extern_CreateMO3, Extern_CreateMO4, Extern_MORIBatch, Extern, MORISingleMO.

MFGPowerPack Release 2017-02-27

V12.0.105 / 14.0.52 / 16.0.18

  • PowerATP: the routine that retrieves Sales demand was not netting it against linked Purchase Orders. The POs were correctly netting against Sales demand.  The result was that Sales demand would remain in the calculation while the POP supply disappeared.  This has been fixed.  SOP demand now nets against POP so the demand and supply both are removed from the ATP calc when the documents are linked.
  • Serial Number Pre-Assign: now supports Lot Numbers (module name has been changed to Serial/Lot Pre Assign). Also, the module now supports custom business logic for generating serial/lot numbers.

More Info…

To learn more about Serial/Lot Pre-Assign, check-out the manual:

Serial/Lot Pre Assign

 

 

 

MFGPowerPack Release 2017-02-10

V12.0.104 / 14.0.51 / 16.0.17

  • EMOS Options: added “APS Integration” to support Releasing MOs through the Edit MO Status window that were rescheduled by Planet Together
  • EMOS Query: added a query builder to create queries for restricting the MOs displayed in the Edit MO Status window
  • Updated WW Internal Resources

More Detail…

EMOS (Edit MO Status) Query allows building a complex query to retrieve subsets of MOs in the EMOS window.  For example, you could retrieve only MOs that have a Configured BOM and a Routing Sequence that occurs in Work Center SAW.

The EMOS Query joins the following tables in its queries:

Work Order Master

Picklist

Working Routing

Item Master (joined to the Work Order Master Parent Item, and also to the Picklist Component Item)

Item Engineering (joined to the Work Order Master Parent Item, and also to the Picklist Component Item)