Skip to main content

Infor Visual Integration Guide

Connect Infor Visual to MachineMetrics for bidirectional work order and labor tracking synchronization.

SectionDescription
OverviewIntegration type and data flow summary
How It WorksEnd-to-end data flow explanation
RequirementsPrerequisites before setup
Step-by-Step Setup GuideUser account, permissions, MachineMetrics API key, and connection info
Key FeaturesIndirect labor, breaks, resource group mapping, closing tickets from Visual, overlapping tickets, corrections, closed accounting periods, work order reconciliation, and read-only mode
After SetupVerification steps
TroubleshootingCommon issues and solutions

Overview​

The MachineMetrics and Infor Visual integration enables bidirectional data flow between your ERP system and the shop floor, synchronizing work orders, labor tickets, and production data in real time.

Integration Type​

AttributeValue
DirectionBidirectional (with optional read-only mode)
Data Flow (Inbound)Work orders, operations, employees, resources, parts, and deviation reasons from Infor Visual → MachineMetrics
Data Flow (Outbound)Labor tickets and operation completion from MachineMetrics → Infor Visual
Runs OnMachineMetrics Edge Device (physical or virtual)

How It Works​

1. Management — Work Order Transmission​

Work orders are sent from Infor Visual to MachineMetrics every 10 minutes, making them available to operators. The connector sends work orders from your Visual site that are released, plus those closed or cancelled in the last month. Older closed jobs aren't read again. Employees and resources set up at your site, parts, and deviation reasons are sent on the same schedule.

2. Tracking — Labor and Progress Reporting​

As operators work on orders within MachineMetrics:

  • Labor inputs generate labor tickets
  • Work order progress updates in real-time
  • Accurate records are maintained automatically

3. Synchronization — Real-Time Updates​

Eligible labor tickets are written to Infor Visual about once a minute. The connector supports exporting eligible open tickets. Confirm export eligibility for your installation before relying on a ticket appearing in Visual before submission. When the MachineMetrics ticket closes, the connector writes its actual clock-out and quantities to Visual; the job can continue on a new ticket. Closing an operation in MachineMetrics marks it complete in Visual when its labor ticket is written.

4. Scheduling — Dynamic Visibility​

Shop floor managers and production planners gain instant visibility into:

  • Work in progress status
  • Schedule adherence
  • Required adjustments

Changes to the schedule in Visual reach operators on the next work order sync.


Requirements​

Prerequisites​

RequirementDetails
MachineMetrics EdgePhysical or Virtual Edge Device
Infor Visual Version7.1.2 or higher recommended for full functionality
Network AccessEdge device must have direct network access to your Infor Visual database and outbound internet access to MachineMetrics APIs, including erp-api.svc.machinemetrics.com, which carries labor tickets, Timesheets and connector logs. See Network Requirements Guide for details.
Infor Visual User AccountDedicated account with specific table permissions
MachineMetrics API KeyCreated by an IT Admin in the MachineMetrics account for this site. See Step 2.
Site IDYour Infor Visual site identifier (found in the SITE table). A MachineMetrics account takes its work orders from one Visual site.
Company Time ZoneSet on your MachineMetrics company. Visual stores clock times in plant local time, and the connector converts using this time zone. It won't start without one, and a wrong time zone shifts every ticket's times.

Step-by-Step Setup Guide​

Step 1: Create a MachineMetrics User Account in Infor Visual​

Create a dedicated user account with the following table permissions.

If the connector will run in read-only mode (WRITE_TO_VISUAL set to false), the account only needs the SELECT permissions. Grant the DELETE, INSERT and UPDATE permissions before turning write-back on.

DELETE Permissions:

INDIRECT_DIST
LABOR_TICKET
LABOR_TICKET_BREAK
LABOR_TICKET_CURR
PRORATED_LABOR_TX
TRACE_LABOR_TRANS

INSERT Permissions:

INDIRECT_DIST
LABOR_TICKET
LABOR_TICKET_BREAK
LABOR_TICKET_CURR
PRORATED_LABOR_TX

UPDATE Permissions:

INDIRECT_DIST
LABOR_TICKET
LABOR_TICKET_BREAK
LABOR_TICKET_CURR
OPERATION
PRORATED_LABOR_TX
WORK_ORDER

SELECT Permissions:

