Skip to main content

Posts

Keep Vault Data Consistent with Database Records in Aras Innovator

In Aras Innovator, every files normally link to particular Item by Property or Relationship. When deleting Item, relevant physical file will not be removed. Obviously, these orphaned files will increase with time, of course it could be treated as a special way to protect physical files from accidentally deletion. In order to keep vault data consistent with database records, variable "Force.Delete.Orphaned.Files" can control if system need to handle physical file or not. But this variable does not exist in default, you need to create it by yourself. If set to 1, orphaned files will be removed together once relevant Item is deleted.

Handle Loading Spinner Visibility in Aras Innovator

When opening Item window, a loading spinner shows automatically like below figure. In some cases, manually handle its visibility would be a necessary process to prevent user do any operation. Show Loading Spinner aras.browserHelper.toggleSpinner(document,true); Hide Loading Spinner aras.browserHelper.toggleSpinner(document,false);

Fix Failed to Logout Properly in Aras Innovator When Using Chrome

Normally, Aras Innovator will save user's preference and disconnect session automatically when user logout. In order to perform this action in background, relevant code should be triggered in onbeforeunload event and then send request to server silently. But newer version Chrome disallow "Synchronous XHR in page dismissal", this would make above post process failed (see error message in Figure 1). Therefore, all requests in onbeforeunload event are abandoned due to this kind of policy. Figure 1. Error in console. Solution Open "\Innovator\Client\javascript\aras_object.js". Add below code. Aras.prototype.handleUnloadSoapSend = function Aras_handleUnloadSoapSend(methodName,xmlBody,url) { if (this.Browser.isCh() && window.fetch) { var soapMessage = '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">'; soapMessage += '<SOAP-ENV:Body>'; soapMessage += '<'+methodName+'>

aras.evalJavaScript Method (aras Object)

aras.evalJavaScript Method Evaluates JavaScript code in the Aras object space. Syntax aras.evalJavaScript( jsCode ) Parameters Name Type Description jsCode String Required. JavaScript code represented as a string. Return Value Returns evaluated result from given JavaScript code. See Also aras Object Aras Innovator Client Framework

Prevent unexpected error when uploading file does not exist in Aras Innovator

Sometime users may rename or remove local file "accidentally", it will make the saving process stuck like Figure 1. According to Figure 2, the problem should be that uploading program cannot read file. It seems there is no exception handler. Figure 1. Saving process stuck when uploading failed. Figure 2. Error in console. Solution Open "\Innovator\Client\Modules\core\xxhWorker.js". Move to line 31 and modify "onmessage" function. var receivedData = e.data.data; var fileId = e.data.fileId; var offset = e.data.from; var reader = new FileReaderSync(); var byteData,xxhash; try { byteData = reader.readAsArrayBuffer(receivedData); xxhash = xxHash(byteData); } catch (e) { xxhash = -1; } var result = { xxhash: xxhash, fileId: fileId, offset: offset }; //we remove links to objects in memory to prevent keeping references and to stable garbage collector working reader = null; byteData = null; postMessage(result); Open "\Innovator\Client\Modules\core\v