Deze pagina beschrijft MatrixProject Manufacturing Execution System (MatrixProject MES). Hier wordt ingegaan over de opbouw van het gehele systeem. MatrixProject MES is beschikbaar vanaf de MatrixProject versie 3.0.
Vanaf MatrixProject 3.0 Service pack 2 is er een Configuratie Tool beschikbaar om de service in te richten, te starten en de logs te bekijken.
Kies in de Configuratie Tool voor Wizard Configuraie om een wizard te starten die u begeleid in een aantal stappen bij de configuratie.
Opbouw MatrixProject MES
MatrixProject MES bestaat uit verschillende onderdelen.
De onderstaande afbeelding geeft een schematisch overzicht:
![MatrixProject MES diagram](/sites/knowledge-base/files/help-images/MxP_MES_2.png)
Onderdelen van MatrixProject MES:
- Matrix.Drive.Server
- MongoDB
- NodeJS
- Matrix.Drive.File.Processing.Service
- Matrix.MxProject.MxKozijn.Web.Service
- Matrix.MxProject.WorkStation.Service
- Matrix.MxProject.WorkStation.Web
- Matrix.MxProject.ReportsPrinting.Service
Pas op: Gebruik voor het bewerken van mongod.cfg een geschikte editor (bijvoorbeeld https://notepad-plus-plus.org/downloads/).
Matrix.Drive.Server
Matrix.Drive.Server is een NodeJS server die het documentenbeheer via Matrix.Drive regelt. Deze vervangt het documentenbeheer in MatrixProject 2.4.
De NodeJs service wordt als een Windows service geregistreerd tijdens de installatie via 'node-windows'.
Configuratie
Standaard draait deze service op poort 1337.
De config.json in de map van de service configureert de service:
{ "development": { "config_id": "development", "port": 1337, "host": "localhost", "file_storage_location": "c:\\Matrix\\MatrixDrive", "backups_location": "c:\\Matrix\\MatrixDrive_BAK", "mongo_tools_location": "c:\\Program Files\\MongoDB\\Server\\4.2\\bin", "database_connection": "mongodb://matrix_drive:mx4ever@localhost:27017/file-storage", "jwtPrivateKey": "bXg0ZXZlcg==" }, "production": { "config_id": "production", "port": 1337, "host": "localhost", "file_storage_location": "c:\\Matrix\\MatrixDrive", "backups_location": "c:\\Matrix\\MatrixDrive_BAK", "mongo_tools_location": "c:\\Program Files\\MongoDB\\Server\\4.2\\bin", "database_connection": "mongodb://matrix_drive:mx4ever@localhost:27017/file-storage", "jwtPrivateKey": "bXg0ZXZlcg==" } }
De configuratie bevat twee sectie. Standaard wordt de sectie production gebruikt.
Wijzig eventueel waardes in de production sectie voor aangepaste instellingen:
- port
De poort waarop de service bereikt kan worden. - host
De host waarop de Matrix.Drive service bereikt kan worden. - file_storage_location
De locatie waar de bestanden worden opgeslagen. Deze kan aangepast worden naar een andere locatie.
UNC paden (https://en.wikipedia.org/wiki/Path_(computing)#UNC) zijn toegestaan.
Bijvoorbeeld:\\ComputerName\SharedFolder\Resource
Het account waaronder de Matrix.Drive.Server draait dient voldoende rechten te hebben op de opgegeven locatie om bestanden te schrijven (Modify).
Het is aan te raden een netwerk share te gebruiken waar de service toegang tot heeft, maar normale gebruikers niet.
Bij het gebruik van een "\" dient de door een "\" vooraf gegaan te worden om het teken te 'escapen'. - backups_location
De locatie waar de backups worden weggeschreven - mongo_tools_location
Locatie naar de tools bestanden van MongoDB - database_connection
Database verbinding naar MongoDB database. De gebruiker matrix_drive met wachtwoord mx4ever is tijdens de installatie aangemaakt. - jwtPrivateKey
Een sleutel (https://jwt.io/) om de gebruiker te versleutelen
Foutopsporing
De Matrix.Drive.service service schrijft zijn logs in de map log binnen de installatiemap van de service.
Indien met inlogt op de site van de service (http://iphost:port) dan wordt men doorvewezen naar een pagina die het laatste log toont.
Ook kunnen de logs eenvoudig bekenen worden via de Configuratie Tool.
MongoDB
Matrix.Drive maakt gebruik van MongoDB om de objecten op te slaan in een Object database.
Zie ook: https://www.mongodb.com/download-center/community
Minimaal vereist is mongodb-win32-x86_64-2012plus-4.2.5-signed. MongoDB (Community Edition) kan door de setup van MatrixProject gedownload en geïnstalleerd worden. Eventueel kan MongoDB handmatig geïnstalleerd worden door deze te downloaden via de volgende link: https://downloads.matrix-software.biz/misc/MongoDB/mongodb-win32-x86_64-2012plus-4.2.5-signed.msi.
De standaard installatie locatie is: %programfiles%\MongoDB\Server\4.2.
Standaard draait deze service op poort 27017.
Met het bestand mongod.cfg in %programfiles%\MongoDB\Server\4.2\bin kan MongoDB geconfigureerd worden.
NodeJS
Matrix.Drive en Matrix.MxProject.WorkStation.Web maken gebruik van NodeJS om de javascript server te draaien.
Zie ook: https://nodejs.org/
Minimaal vereist is 12.18.3 NodeJS kan door de setup van MatrixProject gedownload en geïnstalleerd worden.
De standaard installatie locatie is: %programfiles%\NodeJS
Matrix.Drive.File.Processing.Service
Webservice voor het verwerken van gegevens (Barcodes,RFID) naar de MatrixKozijn Hout en Kunststof Projecten.
De webservice wordt aangeroepen vanuit de MatrixProject applicaties (Client, Database Management Tool) en kan draaien op een centrale server.
Configuratie
Standaard draait deze service op poort 8020. In Matrix.Drive.File.Processing.Service.exe.config kan deze poort opgegeven worden:
<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="baseAddress" value="http://localhost:8020/DriveFileProcessing/service" /> <add key="database_connection" value="Data Source=127.0.0.1\MATRIX;initial catalog=MatrixKozijn;user id=ADMIN;password=;application name=MxP" /> <add key="drive_connection" value="http://localhost:1337" /> <add key="drive_user" value="workstation_service" /> <add key="drive_pass" value="" /> <add key="kozijn_web_connection" value="http://localhost:8080/MxKozijnWeb/service" /> <add key="timeout" value="600" /> </appSettings> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" /> </dependentAssembly> </assemblyBinding> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration>
Voorwaarden:
- drive_user dient een gebruiker van Matrix.Drive te zijn.
- database_connection dient een login te zijn met een bestaande gebruiker met rechten in de MatrixProject database.
Foutopsporing
De service schrijft meldingen en fouten naar het Windows Aplication eventlog.
Zoek naar de bron Matrix.Drive.File.Processing.Service.
Ook kunnen de logs eenvoudig bekenen worden via de Configuratie Tool.
Matrix.MxProject.MxKozijn.Web.Service
Service voor het werken met MatrixKozijn Hout en Kunststof projecten. Verzorgt het calculeren van gegevens en andere zaken.
Configuratie
Standaard draait deze service op poort 8080. In Matrix.MxProject.MxKozijn.Web.Service.config kan deze poort opgegeven worden:
<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="baseAddress" value="http://localhost:8080/MxKozijnWeb/service" /> <add key="drive_connection" value="http://localhost:1337" /> <add key="drive_user" value="workstation_service" /> <add key="drive_pass" value="" /> <add key="calculation_func_path" value="Matrix.MxProject.MxKozijn.Web.Func.exe" /> <add key="timeout" value="600" /> </appSettings> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" /> </dependentAssembly> </assemblyBinding> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration>
Voorwaarden:
- drive_user dient een gebruiker van Matrix.Drive te zijn.
Tip: Draai deze service onder een lokaal account om de instellingen voor het tekenen van kozijnmerken in de website over te nemen van deze gebruiker.
Foutopsporing
De service schrijft meldingen en fouten naar het Windows Aplication eventlog.
Zoek naar de bron Matrix.MxProject.MxKozijn.Web.Service.
Ook kunnen de logs eenvoudig bekenen worden via de Configuratie Tool.
Matrix.MxProject.WorkStation.Service
Service voor het afhandelen van werkplekken.
Configuratie
Standaard draait deze service op poort 8000.
In het bestand Matrix.MxProject.WorkStation.Service.exe.config kan de configuratie opgegeven worden:
<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="baseAddress" value="http://localhost:8000/WorkStation/service"/> <add key="license_server" value="127.0.0.1" /> <add key="license_code" value="99999999" /> <add key="database_connection" value="Data Source=127.0.0.1\MATRIX;initial catalog=MatrixKozijn;user id=ADMIN;password=;application name=MxP" /> <add key="drive_connection" value="http://localhost:1337" /> <add key="drive_user" value="workstation_service" /> <add key="drive_pass" value="" /> <add key="kozijn_web_connection" value="http://localhost:8080/MxKozijnWeb/service" /> <add key="reports_printing_connection" value="http://localhost:8060/ReportsPrinting/service" /> <add key="timeout" value="600" /> </appSettings> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" /> </dependentAssembly> </assemblyBinding> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration>
Wijzig eventueel waardes in de appSettings sectie voor aangepaste instellingen:
- baseAddress
Het adres en poort waarop de service draait. Standaard draait deze service op poort 8000 op localhost.
Wanneer deze poort/host aangepast wordt dient deze ook in Matrix.MxProject.WorkStation.Web aangepast te worden. - license_server
De licentie server voor het ophalen van de licentie. Zie ook Licenties. - license_code
De code (licentienummer) van de te gebruiken licentie - database_connection
Database verbinding naar de MatrixProject database. Geef een gebruiker op met permissies in de MatrixProject database. - drive_connection
De verbinding naar de Matrix.Drive server - drive_user
De Matrix.Drive login die gebruikt word om Matrix.Drive te benaderen
Foutopsporing
De service schrijft meldingen en fouten naar het Windows Aplication eventlog.
Zoek naar de bron Matrix.MxProject.WorkStation.Service.
Ook kunnen de logs eenvoudig bekenen worden via de Configuratie Tool.
Matrix.MxProject.WorkStation.Web
Matrix.MxProject.WorkStation.Web is een NodeJS server die de websites op de werkplekken toont.
De NodeJs service wordt als een Windows service geregistreerd tijdens de installatie via 'node-windows'.
Configuratie
De website draait bij een standaard installatie op poort 1338 op de machine waar de service is gestart.
De poort en host kan eventueel in config.json in de map van de service aangepast worden.
Pas op: In MatrixProject 3.0 SP1 Build 18432 en hoger bestaat de Matrix.MxProject.WorkStation.Web\public\server\config.json niet meer en wordt workstation_host ook in dezelfde configuratie opgegeven.
[ { "host": "127.0.0.1", "port": 1338, "workstation_host": "http://localhost:8000/WorkStation/service", "certificate": "", "private_key": "" } ]
- host
De host of het IP-adres waarop de service draait - port
De poort waarop de service draait - workstation_host
De verwijzing naar de Matrix.MxProject.WorkStation.Service
Wanneer de Matrix.MxProject.WorkStation.Service op een ander IP-adres draait (dan localhost) of op een andere poort draait (dan 8000) dan dient de locatie naar Matrix.MxProject.WorkStation.Service aangepast te worden
Voorbeeld wanneer de Matrix.MxProject.WorkStation.Service draait op 192.168.100.10:8004:"workstation_host": "http://192.168.100.10:8004/WorkStation/service"
- certificate
Certificaat voor het draaien van de service als https - private_key
Private key voor het certificaat
Matrix.MxProject.ReportsPrinting.Service
Service voor het printen van rapporten.
Configuratie
Standaard draait deze service op poort 8060.
<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="baseAddress" value="http://localhost:8060/ReportsPrinting/service" /> <add key="license_server" value="127.0.0.1" /> <add key="license_code" value="99999999" /> <add key="database_connection" value="Data Source=127.0.0.1\MATRIX;initial catalog=MatrixKozijn;user id=ADMIN;password=;application name=MxP" /> <add key="reports_directory" value="Reports" /> <add key="timeout" value="600" /> <add key="locale" value="nl" /> <add key="kozijn_web_connection" value="http://localhost:8080/MxKozijnWeb/service"/> </appSettings> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration>
Wijzig eventueel waardes in de appSettings sectie voor aangepaste instellingen:
- license_server
De licentie server voor het ophalen van de licentie. Zie ook Licenties. - license_code
De code (licentienummer) van de te gebruiken licentie - database_connection
Database verbinding naar de MatrixProject database. Geef een gebruiker op met permissies in de MatrixProject database. - reports_directory
Pad naar de map waar de rapporten zijn opgeslagen - timeout
Timeout in seconden voor de service - locale
De taal die gebruikt wordt voor de rapporten ("nl" = Nederlands, "en" = Engels)
Foutopsporing
De service schrijft meldingen en fouten naar het Windows Aplication eventlog.
Zoek naar de bron Matrix.MxProject.ReportsPrinting.Service.
Ook kunnen de logs eenvoudig bekenen worden via de Configuratie Tool.
Rapporten toekennen aan werkplekken
In MatrixProject kunnen rapproten toegekend worden aan acties per Werkplek:
- Afdrukken bij starten van het Merk
Rapporten van gegevenstype: Fase Merk - Afdrukken bij voltooien van het Merk
Rapporten van gegevenstype: Fase Merk - Afdrukken nadat de Merken aan Levering zijn toegevoegd
Rapporten van gegevenstype: Fase Merk - Afdrukken nadat een Levering geladen is
Rapporten van gegevenstype: Levering - Afdrukken nadat een Bok geladen is
Rapporten van gegevenstype: Bok
Firewall
Indien de services van MatrixProject vanaf andere locaties benaders worden is toegang via de firewall nodig.
Bij standaard inbstellingen draaien de services op de volgende poort. Zorg dat deze poorten opnen staan (inbound) in de firewall:
- Matrix.Drive.Server: poort 1337 TCP
- Matrix.MxProject.WorkStation.Service poort 8000 TCP
- Matrix.MxProject.MxKozijn.Web.Service poort 8080 TCP
- Matrix.Drive.File.Processing.Service poort 8020 TCP
- Matrix.MxProject.WorkStation.Web poort 1338 TCP
- Matrix.MxProject.Web.Service 8025 TCP
- Matrix.Project.Web poort 1335 TCP
Wordt gebruik gemaakt van de Windows Firewall dan kunnen de Firewall regels eenvoudig toegevoegd worden via de Nestsh.exe app van Microsoft.
Het onderstaande script voegt de Firewall regels toe via de Netsh.exe app:
netsh advfirewall firewall add rule name="Matrix.Drive.Server 1337 TCP" dir=in action=allow protocol=TCP localport=1337 netsh advfirewall firewall add rule name="Matrix.MxProject.WorkStation.Service 8000 TCP" dir=in action=allow protocol=TCP localport=8000 netsh advfirewall firewall add rule name="Matrix.MxProject.MxKozijn.Web.Service 8080 TCP" dir=in action=allow protocol=TCP localport=8080 netsh advfirewall firewall add rule name="Matrix.Drive.File.Processing.Service 8020 TCP" dir=in action=allow protocol=TCP localport=8020 netsh advfirewall firewall add rule name="Matrix.MxProject.WorkStation.Web 1338" dir=in action=allow protocol=TCP localport=1338 netsh advfirewall firewall add rule name="Matrix.MxProject.Web.Service 8025 TCP" dir=in action=allow protocol=TCP localport=8025 netsh advfirewall firewall add rule name="Matrix.Project.Web 1335 TCP" dir=in action=allow protocol=TCP localport=1335