ACCOUNT
ACCOUNT_PERIOD
ACCOUNTING_ENTITY
ADJ_REASON
APPLICATION_GLOBAL
CURRENCY
CURRENCY_EXCHANGE
CURRENCY_ENTITY
DEVIATION_REASON
EARNING_CODE
ECN
ECN_DETAIL
EMPLOYEE
EMPLOYEE_BINARY
EMPLOYEE_SITE
INDIRECT
INDIRECT_DETAIL
INDIRECT_DIST
ISSUE_REASON
LABOR_TICKET
LABOR_TICKET_BREAK
LABOR_TICKET_CURR
OPERATION
PART
PART_SITE
PART_UNITS_CONV
PREFERENCES
PRORATED_LABOR_TX
REQUIREMENT
REQUIREMENT_BINARY
REQUIREMENT_COST
REQUIREMENT_SCHED
REQUIREMENT_SUM
SETTINGS
SHIFT
SHIFT_DAY
SHOP_RESOURCE
SHOP_RESOURCE_SITE
SITE
SITE_VTA
TRACE
TRACE_LABOR_TRANS
TRACE_NUMBERING
TRACE_PROFILE
UNITS_CONVERSION
WIP_ISSUE_DIST
WIP_LABOR_DETAIL
WORK_ORDER

The connector's LABOR_TICKET_PRORATION_TYPE overrides Visual's proration preference and defaults to NONE. Visual preferences in SITE_VTA (VTA databases) or PREFERENCES (other databases) are a fallback only when the proration request has no override; leaving the environment variable unset still uses the connector default. It reads shift break schedules from SHIFT and SHIFT_DAY. It reads WIP_ISSUE_DIST and INDIRECT_DIST to check whether labor has been posted before changing it. When a completed labor ticket backflushes material whose issue unit differs from its stock unit, Visual reads the conversion factor from PART_UNITS_CONV or UNITS_CONVERSION.

Step 2: Create a MachineMetrics API Key​

The connector uses a MachineMetrics API key to send data to your account. The key decides which MachineMetrics account receives the data and which time zone the connector uses. Without a valid key the connector stops at startup and nothing syncs.

An IT Admin creates the key:

  1. Sign in to MachineMetrics and make sure you're in the account for this Visual site.
  2. Go to Settings → API Keys and click Create API Key.
  3. Name it something recognizable, for example Infor Visual connector.
  4. Select these scopes: erp, reporting, machine, activity and user.
  5. Click Save Changes and copy the key right away. It's only shown once.

You'll paste the key into API_KEY in the next step. Other connectors need a key the same way; see Create a MachineMetrics API Key. Infor Visual keys also use the machine and activity scopes.

caution

Create the key in the same MachineMetrics account the site belongs to. A key from another account sends this site's data to that account. If more than one MachineMetrics account reads the same Visual database, each account needs its own key.

Step 3: Enter the Connection Information​

An IT Admin enters the connection settings on the Edge device. The customer enters credentials directly; they are never sent to MachineMetrics staff:

  1. In MachineMetrics, go to Assets → Edge Devices and select the Edge device that can reach your Visual database.
  2. Open the Edge Services tab and add or edit the Infor Visual service.
  3. Fill in the values below and save.

Your MachineMetrics implementation team can walk you through the screen, but you don't need to share the password with them.

VariableDescriptionExample
API_KEYMachineMetrics API key created in Step 2 (required)********
VISUAL_DATABASEInfor Visual database name (required; the same name that ends DBCFG_DATASOURCE)VISUAL
VISUAL_USERNAMEInfor Visual user created in Step 1machinemetrics
VISUAL_PASSWORDPassword for the user********
VISUAL_SITEInfor Visual site ID (from SITE table)MAIN
VISUAL_ENTITYID from ACCOUNTING_ENTITY table (leave blank if unknown)1
DBCFG_PROVIDERDatabase type — currently only SQLSERVER is supportedSQLSERVER
DBCFG_DATASOURCESQL Server connection coordinate — see format below192.168.1.100/VISUAL

END_POINT and MIDDLEWARE_ENDPOINT (or ERP_API_URL, which takes priority if both are set) can be left blank. They default to https://api.machinemetrics.com and https://erp-api.svc.machinemetrics.com. For a GovCloud account, get these values from your implementation team.

OLDEST_CLOSE_DATE isn't used by the Infor Visual connector, even if the Edge service form shows it. It always reads closed work orders from the last month.

Optional Settings​

