Jump to content

Gareth Cantrell

Hornbill Users
  • Posts

    134
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Gareth Cantrell

  1. I have a handy little SQL query that can give you a rough idea of storage requirements for workflows (incl. autotasks) if you have access to the Database Direct tool: SELECT count(*) AS "amount", "modified instances" as "type", sum(length(h_xml))/1048576 AS "size_mb" FROM h_bpm_instance WHERE h_xml is not null UNION SELECT count(*), "workflows (inc. all versions)", sum(length(h_xml))/1048576 FROM h_bpm_processes
  2. @Berto2002 from my perusals through the system, an instance of the workflow is not created for each request, rather, a link to the specific workflow version is stored in the bpm_instance table. If you make modifications to an in-process workflow instance, only then is a copy of the original version taken from the bpm_processes table and the modified workflow stored in the bpm_instance table. So, the only storage is each version of your workflow in bpm_processes and any modifications made to a live instance. For data retention purposes, I don't believe I've seen any option to delete historic versions of a workflow.
  3. We've had similar issues (dark red highlights) due to previous customisations of the following 2 settings (which worked fine in the old UI): webapp.view.ITSM.serviceDesk.requests.list.unreadColour webapp.view.ITSM.serviceDesk.requests.list.onHoldFontStyle Reverting these settings to defaults has solved the issues for us.
  4. Just to followup on this, I tried to synchronise the asset status from Certero, however the import utility is completely ignoring that field as well. It almost appears to be ignoring any integer fields in the source data. Also, the import utility completely ignores the software inventory for Apple devices, even though the configuration is nearly identical to the Windows configuration.
  5. I'm seeing this as well; in addition, autotasks which update a suspend condition are now no longer having an effect on the workflow; I have to manually resume them after the autotask has updated the condition.
  6. It seems at some point, when saving workflows, random nodes had their result references cleared (you can't do this intentionally as you will get a warning and the workflow will refuse to save). Nodes with empty result references tend to behave normally if they are updating a request or locking/unlocking actions, however, it appears a suspend node without a result reference will never meet the condition to "un-suspend" and so the workflows end up suspended indefinitely. This is particularly the case where a suspend for resolution has had its result reference cleared and a resolution has been set. Manually resuming these is the only option, however, if any future node relies on the outcome of a suspend node, the workflow will fail.
  7. I have noticed a large number of in-flight requests suddenly missing the result reference in numerous BPM nodes. Some of these cleared result references are in stages not even reached yet. For example, this is from a process currently suspended in an earlier node, however once it reaches this particular node, it will fail as the result reference has mysteriously been cleared. Finally, is there a bulk way to identify all requests with these issues and fix them? I really cannot be spending weeks going through all the in-flight requests to identify issues like this!!
  8. I'm trying to test an asset import configuration from Certero and am wondering why certain values refuse to update into Hornbill. Even though configured, the following attributes are not populating (even though data is present when I run the "Expand" query directly against Certero): h_external_id h_memory_info h_max_memory_capacity ... and none of the Software Inventory is loaded at all. My test config looks as follows: { "KeysafeKeyID": 22, "LogSizeBytes": 1000000, "HornbillUserIDColumn": "h_attrib8", "SourceConfig": { "Source": "certero", "Certero": { "Expand": "ComputerSystemInventory($expand=OperatingSystem,ADUser($select=AccountName,LastLogonTimestamp)),ComputerSystemProcessorInfo,Object($select=LocationId,Status;$expand=Location,FieldDataItems($expand=Field)),AppleSystemSystemInfo,AppleSystemPhysicalMemoryArray,AppleSystemApplications($expand=AppleApplication),WindowsSystemBio,WindowsSystemPhysicalMemoryArray,WindowsSystemSystemEnclosure,WindowsSystemSoftwareProducts($expand=SoftwareProduct)" } }, "AssetTypes": [ { "AssetType": "Laptop", "OperationType": "Both", "PreserveShared": false, "Query": "contains(ComputerSystemInventory/Manufacturer, 'Apple') and ComputerSystemInventory/ComputerName eq 'LONML11744'", "AssetIdentifier": { "SourceColumn": "{{.ComputerSystemInventory.ComputerName}}", "Entity": "AssetsComputer", "EntityColumn": "h_name" }, "SoftwareInventory": { "AppIDColumn": "{{.AppleApplication.Name}}", "ParentObject": "AppleSystemApplications", "Mapping": { "h_app_id":"{{.AppleApplication.Name}}", "h_app_name": "{{.AppleApplication.Name}}", "h_app_vendor":"{{.AppleApplication.Publisher}}", "h_app_version":"{{.AppleApplication.Version}}", "h_app_install_date": "{{.LastModified}}" } } }], "AssetGenericFieldMapping": { "h_name": "{{.ComputerSystemInventory.ComputerName}}", "h_asset_tag": "{{.ComputerSystemInventory.ComputerName}}", "h_description": "From Certero: {{.ComputerSystemInventory.Manufacturer}} ({{.ComputerSystemInventory.Model}})", "h_used_by": "{{if .ComputerSystemInventory.ADUser}}{{.ComputerSystemInventory.ADUser.AccountName}}{{else}}{{.ComputerSystemInventory.Username}}{{end}}", "h_room": "{{index (index .Object.FieldDataItems 4) \"Value\"}}", "h_external_id": "{{.ComputerSystemObjectId}}", "h_external_source": "Certero" }, "AssetTypeFieldMapping": { "h_name": "{{.ComputerSystemInventory.ComputerName}}", "h_model": "{{.ComputerSystemInventory.Model}}", "h_manufacturer": "{{.ComputerSystemInventory.Manufacturer}}", "h_description": "From Certero: {{.ComputerSystemInventory.Manufacturer}} ({{.ComputerSystemInventory.Model}})", "h_serial_number": "{{if .WindowsSystemBio}}{{.WindowsSystemBio.SerialNumber}}{{else}}{{.AppleSystemSystemInfo.SerialNumber}}{{end}}", "h_mac_address": "{{.ComputerSystemInventory.MacAddress}}", "h_net_ip_address": "{{.ComputerSystemInventory.IpAddress}}", "h_net_computer_name": "{{.ComputerSystemInventory.ComputerName}}", "h_subnet_mask": "{{.ComputerSystemInventory.SubnetMask}}", "h_os_description": "{{.ComputerSystemInventory.OperatingSystem.Caption}}", "h_os_version": "{{.ComputerSystemInventory.OperatingSystem.VersionString}}", "h_cpu_info": "{{.ComputerSystemProcessorInfo.Model}}", "h_cpu_clock_speed": "{{.ComputerSystemProcessorInfo.ClockSpeed}}", "h_physical_cores": "{{.ComputerSystemProcessorInfo.Cores}}", "h_memory_info": "{{if .WindowsSystemPhysicalMemoryArray}}{{.WindowsSystemPhysicalMemoryArray.TotalMemory}}{{else}}{{.AppleSystemPhysicalMemoryArray.TotalMemory}}{{end}}", "h_max_memory_capacity": "{{.WindowsSystemPhysicalMemoryArray.MaxCapacity}}", "h_last_logged_on_user": "{{if .ComputerSystemInventory.ADUser}}{{.ComputerSystemInventory.ADUser.AccountName}}{{else}}{{.ComputerSystemInventory.Username}}{{end}}", "h_last_logged_on": "{{if .ComputerSystemInventory.ADUser}}{{.ComputerSystemInventory.ADUser.LastLogonTimestamp}}{{end}}" } }
  9. @Nanette I can see the Entity Explorer in Service Manager now, however its subsequently disappeared from all the other apps, including Platform. Could you please reinstate urgently across the board as its impacting our reporting capabilities
  10. When trying to update an existing FAQ (in any service), we are getting an error about a missing "userLanguage" property: When trying to select one of our existing languages from the drop down, no options are presented so we are unable to save any changes.. When adding a new FAQ, all the configured language options are given, however, once the FAQ has been initially saved, only the "default" language is displayed which means we cannot translate the FAQ into any of the other configured languages.
  11. You're right - this was happening for a different mailbox which didn't have the folder specified in application settings - not sure why it was working before this though.
  12. @David Hall yes this is set correctly and hasn't changed since we launched - this is a new issue since the last couple of days.
  13. On further investigation, it appears that the action did update the request multiple times, however the error about failing to apply the update is shown, even though successful.
  14. We are seeing the same issue and we're using the standard SR/IN reference format.
  15. Same for us - Site/Location field is non-editable in the latest update
  16. When clicking through to the Workflows admin screen, all the autotasks are showing as well and when loading the Auto tasks list, all the workflows are showing. Currently seeing this in both Documents and Service Manager.
  17. We prepend emoji to the node display name which helps us to quickly identify what that node is doing. For example, we use to indicate when fields are being set in a node (either system or custom) and to indicate where SLA timers are set, amongst others.
  18. I have just noticed that the Entity Explorer has disappeared under all applications from the Advanced Tools & Settings section. Only the Platform Entity Explorer menu item is still available. Please could you urgently reinstate these as we rely on them for building our reports!
  19. We had a request raised from email with a plain text attachment a couple days ago. The request was successfully created, however the description of the request was NOT set to the body of the email, but rather to the content of the plain text attachment. The message body of the email seems to have been entirely discarded in favour of the attachment.
  20. We have been notified of some accessibility issues in all 3 modes (Light, Dark & High Contrast) in the new UI request list. In Light mode, links are rendered as blue text on a light blue background rendering the text almost impossible to read for users with colour blindness. In Dark mode, links in unread requests are also rendered in the same blue text on a blue background, also rendering these illegible to colour blind users. In High Contract mode, links un unread requests are rendered in yellow on a light yellow background and the rest of fields are rendered in white - this is illegible to all users. I have tried playing around with the webapp.view.ITSM.serviceDesk.requests.list.unreadColour application setting, and it has no discernible effect in any mode, except for light mode.
  21. @SamS The Hornbill Certero integration is rooted at ComputerSystem. Object is a NavigationProperty of ComputerSystem, similar to ComputerSystemInventory. The full OData API call to Certero is: ComputerSystem?$expand=ComputerSystemInventory( $expand=OperatingSystem,ADUser($select=AccountName) ), ComputerSystemProcessorInfo, Object( $select=LocationId,Status;$expand=FieldDataItems ), WindowsSystemBio And the result (with values removed) is: { "@odata.context": "https://xxx.certero.com/api/odata/$metadata#ComputerSystem(ComputerSystemInventory(OperatingSystem(*),ADUser(AccountName)),ComputerSystemProcessorInfo(*),Object(LocationId,Status,FieldDataItems(*)),WindowsSystemBio(*))", "value": [ { "ComputerSystemObjectId": "", "ClientProducts": "", "ClientType": "", "ClientTypes": "", "ComputerSystemConfigurationId": "", "Modules": "", "NodeObjectId": "", "OperatingSystem": "", "ComputerSystemInventory": { "ComputerSystemObjectId": "", "ADUserObjectId": "", "ComputerDomain": "", "ComputerName": "", "EndpointServerObjectId": "", "IpAddress": "", "LastUpdate": "", "MacAddress": "", "Manufacturer": "", "Model": "", "NetworkObjectId": "", "OperatingSystemId": "", "SubnetMask": "", "Username": "", "Version": "", "Virtual": false, "OperatingSystem": { "OperatingSystemId": "", "BuildNumber": "", "Caption": "", "Family": "", "MajorVersion": "", "MinorVersion": "", "ProcessorArchitecture": "", "ProductType": "", "ReturnedProductType": "", "ServicePackMajor": null, "ServicePackMinor": null, "SuiteMask": "", "SystemMetrics": "", "VersionString": "" }, "ADUser": { "AccountName": "" } }, "ComputerSystemProcessorInfo": { "ComputerSystemObjectId": "", "CacheSizeK": "", "ClockSpeed": "", "Cores": "", "CoresPerCpu": "", "HTCapable": true, "HTEnabled": true, "LMExt": true, "LogicalCpus": "", "Manufacturer": "", "Model": "", "PhysicalCpus": "", "VMXExt": true }, "Object": { "Status": "", "FieldDataItems": [ { "FieldId": "1", "ObjectId": "", "Value": "", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": "", }, { "FieldId": "2", "ObjectId": "", "Value": "", "ValueAsBit": null, "ValueAsDate": "", "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": null, }, { "FieldId": "3", "ObjectId": "", "Value": "", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": "", }, { "FieldId": "4", "ObjectId": "", "Value": "", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": "", }, { "FieldId": "5", "ObjectId": "", "Value": "", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": "", }, { "FieldId": "6", "ObjectId": "", "Value": "", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": "", "ValueAsString": null, } ] }, "WindowsSystemBio": { "WindowsSystemObjectId": "", "BiosMode": "", "Manufacturer": "", "Name": "", "ProductName": "", "ReleaseDate": "", "SMBIOSBIOSVersion": "", "SMBIOSUUID": "", "SecureBootEnabled": false, "SerialNumber": "" } } ] }
  22. Hi @SamS These are custom fields in Certero which we use to track things like building, stock room and floor number. They are retrieved with the following OData query snippet: ..., Object($expand=FieldDataItems), ...
  23. When configuring an asset import, given the following data structure, how can I go about accessing the list by index? For example, I would like to get the "Value" attribute from the record with FieldId 3. Would the following work: {{.Object.FieldDataItems[2].Value}} ? { "Object": { "Status": 0, "FieldDataItems": [ { "FieldId": 1, "ObjectId": 3, "Value": "KSDFSERWRE", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": "KSDFSERWRE" }, { "FieldId": 2, "ObjectId": 3, "Value": "2023-09-27T00:00:00", "ValueAsBit": null, "ValueAsDate": "2023-09-27T00:00:00+01:00", "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": null }, { "FieldId": 3, "ObjectId": 3, "Value": "KLSDLSAD", "ValueAsBit": null, "ValueAsDate": null, "ValueAsFloat": null, "ValueAsInt": null, "ValueAsString": "KLSDLSAD" } ] } }
×
×
  • Create New...