What is M3 H5 Client?

M3 H5 Client provides an HTML 5-based user interface for accessing work-related information and applications from the M3 business system. In this post by Jack Rubillar gives you a quick introduction to the new web client for M3. M3 Workplace has been replaced with the H5 client and since it has support for more than one browser and Workspace / Infor Ming.le this is a great improvement.

There are two editions of M3 H5 Client.

M3 H5 Foundation

This is the base version, which provides the functionality for running M3 Transactions. It has only basic features compared to the Enterprise edition, and Web browser support only includes Internet Explorer. Installing M3 UI Adapter already enables the Foundation edition.

M3 H5 Enterprise

This is the extended version, with additional features such as:

  • Interpretation of personalizations
  • Shortcuts
  • Saving of Context Publisher settings
  • Web Mashups
  • Multi-Web browser support (IE9, IE10, Chrome, and Safari)

The Enterprise edition is enabled by installing the M3 H5 Enterprise in LifeCycle Manager. To enable access to the features of this application, users must be assigned to the app-enterpriseuser role in Grid.

iphone
M3 H5 Enterprise running in Safari on an iPhone

M3 H5 Client and Infor Ming.le (formerly Workspace)

Infor Ming.le provides the first level navigation for one or more Infor Applications as well as an infrastructure to mash-up these applications. This includes the capability to send context data between Infor Core products and Web Parts (a.k.a. Context Applications).

As an Infor Core product, M3 H5 Client runs inside Infor Ming.le and is able to utilize its infrastructure to communicate with the built-in Web Parts of Infor Ming.le.

h5_Mingle

Samples of M3 H5 interacting with Web Parts (see figures below):

  • Shortcut web part – M3 H5 can add M3 Bookmark items to that web part. Clicking that M3 Bookmark item will open that record in M3 H5
  • Map web part – When configured, the Map web part will display the location of the record selected in M3 H5
  • Currency Converter web part – When configured, the currency web part can be used to calculate the amount in another currency

h5_Mingle_webpart

h5_Mingle_map

h5_Mingle_currency

M3 H5 can also interact with “custom” web parts by having that web part process the InforBusinessContext data. M3 H5 can be configured to publish the InforBusinessContext data every time a panel is opened or a record is selected. Sample web part that consumes InforBusinessContext data is the Related Information web part (a.k.a DAF Widget).

The InforBusinessContext data is the standard context data structure and is used by different Web Parts and Infor Core products. However, if the web part requires a different structure for the context data, you can add an entry in the Context List grid property (see MUA Install Guide) that will match the required data structure of that web part.

M3 H5 also communicates with other Infor Core products thru application drillback.

  • In IES Web UI, clicking on a search result will make Infor Ming.le switch to M3 H5 and open the record for that search result.
  • When you click a document link in M3 H5 that has a source of “Document Archive”, Infor Ming.le will switch to DAF and will perform a DAF search based on that link.

M3 H5 also integrates with Infor Social Space. M3 H5 can post screenshots and links to the Activity Feed of a Group or selected Users. Clicking on this link will make Infor Ming.le switch to M3 H5 and open the M3 Bookmark specified on that link.

h5_Mingle_bookmark

M3 H5 also supports links that are generated by the Mail button in the “Add Shortcut” window of Ming.le. The Mail button generates a URL and opens Outlook or the default mail client. When the recipient clicks on this URL, it will first open Infor Ming.le and then it will switch to M3 H5 and open the M3 Bookmark specified on that link (see Figure 7).

H5_mail

Future versions of M3 H5 Client will have more integration to the different features of Infor Ming.le.

By Jack Jubillar