These change how the connector behaves. Leave a setting out to use its default. For INDIRECT_LABOR_ID and LABOR_TICKET_PRORATION_TYPE, an empty value isn't the same as leaving the setting out: enter MISC or NONE if the field is on the form. An empty proration type stops labor from syncing. Your implementation team can help you choose.

VariableDefaultWhat it does
WRITE_TO_VISUALtrueSet to false for read-only mode
IMPORT_VISUAL_LABOR_TICKETSfalseIn read-only mode, imports Visual's direct labor tickets from the last 14 days
LABOR_TICKET_PRORATION_TYPENONEHOURS or COST to prorate overlapping tickets. Must be in capitals.
CREATE_INDIRECT_TICKETStrueCreates indirect labor tickets from Timesheets
INDIRECT_LABOR_IDMISCIndirect code used when the employee's shift has none
MINS_THRESHOLD0Gaps up to this many minutes aren't written as indirect time
CALCULATE_BREAKS_FROM_SHIFTfalseDeducts unpaid breaks from the shift schedule
ASSIGN_TO_GROUPfalseWrites labor to the machine's group resource
SYNC_CLOSE_FROM_VISUALfalseCloses tickets in MachineMetrics when they're closed in Visual
SYNC_LABOR_TICKET_DELETESfalseDeleting a ticket in MachineMetrics deletes the ticket the connector wrote in Visual, only if it's unposted and in an open accounting period. Needs write-back on.
RECONCILE_WORK_ORDERStrueRuns the daily work order check against Visual
CREATE_SYSTEM_GENERATED_PARTStrueGives work orders with no part number a generated part in MachineMetrics so operators can still run them
QUANTITY_PER_PART_FIELDblankOperation user field (USER_1 to USER_10) holding parts per cycle. Only positive numbers are used.
OPERATION_DATE_SOURCESCHEDULEDWANT_DATE uses the work order's release and want dates for its operations instead of the operation's scheduled dates

DBCFG_DATASOURCE format: <sql-host-or-ip>[\<sql-instance>]/<visual-database-name>

PartDescription
<sql-host-or-ip>The SQL Server hosting the Visual database (IP address or hostname)
\<sql-instance>Named SQL Server instance, if applicable — omit for the default instance
<visual-database-name>The Visual database name, as shown in the Visual login dropdown

Examples:

192.168.1.100/VISUAL
sql-server.company.local/VISUAL
sql-server.company.local\INSTANCE/VISUAL

Key Features​

Indirect Labor Tracking​

When CREATE_INDIRECT_TICKETS is enabled, the integration creates indirect labor tickets from MachineMetrics Timesheets for clocked-in time without a job. Automatic Timesheet creation requires a machine using ShopPulse labor mode and an operator linked to an ERP employee ID. Operators must clock in and out in MachineMetrics. This workflow does not use ERP Driven sign-ins as its Timesheet source.

  • While an operator is clocked in with no job running, the connector keeps an indirect ticket open and closes it when a job starts or the operator clocks out.
  • The indirect code comes from the shift assigned to the employee in Visual. If the shift has none, the default code set during setup is used (INDIRECT_LABOR_ID, MISC unless changed).
  • Gaps no longer than the configured minute threshold (MINS_THRESHOLD) aren't written as indirect time. A short gap just before a job is absorbed by moving that job's clock-in earlier. Other short gaps, such as a few minutes between the end of a job and clocking out, are left out of Visual labor totals.
  • When a correction in MachineMetrics changes a job's times, the connector adjusts only indirect tickets it created itself. It never changes indirect tickets someone entered in Visual, or posted ones.

Breaks from the Shift Schedule​

The connector can deduct unpaid breaks using the meal and break times on the employee's shift in Visual for that day. Unpaid breaks that fall inside a ticket are recorded as break hours and taken out of hours worked. This is off by default; ask your implementation team to turn it on (CALCULATE_BREAKS_FROM_SHIFT).

Resource Group Mapping​

Individual machines in MachineMetrics can be mapped to resources that represent groups in Infor Visual. To configure:

  1. In MachineMetrics, navigate to Settings → Machine Groups
  2. Find or create the group, ensuring it includes all machines that should write to this group resource
  3. Add the Visual Resource ID of the group to the ERP ID field and save
  4. In your connector configuration, set Assign Labor Tickets to Machine's Group (ASSIGN_TO_GROUP) to true

Both the machine and the group must be mapped in ERP Data Studio, even if the machine points to a placeholder ERP resource.

