Dispatcher to Submit Keypresses from the Init() or Using Action() in JScripts

Over the years I’ve used a variety of methods to call things like PageDown from within my scripts, some more pretty than others.

You would think that in the Init() you can just call controller.PageDown() and all is good in the world.

import System;
import System.Windows;
import System.Windows.Controls;
import MForms;

package MForms.JScript
	class showPageDown
		var gDebug = null;
		var gController = null;
		var gContent = null;

		public function Init(element: Object, args: Object, controller : Object, debug : Object)
			gDebug = debug;
			gController = controller;
			gContent = controller.RenderEngine.Content;



And if you test with the Script tool within Smart Office it is…until you deploy it and then you get the “Duplicate request skipped” message in the logs 😦

Continue reading

Posted in Development, M3 / MoveX | Leave a comment

Filtering and ListViews – PositionFields

I have a project that I am working on which involves the need to set the ListView filter fields.

Back when I was much younger and far more naΓ―ve πŸ™‚ I would brute force my want to locate the control (https://potatoit.kiwi/2010/10/10/manipulating-smart-office-column-header-filter-values/). Years later I saw the light and stumbled across the fields but I didn’t ever get around to posting about it. Of course, I couldn’t remember where I had found the fields nor could I find a posting about it on my blog so I did some investigation.

I also wrote some code around exploring what I thought was the appropriate field list and expanded that as it became more apparent that I was on the right track, until finally I wrote some functions to test that I would actually use.

Continue reading

Posted in Development, M3 / MoveX | Leave a comment

Bulk Load APIs in 13.4

Another heads up. In 13.4 a bulk load API was introduced – so instead of having to send single transactions in a REST call, we can send multiple transactions.

KB: 1831472 “M3 Foundation Integration Guide for Developers” has an attached document that discusses the bulk load APIs (and some interesting other tidbits) and some example Java code.


Posted in Development, Interesting Infor Articles, M3 / MoveX, Misc | 2 Comments

IES – Search Queries De-mystified

Enterprise Search – the much lauded but often horribly misunderstood ‘google for M3’. I thought I had penned a post around IES and some fantastic information I had been provided via support by one of Infors staff when trying to track down why IES was not returning the results I had expected, but though started, it never got finished.

Roll on to this morning where I got an email informing me that there was a new document (KB: 1687355) on M3 Search examples, this is a PowerPoint with a lot of fantastic detail! Kudos Infor! Thank you Magnus for the heads up!

Link below for convenience:



Posted in Interesting Infor Articles, M3 / MoveX, Misc | 3 Comments

How We Did It – DR and M3

Recently I was asked about Disaster Recovery and M3. And though I haven’t really embarked on discovery of how companies handle M3 and DR I do hear people say they struggle with the changing of IP Addresses.

Which prompts a, huh? Why are we talking about changing IP Addresses?

This post is really to discuss the DR that I set up for IFL and because I had run in to this perceived need for changing IPs.

For us, it worked well, wasn’t too expensive to implement, and cheap to run. We were lucky in that warm standby DR was perfectly adequate, our M3 DB was only about 60gig and the business was prepared to accept the potential loss of ~24 hours of data.

Continue reading

Posted in How We Did It, M3 / MoveX, Misc | 2 Comments

Event Analytics – And Slight More Complex Email Notifications

Last month I posted about how to create basic email alerts fired from Event Base Alerts (https://potatoit.kiwi/2016/11/06/basic-email-alerts-event-based-alerts/)

Which is nice and lightweight and all contained within the M3BE. However it is pretty limited with only three different filters that you can define. As I mentioned in the previous post, you can user e-Collaborate or ION – of-course I missed Event Analytics as another option – it has a drools engine for us to define rules and then ‘do stuff’ πŸ™‚

This post is about the ‘do stuff’ being send an email to a couple of people.

Continue reading

Posted in M3 / MoveX | 8 Comments

Adding Fields to a Panel and the Customer Extension Table

I’m waiting for a database export when it occurred to me that I haven’t discussed the Customer Extension table which is really terrible as I’ve been using it for quite a while and it is awesome!

The customer extension table APIs allow us to store data within M3 that M3 doesn’t have fields with. There are some fantastic examples in the net change reports where it is combined with the native M3 events to populate data based on different events automatically, and of-course we can use them through the APIs to store additional data. We can also incorporate these values in to the new style ListViews without any code!

The APIs provided are quick and easy to use.

This post is to provide a Jscript which allows you to add a TextBox to a panel and it will store the data from the TextBox in the customer extension table – how often do people want to do that? πŸ™‚

Continue reading

Posted in Development, M3 / MoveX | 30 Comments