Skip to content
James Dunkerley edited this page Apr 4, 2017 · 2 revisions

Alteryx Omnibus

The Bus

A framework and set of example custom tool for Alteryx build on top of the .Net and HTML APIs.

This wiki contains documentation about both the framework and the example tools.

Omnibus Framework

The framework is distributed as a set of Nuget packages allowing development of custom tools more easily. It currently consists of 4 parts:

  • Omnibus.Framework.Shared: Common interfaces and attributes
  • Omnibus.Framework: BaseEngine and classes to support development of the engine parts
  • Omnibus.Framework.GUI: BasePlugIn and classes for GUI side for a custom plugin. Not needed for HTML frontends
  • Omnibus.HTMLHelper: Command line tool to generate starting HTML plugin

Current Tools (as of version 0.4):

Date Time Input

A slightly expanded version of the Date Time Now tool. It will create a date field equal to one of the following values:

  • Today
  • Now
  • Yesterday
  • StartOfWeek
  • StartOfMonth
  • StartOfYear
  • PreviousMonthEnd
  • PreviousYearEnd

Circuit Breaker

This is an expanded idea based off the Test tool. The idea here is that the input data (I) is only passed onto the rest of the workflow if there is no data received in the breaker input (B).

Date Time Parser

This exposes the .Net DateTime.Parse functions to Alteryx. It parses a date from a text field and adds to the output.

As this tool supports all formats that the DateTime.ParseExact function does, it should deal with parsing all the random formats that keep come up. This tool supports different cultures allowing parsing of any supported date formats.

This tool has had a lot of performance tuning and operates reasonably close to the native DateTime tool but allows any format (or allows .Net to attempt to match any it recognizes).

Number Parser

This exposes the .Net double parse functions to Alteryx. Parses a number from a text field and adds to the output. Again, this tool supports different cultures allowing parsing of any supported number formats. Specifically, this means you can bring in numbers with thousand separators and in German format.

String Formatter

This tool can be used to convert from a numerical or date or time field to a string field. It supports different cultures and number formatting. Pretty much the inverse of the two Parser tools.

Hash Code Generator

This exposes the .Net System.Security.Cryptography HashAlgorithms to Alteryx. It takes and input string and computes the hash value. It supports MD5, RIPEMD160, SHA1, SHA256, SHA384 and SHA512.

Random Number

This generates a random number based off a specified distribution (currently Linear, Normal and LogNormal). This uses the Math.Net Numerics package. Can be seeded to allow the same sequence each time.

HexBin

This reproduces the hexagonal binning functionality built into Tableau. It is based off the algorithm used in the d3 HexBin plugin. It defaults to a radius 1 hexagon but you can specify different sizes.

Sort with Culture

This tool exposes sorting with a culture from .Net. This was an experiment and there is actually sorting with culture provided in the main Sort tool.

Roslyn Input

Currently a proof of concept tool. It allows you to write C# code and have the results be pushed straight into Alteryx as a data flow. It has support for syntax highlighting and pushing one or more records. This is not a final version and will under go many changes in the next versions.