Posted by Jaime on August 14, 2013

Why you need to dispatch Outside Services in VISUAL

Outside services (OS) on work orders need to be purchased and linked to a purchase order number.

Yeah, Yeah …. you know that already. 

Infor VISUAL ERP - Global ScheduleBut did you know that if you don’t dispatch these OS purchase orders in VISUAL, it can greatly affect the Concurrent Scheduler?

Dispatching in VISUAL allows you to keep track of parts that are physically sent to your OS vendors. Each service dispatch is linked to the corresponding purchase order which in turn is linked to the work order.

The Concurrent Scheduler works with the dispatch records when it is performing the service checks (if selected).  If the parts are not dispatched, then the Scheduler does not recognize that it is out at the OS vendor and will just continue to plan using the transit days specified for the SERVICE ID in Outside Service Maintenance.

The PO’s Desired Received Date will only be used if the OS is dispatched.  This should only be of concern if you’ve checking service availability when generating your schedule.

Another tip: Be aware that if you do change the desired received dates for OS purchase orders --> be sure to update the dates on the dispatch records too!





Jaime Bzdok is a guest author of and is an active participant in the VISUAL community.  Jaime is the Director of Customer Engagements at Visual Business Solutions, an Infor Channel Partner. 

Connect with Jaime online at LinkedIn 

Thanks for stopping by! If you liked this VISUAL NUGGET, you might consider
following me on twitter.
Posted by Richard on June 13, 2013

Be careful when using the Material Requirement Part Replace function

The Material Requirement Part Replace function is a great feature of VISUAL when you have to replace a large number of requirement cards for the same Part ID with a new one.

Infor VIUSUAL ERP - Manufacturing Window
The REPLACE feature can be found under the EDIT menu of the Manufacturing Window

If you need to do a mass update, you can selectively replace Part IDs across Eng Masters, Quote Masters and/or Work Orders.  This function also allows you to change quantity (Qty Per, Fixed, Scrap) and cost information during the replacement process.
Infor VISUAL ERP - Manufacturing Window
The Material Requirement Part Replace window.


So this feature can save you a lot of time and effort

BUT it can also cause you a lot of grief if you're not careful.

First of all, I'm sure you're aware that this feature has the potential to modify a significant number of material requirements (especially if you hit the "REPLACE ALL" button) - so proceeding with caution is warranted

What you may not know is that this has the potential for causing major delays and issues the next time you run costings!  Say What?

