Vote for Causeway Alloy at the Construction Computing 'Hammers Awards'! 🏆


We are absolutely thrilled to announce that Causeway Alloy has been shortlisted for the 'Asset Management Product of the Year' at this year's Construction Computing 'Hammers Awards'! 🎉

This recognition is a testament to our commitment to providing exceptional products for our customers. We take great pride in our innovative Asset Management solution and its ability to transform businesses.

Now, we need your support! Cast your vote for Causeway Alloy by clicking here: Vote!

Voting closes on Nov 1st with the winners announced on Nov 9th. Your vote will play a crucial role in determining the winner of this prestigious award.

We greatly appreciate your continued support and trust in our products. Thank you for being a part of our journey!

Alloy September 2023 Update

This month brings temporary map layers, automatic map refresh on Mobile, and some delicious new item form expression nodes. The update took place during the evening of the 28th September. For a full list of changes in v2.51, please visit the Alloy Changelog.

Show Data Explorer results on the map 🗺️

Ever wanted to quickly view a set of query results on the map, without having to create a layer?

Well, now you can! In the Data Explorer, select the bottom-right menu and choose Show on map to create a temporary layer containing all the resulting items from the current query tab (providing their Geometry attribute is populated).

The temporary layer will remain until you log out or select its X button in the Layers panel.

Include item links in a workflow SMS 🔗

When building a workflow, you can add a Message action node to the sequence and configure it to send an SMS to the provided phone number.

If you populate the action's Linked Items attribute, the SMS will now contain a direct link to each item stored in the attribute.

New Conditional expression nodes ❔

Oh, we're not done yet 😎. Here comes another barrelful of item form expression nodes!

This month, we've added many new types of Conditional node to the Item Form Expression Builder. These act as logical functions that compare values from other nodes and produce corresponding output:

  • AND - if both inputs are true, output true.
  • OR - if at least one input is true, output true.
  • Contains - if input A contains input B, output true.
  • Greater Than - if input A is greater than input B, output true.
  • Less Than - if input A is less than input B, output true.
  • Match - if string A matches the regular expression stored in string B, output true.
  • Is Null - if the input is null (e.g. a form control is empty), output true.

In addition, we've added some "IF statement" conditional nodes for each data type, which effectively operate like this:

IF the input boolean is true THEN output value1 ELSE output value2.

For example, ­the Number conditional node will output one of two input numbers, depending on whether the input boolean is true or false.

These new conditionals provide a massive boost to the power of expressions, enabling you to weave potentially complex logic into the behaviour of your item forms. For a complete list of node types, see Alloy Help.

Optimised drag sensitivity ⏺️ ➡️

We've recently been experimenting with the sensitivity of drag-and-drop in Alloy Web. That is, how long do you need to select and hold something before you can drag it (such as controls in the Item Form Builder)?

Everyone has a different feel for this, so it can be tricky to find a level that most people are comfortable with.

We think we've got it tweaked just right now. However, if dragging things doesn't feel right to you, please contact Support with your feedback.

Automatic map refresh for filtered items on Mobile 🗺️

In Alloy Mobile, you can filter tasks according to their status and whether they're assigned to you or your team. 

To update the map accordingly, so that it only displays the filtered tasks, you had to select the Search Here button.

Now, the map refreshes automatically whenever you change the filters, to ensure that you're always looking at the correct items.


Alloy August 2023 Update

This month sees the addition of some highly requested quality-of-life improvements, along with more node types for the Item Form Expression Builder. The update took place during the evening of the 31st August. For a full list of changes in v2.50, please visit the Alloy Changelog.

Turn off all layers 🗺️

Alloy lets you create any number of layers and layer styles, providing you with limitless ways of overlaying different items on the map. Therefore, many organisations have crafted hundreds of custom layers to represent their item data in various ways.

Sometimes, you want to clear the map to focus your attention. Previously, this meant having to scroll through all those layers in the Layers panel, turning off the enabled ones as you go. This could be a real hassle in large organisations.

But no longer! We've added a button to the action bar that lets you Turn off all layers. Bam, the map is now empty and ready for you to enable just the layers you want to see.

Improved sorting in Data Explorer ↕️

When viewing a query in the Data Explorer, you can select any column header to sort the results by that attribute.

