Macro-level Adjust-In control for Inventory Transaction Entry

VISUAL installations that run in Actual Costing live and die with the control of transactional costs and inventory layers in the system, and under normal conditions this is mostly a no-brainer with a little training and running some semi-automatic periodic processes. 

Sooner or later, you’ll have to manually Adjust In parts because of inventory, material moves, or some other reason.

And then there’s the human element.   Sigh.

infor ERP VISUAL - Inventory Adjustments
"Not a problem"

When you have non-consumable parts that you carry in your own inventory, these should generally be assigned a cost (if they don’t already have one) if you adjust them in through Inventory Transaction Entry, in order to make sure your inventory layers show the correct value.  If you have Customer-Supplied parts (or other materials you technically aren’t carrying inventory cost on), these typically SHOULD NOT have a cost entered in at transaction time.

Sounds easy, right? 

But since Inventory Transaction Entry has no controls to differentiate these parts by default, someone can accidentally enter in values for Customer-Supplied parts and zero value for regular inventoried goods.  If you don’t find these kinds of mistakes early, your part costing, and eventually your estimating / Engineering Masters will not reflect reality, inventory costs can get pretty screwy, and Accounting may show up at Receiving’s door with torches and pitchforks.

What to do?

We ran into this issue early on after migrating to VISUAL from our legacy ERP.  Since we were already coding our Customer-Supplied parts with a prefix of ‘CS’ to make them easy to spot, we came up with an easy way to help prevent the issues altogether with a simple macro:


*******************************
' Inventory Transaction Entry - OnSave Macro
' Prevent saving of a transaction entry with zero cost
' Erik Kjellquist

if (ADJUSTMENT_IN = True) then

    dim text
    dim prefix

    prefix = Left(PART_ID,2)   ' Determine if part has a ‘CS’ prefix

    ' Flag non-CS parts that have a zero cost
    if ((MATERIAL_UNIT_COST + FIXED_COST) = 0) AND (NOT (prefix = "CS")) then

        MACRO_MESSAGE="Total cost for an Adjust In cannot be zero for " & PART_ID & _
        " because it is NOT a customer-supplied part."
        MACRO_SUCCESS=False

    ' Flag CS parts that have a greater than zero cost
    elseif ((MATERIAL_UNIT_COST + FIXED_COST) > 0) AND (prefix = "CS") then

        MACRO_MESSAGE="Total cost for an Adjust In MUST be zero for " & PART_ID & _
        " because it is a customer-supplied part."
        MACRO_SUCCESS=False

    end if

end if
*******************************
 

This macro uses the OnSave function to allow or prevent a user from saving a transaction based on the details.  We’re looking only at Adjust Ins, in this case the ADJUSTMENT_IN variable, and evaluating whether a CS part is being adjusted in with a zero cost or a non-CS part with a non-zero cost, respectively.  If either is false, MACRO_MESSAGE is given an appropriate string, and MACRO_SUCCESS is set to false, which prevents the transaction from saving.

The macro assumes that parts with a ‘CS’ prefix are customer-supplied in our case, but many companies may not be able to label their parts as such.  You could also label parts as Customer-Supplied using User-Defined fields, Commodity codes, store them in a specific warehouse/location, etc in Part Maintenance or another linked table.

However you define CS parts, this will help anyone adjusting in inventory from making mistakes relative to costing, should help relieve a few headaches down the road, and will prevent those square pegs from going into round holes!


Erik Kjellquist is our special guest author at visualnuggets.com and is the IT Manager at Audiosears Corporation. You'll find Erik contributing and assisting fellow VISUAL users on LinkedIn and Yahoo forums.

Connect with him online at LinkedIn 

 

TrackBack

TrackBack URL for this entry:
https://www.typepad.com/services/trackback/6a01053702bb53970c017d3c99129a970c

Listed below are links to weblogs that reference Macro-level Adjust-In control for Inventory Transaction Entry:

Comments

Feed You can follow this conversation by subscribing to the comment feed for this post.

The comments to this entry are closed.

WHO IS VISUALNUGGETS?

Rich Ferlatte
Results Driven VISUAL Specialist

CONSULTING SERVICES

Of course, I am available for hire!

ERP Implementations & Upgrades
Analytics & Reporting
Integrations & Macros
General VISUAL Support

ONLINE VISUAL WORKSHOPS

Taking it to the next level and designing a program around "Hands On VISUAL Training".

Check them out - there's sure to be one to interest you!

Operational Workshops
Reporting Workshops
Financial Workshops
Inventory Workshops
Quality Workshops

VISUAL EXTENSIONS

BOM Xploder
Drastically improve your BOM visibility and discover shortages at ANY level of your bill of material no matter how deep.
SmartViews
See, analyze, and track information that helps you better support individual, departmental, and your company’s performance metrics and goals.
eBoard - Financial Power App
Developed for accounting professionals looking for powerful and easy-to-use GL reporting software. Access live financial data, drill down to support details and export financial statements to Excel in one click.
Inventory App
This Inventory Reconciliation App provides a systematic approach to control and manage your Visual inventory effectively and efficiently
Credit Card Integration
Easily accept and process credit card payments right from within VISUAL.
ACH Document Processing
Leveraging VISUAL's payment scheduling and batch payment functions, with the added convenience, performance, and security of Electronic Funds Transfer payment processing.
Latitude Manifest & Shipping System
A seamless multi-carrier shipping solution that integrates to Infor VISUAL ERP. See how it can simplify your small parcel and LTL shipping and package tracking.
Sales Tax Automation with AvaTax
Easily automate sales and use tax in VISUAL with AvaTax. No more manually entering data or uploading rate tables and tax information.
Workforce Management with Kebrite Solutions
Streamlines the collection of Job, Labor, Payroll, Time & Attendance, and a vast array of HR related data-- with live VISUAL integration.