This feature, if not carefully used, will allow you to replace materal cards on CLOSED work orders if the material card is UNISSUED (regardless of the cards' status).  And because of the way VISUAL works - these work orders will then have their POSTING CANDIDATE set to YES and will be re-assessed by the costing utilities.  Whoa!

This issue only applies to replacing parts on work orders.  So be very sure before you commit to replacing parts on a large number of work orders - especially if you hit the "REPLACE ALL" button

The Material Requirement Part Replacement window is definitely missing a much needed filter (or column) --> Work Order Status.  That or only show orders that are FIRMED/RELEASED.  This would be a great Enhancement Request.

Posted by Jason on June 5, 2013

Sweep the Leg
Sweep The Leg

There’s always that big debate of whether to use leg and detail and having one complex engineering master, or breaking it up into layers.  From the recent projects I am working on, the latter is working out excellent.


Here’s how we use Easy lean to simplify our builds, simplify planning, and reduce inventory on the floor. 

We had many complicated builds using a lot of leg/detail.

Here is an example of an engineering master that goes 6 fabricated layers deep comprising of 50 sub IDs (legs).

  • Top layer – 1 final assembly
  • 2nd layer – 5 sub IDs
  • 3rd layer – 8 Sub IDs
  • 4th layer – 10 Sub IDs
  • 5th layer – 12 Sub IDs
  • 6th layer – 14 Sub IDs

We broke out each of these Sub IDs as make-to-stock parts.  As an order was created for the top level part, Easy Lean would go through the requirements and create firmed work orders with appropriate release dates for each.  Release dates for each part is calculated by the parts “buffer”.  The Buffer is basically the time it takes to complete that work order.  In the example above, here are the buffers we assigned to each layer:

  • Top layer – 1 final assembly - 4 day buffer
  • 2nd layer – 5 fabricated parts – 5 day buffer
  • 3rd layer – 8 fabricated parts – 3 day buffer
  • 4th layer – 10 fabricated parts – 2 day buffer
  • 5th layer – 12 fabricated parts – 3 day buffer
  • 6th layer – 14 fabricated parts – 2 day buffer

When you calculate out the buffers and how the “layers” will be released it would look something like this:

Infor VISUAL ERP - Buffer Easy Lean

Notice we only gave the shop floor what they needed.  Instead of 50 work orders (sub IDs) getting printed and released all at once; the work orders were released in ‘layers’.  No human intervention was required in the planning of things as Easy Lean planned it all.  We could also set up replenishment levels and min/max/multiple rules in Part Maintenance for each make-to-stock part and plan all those to stock.

There are many other benefits of Easy Lean but what I find the most beneficial is this “MRP automation” it can do.  As long as you can define the logic it needs to follow, Easy lean will do all the planning for you!

Jason Snoeyink is a frequent contributor to and is an active participant in the VISUAL community. 

Connect with him online at LinkedIn 

Posted by Richard on May 20, 2013

What does "Use All Supply before Applying Leadtime" exactly mean?

Good question!

The setting determines how MRP will create planned orders (or not) to satisfy demand.  If this option is turned on, VISUAL applies all quantities for a part from open supply orders (ie: purchase orders, work orders, and incoming inter-branch orders) in calculating the planned order quantity.

Here's a simple scenario:

A work order has been entered calling for 10 units of Part ABC.  You have zero on hand, BUT you do have an open PO for 100 units of part ABC to be delivered in 2 months (60 days).  The leadtime for part ABC is 10 days.

If you have this setting turned ON - VISUAL will not create a supply planned order for this part because you already have an open PO for it.  This PO is considered "available supply". 

The potential impact here is that if your purchasing agent is not on top of their game, the work order will only be scheduled to start in 2 months if "Check Material Availablility" is checked.  OUCH!

This is not to say that you shouldn't use the "Use All Supply before applying Leadtime" option.  You should use it to keep inventory levels down (especially on high $$$ items).  Just make sure all parties are on the same page and running exception reports in the MATERIAL PLANNING WINDOW to expedite (or push out) orders when needed - saving everyone a lot of grief!


Posted by Richard on February 13, 2013

Yes, you CAN use the drag & drop feature to reschedule operations in the Standard schedule

I happened to be referring to the VISUAL manuals on scheduling when I came across an item stating that you cannot Drag and Drag operations in the STANDARD schedule

This is definitely not the case....unless I've been using a hacked version of VISUAL - which I'm not.

What's this Drag and Drop feature?  The Drag and Drop feature allows you to visually move and reschedule operations in the Scheduling window.  You can set when an operation should start or when it should finish - basically ignoring what VISUAL has determined to be your best schedule based on current conditions and system parameters. 

So you can literally have complete control of everything on the floor. 

MasterAnd why not use it?  You are king!  You are master of your domain. 

Well, I suggest you control yourself and limit your use of it.  When you intervene and move operations, you're actually FREEZING the operations to the new dates and times.  VISUAL will not schedule FROZEN operations and will schedule other jobs around them.  VISUAL now has to deal with these "fixed" operations when scheduling jobs.  And the resulting schedule may not be what you expect only because you may have forgotten about operations you had FROZEN in the past.

But I digress...

If you find yourself not being able to drag and drop operations in the STANDARD schedule, set the following in your VISUAL.ini file or Preference Maintenance.

[Scheduling Window]

And remember...self-discipline ;-)

Posted by Richard on February 7, 2013

Validating your custom drop-down list

The Customizable UDF (CUDF) feature in VISUAL allows you to create and define your own list of fields that you can integrate into the VISUAL interface and capture information particular to your business.  

The drop-down list is one such field you can add.  When you create the down-down CUDF you have the option to populate the list manually or link it to data in your VISUAL database.

Infor VISUAL ERP - Custom User Defined Fields

The drawback to these drop-down lists is that VISUAL does not validate the information entered against the available options in the list.  It's of no fault to VISUAL.  I've been calling this field a drop-down list but it's actually a ComboBox.  A combobox is a combination of a drop-down list and a single-line textbox, allowing the user to either enter data directly or choose from the list of existing items. 