Previously, after selecting a column header once, it wasn't possible to unsort the results again.  Selecting the column header would only switch between Sort ascending and Sort descending.

Now, selecting the column header a third time will cancel the sort.

New Date and Date Time expression nodes 📆 🕘

In May, we released the Item Form Expression Builder, to help you harness the power of codeless expressions and make your item forms responsive to user input. We're continuing to expand this feature by adding more node types.

This month, we've added two new sets of Date and Date Time node types to the top bar. Broadly speaking, they let you:

  • add unit values to a date/time
  • subtract unit values from a date/time
  • construct a date/time from multiple unit values
  • calculate the difference between two dates/times
  • extract a unit value from a date/time

This makes it possible for item forms to generate and display dynamic dates and times.

For example, imagine a Highway Jobs item form that automatically populates the Target Time attribute with a value 14 days from now. It could even apply different increments depending on the selected Priority value!

This would give the user immediate feedback on when the job is expected to be completed.

New "Is Triggering" expression node 🔫

We've also added a new global node type to the Item Form Expression Builder.

The new Is Triggering node checks whether the expression was triggered by the selected control property (or Alloy global variable) and outputs a corresponding boolean value.

In other words, this lets you create an expression that can produce different final outputs depending on how it was triggered. This adds a whole new dimension of conditional behaviour to item forms!

For example, imagine an item form with a Checkbox control and two Number controls. The Checkbox's Value property targets an expression that outputs "true" when the Value properties of the two Number controls are equal. However, thanks to an Is Triggering node, the expression can only output "true" when the second Number control is updated. 

Now available in French 🥐

Alloy has been translated! If your web browser's language is set to French, Alloy will now automatically display in French. Où est la bibliothèque?

Fun fact: Alloy is also available in Dutch, German and Spanish 😮

Warning when replacing data ⚠️

When configuring an import in Gateway, you can set it to operate in Replace mode. This will delete all items in the selected design before replacing them with the import items.

This wasn't made clear enough previously, so we've revised our documentation and Alloy will now display clear warnings when selecting Replace and again before the point of no return.


Optimised asset creation on Android ⚡

In Alloy Mobile, you can register new assets while out in the field. Naturally, this involves choosing the design of the asset you want to create.

Previously, the app would list all the asset designs in your organisation. As this typically ranges in the hundreds, you'd often end up doing lots of scrolling to reach the one you want.

Now, the app will only list the asset designs that you have permission to create, resulting in a shorter list that's easier to select from.


Alloy July 2023 Update

Following last month's avalanche of new features, there are fewer noteworthy changes this month. The update took place during the evening of the 27th July. For a full list of changes in v2.49, please visit the Alloy Changelog.

Pull down to refresh pickers ⏬

You can now refresh the content of any picker by dragging the list downwards. A significant improvement for touchscreen users and fun for mouse users too!

Time picker improvements 🕘

Previously, editing the digits of a time picker was tricky. This was because the boxes acted like text fields, so you had to move the text cursor to the right place and press the Backspace/Delete key accordingly.

Now, you can simply select a box and type to overwrite its contents or press Backspace/Delete to clear its contents and reset to 00:00.

We've made it a bit smarter too, so it can handle more natural number input, e.g. selecting the first box and pressing 3 then 5 will result in 03:05 instead of 23:00.

While it's hard to illustrate the differences here, try it out and you'll see what we mean!

Timestamp photos in waste events 📷

In Alloy Mobile Android, the Timestamp in-app photos setting has now been expanded to include photos taken directly during any waste event, making it easy to see at a glance when the photo was captured.

Alloy June 2023 Update

This month sees major changes to the Report Builder, new nodes in the Item Form Expressions Builder and a couple of tasty workflow improvements. The update took place during the evening of the 29th June. For a full list of changes in v2.48, please visit the Alloy Changelog.

Report Builder toolbar ⬆️

When editing the layout of a report document, you can select a control to show its properties. However, you'll notice that they've moved from here…

…to up here! 😮

When we first designed the Document Layout Editor, we sought to give you maximum flexibility in customising the document's structure and content. It was therefore possible to set every one of a control's properties dynamically.

After some time and feedback, it became apparent that this was a bit overkill! Turns out, nobody wants to set the margins of a control based on the runtime value of a data source header. They just want to choose a value and move on.