Closing Labor Tickets from Visual​

By default, labor tickets flow one way once they are open: MachineMetrics creates and closes them in Infor Visual. If a ticket is instead closed directly in Visual, MachineMetrics does not know about it, so the job and the operator's run stay open in the Operator View.

The integration can be configured to detect this and mirror the closure back. When enabled, the connector watches labor tickets that are open in MachineMetrics and linked to Visual, and when one is closed in Visual it closes the matching labor ticket, activity set, and operator run in MachineMetrics, using the clock-out time recorded in Visual.

This is disabled by default. To enable it, set Close labor tickets in MM from Visual (SYNC_CLOSE_FROM_VISUAL) to true in your connector configuration. Once enabled, the connector checks for closures about once a minute.

note

This only closes what it can confirm belongs to the ticket. If the machine has already moved on to a different work order, the newer activity set and operator run are left alone and only the labor ticket is closed.

Overlapping Labor Tickets​

When an operator runs more than one machine at a time, their labor tickets overlap. With proration turned on (LABOR_TICKET_PRORATION_TYPE set to HOURS or COST in your connector configuration), the connector prorates the overlapping tickets in Infor Visual. With HOURS, the hours worked are split across the tickets. With COST, each ticket keeps its full clock hours and the split is applied to labor cost instead. The value must be exactly HOURS, COST, or NONE in capitals; anything else stops labor from syncing.

  • When every overlapping ticket is closed, the whole group is prorated.
  • In HOURS mode, while one ticket is still open, closed tickets get their share of the time so far. The group is prorated again when the last ticket closes. COST mode waits for the group to close.
  • If a clock-in or clock-out is corrected later, the affected tickets are prorated again so their hours match the new times.

If a sync is interrupted partway through a proration, the connector finishes it on a later run instead of leaving the hours half updated. A proration that still can't finish after seven days (for example, because an overlapping ticket stays open) stops retrying. Contact MachineMetrics Support to review and correct those hours.

Correcting Labor Tickets​

Corrections made in MachineMetrics, for example in ERP Data Studio, update the existing labor ticket in Infor Visual. The ticket keeps its Visual transaction ID.

  • Clock-in, clock-out, and good and bad quantity changes are written to the ticket.
  • Switching a ticket between setup and run (production) changes its type in Visual, for open and closed tickets, and its cost rates follow the new type.

Changes to the operator, machine or resource, or work order or operation aren't sent to Visual. Comments and the reject reason are sent along with a correction to times, quantities, or type, but a change to only the comment or reject reason leaves the Visual ticket as it is.

Some corrections can't be applied automatically and need to be made in Visual instead:

  • Changing a ticket between direct and indirect labor.
  • Switching between setup and run while also lowering the quantity, when Visual has generated backflush labor from the ticket.

If a ticket was deleted in Visual, a later correction in MachineMetrics doesn't recreate it.

Closed Accounting Periods and Posted Labor​

The connector doesn't change labor in an accounting period that is closed in Infor Visual.

  • If a correction would change a ticket whose date, before or after the correction, falls in a closed period, it isn't written. Make that correction in Visual.
  • The one exception is a clock-out that closes a ticket still open from that period. It's applied so the ticket doesn't stay open.
  • If the period hasn't been opened yet, the change waits and is applied once the period opens in Visual.
  • Labor that has been posted is never deleted. Confirm posted-labor audit support in your deployed connector before relying on an audit log for corrections; contact your SDM if you need that record.

Keeping Work Orders in Step with Visual​

Once a day, starting an hour after the connector starts, MachineMetrics compares its released work orders and open operations with Visual:

  • A job Visual has closed becomes Completed, and a cancelled job becomes Cancelled.
  • A job Visual no longer has as released at your site becomes Deleted. If Visual releases it again, it comes back.
  • Visual's Inactive flag is ignored. A released work order stays released in MachineMetrics.

If a run would delete more than 10 work orders and more than 20 percent of them, it stops before changing anything. A separate guard holds back standalone operation deletions when their threshold is exceeded. That operation guard does not hold back work-order deletions or restores, operation completions, or operations deleted with their parent work order. Contact MachineMetrics Support when a guard stops reconciliation. This is on by default; ask your implementation team to turn it off if you don't want it.

Read-Only Mode​