So basically it's a free form field - allowing the user to enter anything.  This may be a problem if you are depending on your users to only enter values that are defined in the list.

To enforce this you will need to do this yourself via a database trigger, workflow, macro, or a big heavy stick.

So before you grab that stick - the example below may give you an idea how you can handle this using a macro. 

The macro validates the data entered in a CUDF by doing a database lookup on the USER_DEF_FIELDS table which contains down-down definitions.  Apart for the database connection information - you will need to provide the following macro variables:

Variable: UDF_Caption
This is the caption (label) of the drop-down field.  In my example I'm using "Customer Service Rep".  NOTE: I don't use the UDF-XXXXXXX identifier because I seen VISUAL renumber these IDs.

Variable: UDF_VEModule
Specify the VISUAL program/module (VMORDENT, VMPURENT, etc)

Variable: UDF_Area
Where in the module the CUDF is contained.
Header area = ""
Grid Line Item = "tblColLineItem"
Delivery Schedule = "tblEditDelSched"

Variable: UDF_VALUE
The CUDF string (value) to validate.  In my example, I'm using udfStrCombo1 which is the CUDF field variable containing the Customer Service Rep value

In my example, I'm validating the value entered in the Customer Service Rep field which is a drop-down list.  Download the macro



strServerName="E N T E R    N A M E    O F    D A T A B A S E    S E R V E R"
strDatabase="E N T E R    N A M E    O F    D A T A B A S E"
strUserName="E N T E R    U S E R N A M E"
strPassword="E N T E R    P A S S W O R D"

strcnn="Driver={SQL Server};Server=" & strServerName & ";Database=" & strDatabase & ";Uid=" & strUsername & ";Pwd=" & strPassword & ";"


'Variable for caption (label) of the CUDF to validate
UDF_Caption="Customer Service Rep"

' Variable to indicate where the CUDF is located in the module
' empty string = Header area
' tblColLineItem = Grid line item 
' tblEditDelSched = delivery schedule

'Variable to indicate the VISUAL program(module)
'VMORDENT = Customer Order Entry
'VMPURENT = Purchase Order Entry
' etc....

'Variable for string value (user input) to validate

set rs = CreateObject("ADODB.Recordset")
set rsCHK = CreateObject("ADODB.Recordset")

"WHERE UDF.PROGRAM_ID='" & UDF_VEModule & "' AND UDF.LABEL = '" & UDF_Caption & "' AND UDF.DATA_TYPE = 1005 AND ISNULL(UDF.TABLE_ID,'') = '" & UDF_Area & "';" SQL, strcnn
if not rs.eof then
 if ubound(arrList)>0 then

  SELECT CASE arrList(0)
   CASE "l=1"
    '*** STATIC LIST

   CASE "l=2"
    SQL="SELECT " & UDF_DBCol & " FROM " & UDF_DBTable & " WHERE " & UDF_DBCol & "='" & CUDF_VALUE & "'"

  END SELECT SQL, strcnn
  if rsCHK.eof then
   msgbox "Error: user input does not match available values in list"
   msgbox "We're good"
  end if

 end if
end if


Posted by Richard on February 5, 2013

Using the REFERENCE TYPE to limit the available documents that your users can reference to

The Document Reference feature allows you to associate documents to various records in VISUAL.  These documents can be drawings, specifications, standards, images, etc - basically anything that is in an electronic format. 

Your users can then link to these documents throughout VISUAL.  When documents are referenced - it allows you to view, email, and print them with the record itself. 

For example, you can have a work order linked to a drawing file that you can have printed along with the work order traveller.  Another example - emailing a purchase order to your vendor with an attached spec file that you referenced on the PO.

You get the point.

Managing these documents is done through the Document Maintenance window.  All documents are managed through this module.  When you first start you may only have a handful of documents that you may what referenced.  But as your list  grows - you'll want to start looking carefully at the REFERENCE TYPE field.  This field allows you to dictate where in VISUAL a document is available to be referenced.

Infor VISUAL ERP - Document Maintenance

So if you have a document that is part-specific you can set the reference type to "Part" so that it is only available to link to from PART MAINTENANCE.

If you want a document to be available throughout VISUAL, then set the reference type to GENERAL.

Posted by Richard on February 4, 2013

Deleting multiple lines in the VISUAL grid