Therefore, we've streamlined control properties by removing this functionality and moving them into a top toolbar, making it much simpler and quicker to configure them to your liking.

Fear not, any existing reports with dynamically set properties will remain unchanged. From now on though, those properties can only be overwritten with constant values (unless you use the API).

Horizontal Repeaters ➡️

In the Document Layout Editor, you can add a Repeater control to a flow document. These look and behave similarly to Vertical stack controls, with any child controls inside being automatically arranged in a vertical formation.

However, depending on the data being repeated, this can lead to unnecessarily long documents with lots of pages, e.g. listing multiple photo attachments.

To address this, Repeaters now inherit the layout properties of any container they're placed in. As a result, a Repeater placed within a Horizontal stack will have its contents arranged horizontally!

You may want to enable the Horizontal stack's Wrap property, to ensure the Repeater's content doesn't go off the page.

Item data source - Item Id header 🆔

In the Report Builder, you can create an Item data source to represent the attributes and properties of a particular item.

Until now, the data source's Item Id header couldn't be compared against other Item IDs, because the stored data was Text type rather than Alloy ID type.

This has now been resolved, meaning you can now do things like use the Item Id header as a parameter within an AQS data source.

For example, to get the attachments of a particular item, you can now create an AQS data source with a query that fetches all Files items whose parent ID matches the Item Id header of the Item data source.

You also have more flexibility when creating Join data sources. For more details, see this previous announcement.

Use dates in item form expressions 📆

Last month, we released the new Item Form Expressions Builder, to help you harness the power of expressions and make your item forms responsive to user input.

We'll be adding more node types over the coming months, to increase the number of data types you can work with and the ways you can manipulate data.