35 thoughts on “What is M3 H5 Client?

    1. karinpb Post author

      Hi Gerwin,
      I would not call it transform but we are working on an Mashup SDK solution for the H5 client in the future and for building web applications. Web Mashups with your own web controls is one way to develop new application that exists today.
      The next version of H5 Client (M3 User Adapter) 10.2.2, planned for release in October, will have basic support for scripting with JavaScript. The Mashup SDK will be released in the October – November timeframe. We will post more information on the blog once it is released. The SDK is for the 10.2.2 version of the H5 Client (M3 User Adapter).

      Reply
  1. Gerwin ten Brinke

    Hi Karin,

    Thank you for your reply.

    Can you give any hint about the techniques that will be used in the H5 client Mashup SDK? Is this all HTML and javascript or will there be a .NET based solution like the Smart Office SDK?
    I would like to know this so we can prepare our selfs.

    Reply
  2. karinpb Post author

    Hi,
    It will not be a .Net based solution. If we can deliver any server parts they would be for our ION Grid Java server so the server would be in Java. But the server part is optional. The client APIs will be based on HTML and JavaScript. To start with I can recommend you to look into TypeScript – if you haven’t done that already. As for the other details I have to check how much information I can share at this time.

    Reply
      1. karinpb Post author

        Hi,
        Scripting for H5 is available in M3 User Adapter (H5) 10.2.2.0. If you are interested in building stand-alone web applications there will be a Mashup SDK release within a week or two but it is not related to the scripting you can do in the H5 client.

    1. jrgwan

      Hi,
      I have read your post regarding Smart Office SDK and Typescript. I have downloaded the package from InforXtreme and now I want to use it to build my first simple examples like a simple Dialog with integration a API for example CRS610MI-LstByName.
      Do you have any informations about SmartOfficeSDK like “myFirstApp” or a Howto or links or contact persons or documents 🙂
      Best regards
      Jörg

      Reply
      1. karinpb Post author

        Hi Jörg,
        Since this question is on a M3 H5 Client page I assume that you mean the Mashup SDK for H5 development, scripts in H5 or full applications using Odin framework. There is no other documentation than the one that is in the SDK and/or Script Developers guide. You can ask specific questions on this blog and I’ll forward it to client developers in H5. For scripts in H5 there are a number of examples. There might be a dialog example in there as well but if we don’t you can ask questions under H5 Scripting. I think there are courses available from Education on this topic as well.

  3. absgbr

    Hi Karin,

    Is the SDK voor the H5 client already released and if it is released, where can we obtain it?

    Kind regards,

    Gerwin ten Brinke

    Reply
    1. karinpb Post author

      Hi,
      Scripting for H5 is available in M3 User Adapter (H5) 10.2.2.0. If you are interested in building stand-alone web applications there will be a Mashup SDK release within a week or two but it is not related to the scripting you can do in the H5 client.

      Reply
    1. karinpb Post author

      The .webnashup is not uploaded in LCM but in the H5 Enterprise Administration tool. It’s a web application under /mashup/admin at least I think that is the URL. It’s on the same server as H5. The URL is documented in the H5 Enterprise Admin guide.

      Reply
      1. Mahmoud Tawfik

        Many thanks for your reply. I could find how to deploy the webmashups like the way you said. However, some mashups, that are deployed normally on LCM and works on Smart Office, can’t be exported as webmashups (it shows error message “Object reference not set to an instance of an object”) and others are exported but when opened, they load forever without opening the mashup. So is there any special handling needed to export project as webmashup file.

  4. Mahmoud Tawfik

    Hi karinpb
    I was wondering whether “DataDetailPanel” and “DataListPanel” controls work fine on H5 (Enterprise Edition 10.2.0.0.21)? as whenever I add any of these controls to my mashup, their webmashups keep loading forever when opened.

    Reply
    1. karinpb Post author

      Hi,
      Yes, these controls should work just fine in 10.2.0.0.21. My thoughts on this is that probably the URL for the MI Service / Data Service is not properly configured that’s why it’s stuck on loading.

      Reply
      1. Mahmoud Tawfik

        Thanks for your reply,
        URL is configured properly and it works just fine on Smart Office and calls a WS but when deployed as webmashup, it loads forever.
        mashup has no other components other than a so there can be no other problem.
        So am I missing any extra step for webmashup handling other than just exporting and deploying to H5?
        >>>>>>>I had a thought….do web services need to be deployed on H5 as well or we use the normal deployment on LCM with M3 Router URL??<<<<<<<

    2. karinpb Post author

      Type WS is not supported in web. So if you have a WS you need to use REST type for the datapanels. It’s possible but harder to bind to values.

      Reply
      1. Mahmoud Tawfik

        Dear Karinpb
        I would like to thank you again for your replies and support.
        I could configure DataListPanel to call a WS using REST configurations and could bind the result to be displayed on the components. I used the post that you previously wrote (https://smartofficeblog.com/2012/01/05/calling-a-web-service-using-ws-and-rest-data-services) and it works fine when tested in Smart Office. However, when deployed on H5 it raises status code “415” with “Unsupported Media Type” exception. As far as I could search, it is a content type issue as the request is sent with “Content-Type: application/json” and service expects “text/xml”. But according to the configurations that you mentioned in the other post property “” should specify the content type but apparently it doesn’t work.
        Also I noticed, using browser inspector, that URI that is called is not the one that I specified but a proxy (%DOMAIN:PORT%/mashup/proxy/web/%PROJECT_NAME%/%XAML%/%PANEL%/%Operation%). So is there any missing configuration for me?

        Thanks again and sorry for bothering.

  5. karinpb Post author

    Hi,
    Are you using Type WS or REST in the DataPanels? When it comes to web development I usually check the developer tools that are built into the browser. For example F12 tools in IE. That way you can see if there are red lines – which means it might be a bug/issue. I’m not sure if they have WS support I would need to check that.

    Reply
    1. karinpb Post author

      Hi Mahmoud Tawfik,
      It should be possible to set content type. As for the call it will always be routed through a proxy on the mashup server so that is why you don’t see the URL to the endpoint in the call. I need to check with the Mashup team. Is the WS publically accessible? What exakt key and value did do use for the accept header? I mean what key ex. REST.Accept=text/xml. I don’t remember exactly what name we used for the configuration of this so please let me know so that I can forward the question as I’m off work for a few days.

      Reply
      1. Mahmoud Tawfik

        Sorry to bother you while you are off work.
        Here is the configuration that I’m using for the DataListPanel
        (mashup:DataListPanel Name=”detail” Grid.Row=”1″)
        (mashup:DataListPanel.DataService)
        (mashup:DataService Type=”REST”)
        (mashup:DataService.Operations)
        (mashup:DataOperation Name=”Update”)
        (mashup:DataParameter Key=”REST.ContentType” Value=”text/xml” /)
        (mashup:DataParameter Key=”REST.InputType” Value=”xml” /)
        (mashup:DataParameter Key=”REST.InputXmlTemplate” Value=”{StaticResource templateStock}” /)
        (mashup:DataParameter Key=”REST.HttpMethod” Value=”POST” /)
        (mashup:DataParameter Key=”REST.BaseAddress” Value=”%SERVICE_URI%” /)
        (mashup:DataParameter Key=”REST.AcceptHeader” Value=”text/xml” /)
        (mashup:DataParameter Key=”REST.RemoveNamespace” Value=”false” /)
        (mashup:DataParameter Key=”REST.XPath” Value=”//*[ local-name() = ‘%RESULT_ELEMENT_NAME%’]” /)
        (mashup:DataParameter Key=”REST.XPathNodeIsXmlDocument” Value=”true” /)
        (mashup:DataParameter Key=”REST.OutputType” Value=”XmlDocument” /)
        (mashup:DataParameter Key=”REST.CredentialSource” Value=”Current” /)
        (/mashup:DataOperation)
        (/mashup:DataService.Operations)
        (/mashup:DataService)
        (/mashup:DataListPanel.DataService)

      2. karinpb Post author

        Great,
        Sorry I was talking about AcceptHeader it’s the content type that the remote server is complaining about. I’ll see if I can find more information. Have you tried to turn on debug on the Mashup (H5 Enterprise) application server in the grid? I would do that as well. I don’t see anything obvious wrong with the configuration but i don’t remember all details. Have you been able to thest the web service stand alone in SOAP UI? I’m not sure if the web mashup supports calling WS as REST but I don’t see a reason why it wouldn’t work. Perhaps this needs to be reported to support.
        In that case we would need the following information:
        – Fiddler trace log from client
        – Mashup server log in debug
        – Mashup files
        – Example of successfull request/response with soapUI or Fiddler log.

      3. karinpb Post author

        Hi, I haven’t heard anything more from the development team. How is the tests going calling the same template that you get from Fiddler but in PostMan or SOAPUI? I’m thinking you should report that the content type is not carried through but then you need more evidence that the same format/headers etc works in a test tool and that the proxy is the issue. Because there might still be something with the request that we haven’t spotted.

      4. Mahmoud Tawfik

        Hi karinpb
        Sorry for my late reply. How do I enable debug on the Mashup (H5 Enterprise) application server and where is the logs for that?
        And yes I tried more than one example using other SOAP clients directly (Boomerang) and they work fine but when it comes to webmashup configurations, they raise (415 unsuppported media type) exception.
        Also I found another two problems:
        1. When there is a parameter in the XML template and is set using mashup:Parameter in mashup:Event. It raises another (500 Internal Server error) that, when removed, raises the old (415 unsuppported media type) exception again.
        2. When trying to send current company as a parameter using (mashup:UserContextValue Path=M3/CurrentCompany) the value for the parameter is blank not the user company as expected.
        Finally How can I send you the example that I used?

  6. karinpb Post author

    1. There could be something incorrect with the template or the replacements of variables. Check and compare with fiddler.
    2. The extension method looks ok. Can’t know for sure unless I see the XAML.

    As for sending an example you can attach XAML in the comment but you will need to escape it with code comment blocks. There are two formats, sample Use the code keyword but with [] instead of what I use below . Se below and replace the xml like format with [] – that works for me.

    <code> your code here </code>
    

    I would recommend that you register a support ticket.

    Reply
  7. Erik

    Can anyone tell me if it is possible to change the H5 page title so we can indicate the environment that the user is looking at? Currently allways showing “M3 H5 Client”
    Best Regards, Erik

    Reply
    1. karinpb Post author

      Hi, it is not possible to change the H5 page title. You can have the user set different themes depending on environment that might help a bit, but there is no support to set different titles.

      Reply
  8. Mohamed

    Hi Karin,
    Is there any news about the H5/mashup sdk. I’ve already created html pages using Rest/jquery/Html but don’t know where to put the html/javascript files. Is there any procedure for creating our own webmashup / webparts and how/where to deploy theme?
    Thanks for your help!

    Reply
    1. karinpb Post author

      Have you used the H5 Mashup SDK (odin framework?). Those application can be deployed in the H5 Administration Tools / H5 Start page administration in a tab called Applications. This is the main admin tool for H5 in the H5 client itself. If you don’t have the applications tab then you need to update the H5 / M3 UI Adapter. In the applications tab you can upload a zip of files and it can be plain Rest/jquery/html.

      Another option is to package the files in an .ear/.war file and deploy them in the Infor ION grid as an application. I’m not what the minimal grid version is for those file types as all applications in the grid are .gar files (internal format).

      As for web mashups based on Mashup Designer in Smart Office those are deployed in the Mashup Administration client (/mashup/admin). I don’t know the details of when you create your own web mashup control, where to place the files. I would expect that the Mashup Admin server has some support for placing a JavaScript that is a mashup control on their server, but I could be wrong. I’m going to check with the Mashup team. Ok so I have checked and an embedded mashup control is part of the Mashup project. So there is no separate upload for those in the Mahsup admin – they are part of the Web Mashup file.

      But I’m not clear if this is infact a mashup control that you have developed or an application?

      You will need to have the administrator role to be able to do anything. There is a course on this subject called: M3 13.4 Programming In The Web Software Development Kit.

      Reply
      1. Mohamed

        Thank you for the response Karin.
        Can you tell me where i can download the Odin Framwork please? I
        I’ve uploaded my application (which contains my html + js file) with the administration tools (tab Applications) but i see it nowhere.
        To answer your question, i’ve juste developed an Html file with jquery and bootstrap libs, calling M3 Rest services and i was wondering if it’s possible to use them in H5.
        Do you have a link for “the Programming in the web software Development Kit” please?
        Thanks

      2. karinpb Post author

        Hi,
        I don’t have a link to the H5 Mashup SDK download record. Perhaps it is only available on request. I have to check with my manager. I can find out exactly what to search for but I will not share a link as links will change.

        The applications that you upload will not magically appear in the M3 menu. You would have to launch it with a link in for example a custom menu entry in the start page. You add a link “/application/appNameHere to the Startpages or you can open it with a JavaScript on a panel with a button. It’s just a relative URL to your app. The application must have a default index.html page as the start page.

      3. karinpb Post author

        M3 Mashup SDK is included in the Mashup Designer license so you would need to have that license do download the framework. It is located under the download for the Mashup Designer at the download center.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s