The integration can be configured to only read data from Infor Visual without writing labor tickets back (WRITE_TO_VISUAL set to false). This is useful for initial testing, compliance scenarios, or when labor is tracked in a separate system. In read-only mode the connector can also bring Visual's direct labor tickets from the last 14 days into MachineMetrics (IMPORT_VISUAL_LABOR_TICKETS set to true); indirect tickets aren't imported. The Visual user only needs the SELECT permissions from Step 1. Contact your MachineMetrics implementation team to enable this mode.


After Setup​

Once the integration is configured:

  1. Work orders from Infor Visual appear in MachineMetrics
  2. Operators select and start jobs in the Operator View
  3. Labor data syncs back to Infor Visual
  4. Production Schedule Intelligence displays accurate job status

Verifying the Integration​

  1. About 10 minutes after saving the Edge service, open the ERP Error Log and confirm it shows no errors for your site. Fix anything listed, such as a missing company time zone, a failed Visual database login, or a missing table permission, before continuing.
  2. Open ERP Data Studio and confirm work orders, employees and resources from your Visual site are listed. If nothing appears here and the ERP Error Log is empty too, check API_KEY: the connector sends its log entries with that key, so a missing or invalid key leaves no entries at all.
  3. Open Dispatch Schedule in MachineMetrics. This menu requires Production Schedule to be enabled for your account; contact your SDM if it is unavailable.
  4. Confirm work orders from Infor Visual are visible
  5. Have an operator start and submit a test labor ticket in the Operator View
  6. Verify the labor ticket appears in Infor Visual. Its Ticket ID in ERP Data Studio fills in once Visual accepts it.
  7. Check the ERP Error Log again and confirm the test ticket added no errors.

Troubleshooting​

IssuePossible CauseSolution
Nothing syncs after setupAPI_KEY is missing or invalid, so the connector stops at startupCreate a key as in Step 2, enter it in API_KEY, and save the Edge service
Data appears in the wrong MachineMetrics accountThe API key was created in a different accountCreate a key in the account for this site and replace API_KEY
Work orders not appearingDatabase connection failedVerify credentials, datasource, and firewall rules
Work orders sync but labor tickets and indirect time don't, with timeout or server errorsFirewall blocks erp-api.svc.machinemetrics.comAllow outbound HTTPS to that host. See Network Requirements
A labor ticket is held with The SELECT permission was denied on the object '<table>'The Visual user is missing a SELECT grant that Visual needs while saving the ticket, for example PART_UNITS_CONV when material is backflushedGrant SELECT on that table. Held tickets keep retrying and go through on the next retry
Missing tables/permissionsUser permissions incompleteAdd missing permissions from Step 1. When upgrading, compare the existing user's grants against Step 1.
Labor not syncing backWrite-back disabledContact your MM SDM to enable write mode
Connection timeoutFirewall blocking EdgeEnsure Edge can reach Infor Visual database directly
Wrong site dataVISUAL_SITE incorrectVerify site ID from the SITE table
Indirect tickets not createdIndirect-ticket creation is disabled, or no eligible Timesheet is availableCheck CREATE_INDIRECT_TICKETS, ShopPulse labor mode, and the ERP employee link. Confirm clock-in/out creates a Timesheet. If no shift code is configured, the default is MISC unless overridden
A labor ticket keeps failing to syncVisual rejects it, for example an employee with no pay rate at your site, or a missing operation, resource, or employeeThe ticket is retried every minute, then hourly after 120 failures; it isn't dropped. Fix the cause in Visual and it goes through on the next retry
No labor syncs at allProration setting isn't exactly HOURS, COST, or NONECorrect LABOR_TICKET_PRORATION_TYPE (capitals)
Ticket times are off by a fixed number of hoursCompany time zone is incorrect, or the connector does not recognize its stored valueCheck Settings → Company and contact your SDM to change the time zone or investigate connector version and time-zone handling. The company screen displays the value but does not edit it.
A correction in MachineMetrics didn't change the Visual ticketThe ticket's date is in a closed accounting period, or the correction is one the connector can't apply (see Correcting Labor Tickets)Check the period in Visual and make the correction there
Hours on overlapping tickets change after the last one closesIn HOURS mode, closed tickets get an interim share while another overlapping ticket is openExpected: the group is prorated again when the last ticket closes


Getting Help​

  • Setup Assistance: Contact your MachineMetrics Solution Delivery Manager (SDM)
  • Technical Issues: Email MachineMetrics Support
  • Infor Visual Configuration: Consult your Infor administrator or partner