Have you ever wanted to select a group of lines in a grid of VISUAL (such as the customer order lines) and hit the delete button on the toolbar to remove them all?  It won't work (in most cases).  It will only mark the one line that has focus for deletion.

Infor VISUAL ERP - Order Entry

Next time - hit the DELETE (DEL) key on your keyboard.  You should get what you want.

Yes I know that this may be an obvious post to some, but you'd be surprised by the number of VISUAL users who will find this post to be a revelation!

Infor VISUAL ERP - Revelation
Classic moment - however I prefer Chris Farley's rendition


Posted by Wayne on December 20, 2012

Purchase requisition approval by G/L account

Infor VISUAL ERP - PurchasingA few years ago Triumph Gear Systems of Macomb Michigan was in the process of implementing the purchase requisition module for requesting expensed items.  The company was using a manual system that would allow users to fill out either a paper form or an electronic form in Microsoft Excel for requisitioning expense items.  Once this requisition form was filled out the appropriate signatures based on the G/L account number or work order was needed for the purchasing department to issue a purchase order.  This was a daunting job to determine who needed to sign-off on each line of the requisition multiple account numbers.  They decided that an electronic solution was needed that would allow them to retain their level of approval by G/L account number.  The current Visual software allowed for sign-offs using messaging and workflows but not to the level of complexity that was desired for their company. 

Infor VISUAL ERP - Purchase Requisition Entry

A solution was designed to satisfy this need.  A custom developed application was designed for the approval system.  The users still use Visual Manufacturing to enter purchase requisitions just as it was designed.  All users have access to place these requisition lines in either “Draft” or “In-Process” status.  No users have rights to change the status to “Approved” within Visual Manufacturing.  Only by using the custom application can a requisition status be changed from In-Process to Approved.  This forces the signers to use the custom application to approve requisition lines that they have the right to do so.  Each signer is given one or more accounts that they are responsible for.  For each of these accounts they are issued a “Max” value equal to their signing authority.  This allows for tiered approvals on each account based on approval levels.

Infor VISUAL ERP - ApproversThe example shown here displays the approvers for the “SUPP AND EXP ASSEMBLY” account.  There are four signers that are authorized to signoff for this type of expense, as long as the line amount is less than their “Max Amt.”   If the line had been valued at $3,000 only one signer has the proper authority to approve.

Once a requisition is placed in the “In-process” status it is waiting for approval from the appropriate signer(s).  The signer has the ability to either accept or decline any requisition line they are authorized for.  Once this is decided the line status is changed to either Accepted or Cancelled. Once all lines have been approved or declined the purchase requisition status is changed to Approved.

Below is a screen capture of the approval system that is used to achieve the goals set forth by Triumph Gear Systems.  This solution is using a combination of Visual Manufacturing and a custom application to accomplish this.  The application has been in use since 2009 and has since processed approximately 8,000 requisitions using this system. 

This goes to show that Visual is only limited by your imagination and just about anything can be accomplished given the right tools and time.

Infor VISUAL ERP - Approval System

Wayne Bourdage is our special guest author at and is an active participant in the VISUAL community.  He has custom developed several software solutions to enhance the Visual product, allowing it to run more efficiently by simplifying and automating redundant tasks 

Connect with Wayne online at LinkedIn 

Posted by John on December 20, 2012

What is the Inventory Balance Report used for?

Infor VISUAL ERP - Inventory Balance ReportThe purpose of the Inventory Balance Report (IBR) is to show the value of inventory on hand at each month end period. You can print it in summary or by FIFO layer.

The report is driven solely by the INVENTORY_BALANCE table which is updated by the cost utilities.

If you're in a STANDARD COSTING environment then the IBR really does not serve a purpose.  Basically, the inventory balance for any given month is the quantity on hand  x  the total unit standard cost in effect at that time.

Unfortunately the INVENTORY_BALANCE table in a FIFO database eventually closes FIFO layers off and they are removed from the table for the next period.  In a standard cost database this never occurs and the table continues to grow.  At one of our client more than 50GB (yes GB with a G!) of the database was in the inventory balance table and it was providing no benefit what so ever. The table was truncated and guess what…costing performance improved dramatically, especially for the first run of the month when this table is updated for the new period.

If you are standard cost consider truncating the data from the INVENTORY_BALANCE table.