The first of these are the Date and Date Time nodes, which now appear in the list of Literals (fixed values used in one expression), Globals (dynamic values shared across the form's expressions) and Finals (expression outputs).

This means you can now reference the Default Value and Value properties of any Date/DateTime picker controls included on the item form.

You can also reference the current date and time, opening up all kinds of possibilities for expressions that change the behaviour of an item form depending on when it's being filled in!

For example, imagine being able to see when an item was last created/edited when filling out an item form. This can now be achieved by doing the following:

  1. Add a Last Modified Date Time attribute to the design.
  2. Add a Date Time picker control for the attribute to the design's item form.
  3. Create a simple expression:
    1. Add a Date Time global node set to Date Time Now.
    2. Add a Date Time final node.
    3. Link the nodes together.
  4. Set the Value property of the attribute's control to target your expression (and enable the Read Only property for good measure).

Customise workflow email subject ✉️

When editing a workflow, you can add a Message action that sends an email to one or more addresses.

The email's subject line was always Workflow Notification. This wasn't ideal if you received frequent workflow emails, as you couldn't tell them apart without opening them.

Therefore, the Message action now has an optional Subject field, so you can override the default with something more distinct.

Workflow type subtitles 🏷️

When workflows are listed in the Search panel, you can now see whether they are Event, Manual or Scheduled. A nice little convenience boost!

Convert coordinates during export 🌐

In the Data Explorer, you can export the data you're viewing for use outside of Alloy.

If that data contains geometry coordinates, you can now change the Coordinate system from the default WGS84 Lat/Lng to one of three other popular systems.

Efficient syncing on Alloy Mobile ✅

When you create or edit items in Alloy Mobile, it contacts various Alloy API endpoints to fetch and save the necessary data.

As you can see, most of the contacted endpoints were on the Extended Web API, which provided greater functionality at the cost of medium performance.

After months of hard work, we succeeded in reproducing the functionality of the Extended Web API in the higher-performing Web API.

As a result, Alloy Mobile now contacts just one endpoint for all its needs: /api/bulk/generic

This means that syncing is simpler, faster and more reliable than before!

Alloy May 2023 Update

We've got some exciting new features for you this month! The update took place during the evening of the 25th May. For a full list of changes in v2.47, please visit the Alloy Changelog.

New Item Form Expressions Builder 🧱

Item forms let you customise how a user can enter data when they create or edit items of a particular design/interface. You decide which controls appear on the form (e.g. show a Checkbox control for this Yes/No attribute) and how they behave (e.g. make the control "Required" even though the attribute isn't).

You can now use expressions to make your item form dynamic and reactive to user input!

What's an expression? Well, it's a sequence of values and functions that produces a final output.

Each control on the form has several configurable properties. If you set a property to target an expression, it will be set according to the expression's output, which can change depending on how the form is used (e.g. make the control "Required" only if another control is populated).

While some of you have been experimenting with writing expressions manually via the Alloy API, we're proud to announce the new Item Form Expressions Builder!

This lets you define an expression visually, by adding nodes to represent different values and functions, and then linking them together in a logical sequence. On first use, a handy tour will highlight the key areas and walk you through a simple example. For more detail, check out Alloy Help.

Expressions unleash the full power of item forms. Therefore, we're thrilled to make them accessible to a wider audience, and look forward to seeing them being used in innovative ways!

New join types in the Report Builder 🖇️

In the Report Builder, you can define a Join data source to combine the data from two AQS data sources (or other Join data sources) that share at least one column header.

Previously, the joined data would only include matching rows. For each row in the first data source, the value in the shared column (Defects in the example below) is compared to all the rows in the second data source. For every match, a combined row is created in the Join data source.

Those of you familiar with SQL will recognise this as an Inner join.

However, there are now other join types to choose from when configuring your Join data source!

A Left outer join includes the matching rows, along with all the rows from the first data source. As these extra rows have no matches in the second data source, they contain no values for those columns.

A Right outer join is the same except reversed, so all the rows from the second data source are included instead of the first.

A Full outer join includes all rows from both data sources! As with the other outer joins, non-matching rows will have blank columns on their opposite side.

Set workflow parameters ⚙️

Last month, we announced a new feature initially for Alloy API users: the ability to define and set parameters for manual workflows. This lets a workflow take input from the user that triggers it, providing a whole new degree of flexibility.

Following that, it's now possible to specify values for workflow parameters in Alloy Web. If a user triggers a manual workflow with one or more defined parameters, a window will appear to let them select each parameter and enter a value (see below).

For now, workflow parameters can only be defined via the API. However, this ability will also come to Alloy Web soon!

New Close Project workflow ✅

We've added a new Close Project manual workflow to all customer projects.

This provides a quick and easy way to close all the tasks in a project by setting their Status attributes to a chosen value (using the new workflow parameter feature mentioned above).

For those of you with projects containing hundreds of tasks, this will surely be welcome news. 😊

Edit the colour and icon of any item 🎨

If the Context property of an item is Core or Module, it can't be edited (except for any custom attributes your organisation has added to its design). This ensures that important items remain consistent for everyone.

However, we do like to offer customisation where we can!

Therefore, you can now edit the Colour and Icon properties of any item, regardless of its Context. 

You can also set the Name and Colour of any basemap.

Optimised item header on iOS 🦲

Nowadays, iPhones come in different form factors and screen shapes. Up top, you've got your classic "rectangle" (iPhone SE), the distinctive "notch" (iPhone 14) and the new "island" (iPhone 14 Pro).

Additionally, some models display a thin grey bar at the bottom, to serve as a reference point for gestures such as app switching. In Alloy Mobile, this could obscure the dots in the minimised item header (that indicate when multiple items are selected).

Therefore, we've optimised the item header to display correctly on all iPhone models, whether it's positioned at the top or bottom of the app. The dots can no longer be obscured and a white bar now indicates that you can drag the header upwards to see the selected item's details.

Stacked assets on Android 🥞

As you perform a round using Alloy Mobile, you may find yourself needing to select from one or more overlapping assets (e.g. to record when a bin hasn't been put out).

Previously, only the top asset would be selected, unless you spent time zooming in far enough for the assets to appear separately (and then zoom out afterwards).

Now, the overlapping assets will be listed in a standard item picker, making it easy and quick to select the correct one.

New Alloy Help site 📖

We're pleased to announce that Alloy Help has received a beautiful makeover this week 💄.

The website has been rebuilt from the ground up to be bigger, bolder and easier to navigate.

Content now appears larger and fills more of the screen, making it clearer and more comfortable to read. The left sidebar can group articles more effectively for better browsing. A handy Table of Contents appears on the right, which displays an outline of the current article and your position in it, and lets you jump to a particular heading.

There's even a Dark Mode for some gentle night-time viewing 🌙.

This forms part of ongoing work to improve the quality and readability of Alloy's documentation, so you can find and absorb information when you need it.

To check it out, visit help.alloyapp.io or select the bottom-right ? icon in Alloy.


Alloy April 2023 Update

This month's update brings two new features to the Geometry Editor and makes several common actions quicker to perform. The update took place during the evening of the 27th April. For a full list of changes in v2.46, please visit the Alloy Changelog.

Measure geometry everywhere 📏

Back in October, we added the Measure tool, which lets you select multiple points on the map to see the length between them, plus the area of any closed shape.

We've now extended this functionality to the Geometry Editor, so you can see the dimensions of all lines and polygons, even as you draw them!

Snap to nearby geometry ➡️

Another new feature in the Geometry Editor is snap layers, which lets your pointer "snap" to nearby geometry.

To get started, select Menu (bottom-right)choose Snap layers, and then choose a visible layer to act as the snap layer.

From now on, when your pointer approaches snap layer geometry, it'll automatically jump to align itself with the nearest point or line.

This makes it super easy to plot geometry directly alongside another item's geometry, e.g. a building connected to another building, a road branching off from another.

Quickly add columns in the Data Explorer 📋

Adding attribute columns in the Data Explorer is a common action, one that we certainly find ourselves performing a lot. Despite selecting all your desired attributes upfront, you inevitably end up wanting to add more later!

To reflect this, we've added an extra Configure attributes button to the top bar. This lets you open the Pathfinder in a single click, without having to use the bottom-right Menu button.

Quickly access the Job Work Units Editor 🛠️

When viewing a job's details, you can open the Job Work Units Editor by switching to the Job Work Items or Job Bill Items tab, and then selecting More in the action bar.

While this is intuitive, it can become a bit laborious if you've got lots of jobs to move through!

To address this, you can now open the Job Work Unit Editor from the General tab as well, without having to switch tabs.

Easily filter designs in the map picker 🗺️

When selecting items in the map picker, you can filter the displayed items by selecting Menu (bottom-right) and choosing Filter designs.

Previously, the right-hand item list would change to a design list. After selecting the relevant designs, you then had to select Search here to refresh the displayed items and change the list back to items.

This proved confusing at times, so selecting Filter designs now displays a standard design picker, and the map refreshes automatically after saving your selection.

Custom Job Work Items on Android 🛠️

Following on from last month, custom job work items are now supported on Android in addition to iOS.

When adding a job work item to a job, you can now choose from all designs that implement the Job Work Items interface (and which you have permission to create items for).

To learn more about custom job work items, see February's post.


Alloy March 2023 Update

This month's update lets you do more with Alloy's existing features, particularly if you work with multiple contractors. The update took place during the evening of the 30th March. For a full list of changes in v2.45, please visit the Alloy Changelog.

Better looking AQS attributes 😎

Previously, editable AQS attributes appeared as tall dark boxes that displayed their underlying JSON code. While it was occasionally useful to edit the code directly, the box took up a fair bit of vertical space and was restricted by the limited width available.

Therefore, AQS attributes now occupy a single line like other attributes. This frees up space for up to five attributes below it, letting you see more information without scrolling.

Selecting an AQS attribute will open the query in the AQS Builder, where you can view and edit its structure and values.

To access the query's JSON code in a full-sized editor, select the { } button.

JSON attributes have undergone a similar transformation in recent months.

Process over 1000 activity items at once 📋

Creating or editing activity items (e.g. defects, jobs, job work units) requires Alloy to perform extra logic for activity-specific functionality (e.g. copying geometry from a parent asset, calculating costs).

Previously, this work was performed using Alloy's Extended API, which could process all the extra logic at the cost of performance. Unfortunately, a safety limit of 1000 items was necessary to ensure consistent service delivery.

However, over the past year, we've been working to gradually migrate these functions to the main Alloy API, which we've documented in previous announcements. With some crafty optimisations, we've been able to reproduce the same functionality at higher performance levels, to the point where the safety limit can be ditched!

Therefore, you can now create/edit over 1000 activity items in a single workflow, or by using the Alloy API directly.

Street Manager v4 🚧

Both Alloy Web and Alloy Mobile have been updated to support Street Manager v4, in accordance with legislation coming into force on 1st April.

For full details of what's changed, see this previous announcement.

Job cost calculation permissions 💵

When a user edits the Estimated Value or Actual Value attribute of a job work item, the Estimated Cost or Actual Cost attribute is recalculated accordingly.

Previously, this required the user to have read and write permission for the Cost attributes of the job work item's design.

However, if you employ contractors to carry out jobs, you probably don't want to grant them these permissions! Doing so would let them edit the cost of their work directly, irrespective of the value.

Therefore, Alloy now calculates the Cost attributes of job work items via a system process. This means that users can now update the value of their work without needing to see or edit the cost.

Custom Job Work Items on iOS 🔨

Following on from last month, custom job work items are now supported on Alloy Mobile iOS (and on Android next month).

When adding a job work item to a job, you can now choose from all designs that implement the Job Work Items interface (and which you have permission to create items for).

Support for Change Component Job Work Items is coming soon.

Edit JWIs and attach multiple images on Android 📷

Following on from last month, these two features are now available on Android in addition to iOS.

When creating a new job, you can now edit job work items as you add them. Previously, you had to finish creating the job, edit the job, and then enter values for the job work items you added.

When attaching images to an item, you can now select up to five images at once to upload them all in one go.

Alloy February 2023 Update

We've got more good stuff for you this month, including several quality-of-life improvements that are simple yet effective. The update took place during the evening of the 23rd February. For a full list of changes in v2.44, please visit the Alloy Changelog.

Read all about it

Sometimes, you want to store lots of text within a Text attribute, e.g. a description of a job, notes about an asset's condition.

By default, Text attributes are displayed as a single line. However, you can change this by editing a design's stencil and enabling the Multiline property of the attribute's control. This lets you see up to 12 lines of the attribute's text.

Previously, any text longer than 300 characters would appear truncated. While you can display the full text in a tooltip by hovering your mouse over it, this is tricky for touchscreen users.

Therefore, we've added a discreet Show More button below the last line.

Select it to display the full text in its own window.

See where attributes come from

When viewing the results of a Join query in the Data Explorer, the columns display attributes from the queried design/interface, along with attributes from one or more linked designs/interfaces.

Previously, it wasn't clear which attributes came from which design/interface, especially when viewing attributes with identical names (e.g. Title, Subtitle).

Therefore, the column header of a linked attribute now displays the design/interface it comes from, providing a clearer picture of the data in front of you.

Isolate work to specific contractors

If you employ multiple contractors, you don't want them seeing every job work item in your system, as these often contain sensitive information, e.g. how much you pay another contractor!

No problem, you can now create custom job work item types, and make each one apply to a specific contractor only.

It's simple – just create a new design that implements the Job Work Items interface, so it inherits all the necessary attributes.

You can then configure the permissions of your new design accordingly, so that only the appropriate contractor has read/write access to it.

When configuring a job in the Job Work Unit Editor, your new design will now be selectable.

However, when the job is viewed, each contractor will only see the job work items of the design that applies to them.

Customise search settings in the Job Work Unit Editor

When choosing work items in the Job Work Unit Editor, you can now customise the search settings in the same way as standard item pickers.

Remember, search settings apply per design/interface, so customising them here will affect how items of the Work Items interface are listed throughout Alloy.

Edit job work items as you add them on iOS

When creating a job in Alloy Mobile iOS, you can specify one or more job work items to represent the work to be done.

Previously, you could add the job work items, but couldn't edit their values until you'd finished creating the job and then gone back to edit it.

Now, selecting the Job Work Items field will open the new Job Work Item Editor, where you can select from a list of available work items and then edit their values before proceeding to create the job.

This feature will arrive on Android next month.

Attach multiple photos at once on iOS

When viewing an item's details in Alloy Mobile iOS, you can upload one or more file attachments directly to it.

If you choose to Add from photos, you can now select up to five photos simultaneously and attach them all in one go. Nice!

Admins can disable users

Admins can now disable user accounts in Alloy Web. This prevents a user from logging into Alloy on any platform without deleting their account, in case it needs to be re-enabled in future.

Show Previous EntriesShow Previous Entries