Forum Discussion
Adaptive Insight Connector
There isn't one, but depending on your login credetials you may be able to create it in power query. This does not work if using Azure Active Directory
---------------------------------------------------------
I recently was able to connect Power BI to our Adaptive instance using the attached pdf as guidance. You probably need to tweak this for Tableau. The only tweak I had to do to the xml section was to double the "double quotes". The rest of the code are Power BI specific code (M Language).
let
Source = Xml.Tables(
Web.Contents("https://api.adaptiveinsights.com/api/v14",
[Content = Text.ToBinary("<?xml version='1.0' encoding='UTF-8'?>
<call method=""exportData"" callerName=""PowerBI"">
<credentials login=""user name here"" password=""password here"" instanceCode=""instance code here""/>
<version name=""Forecast""/>
<format useInternalCodes=""true"" includeUnmappedItems=""false""/>
<filters>
<accounts>
<account code=""Expenses"" isAssumption=""false"" includeDescendants=""true""/>
</accounts>
<timeSpan start=""Jan-2018"" end=""Dec-2019""/>
</filters>
<dimensions>
<dimension name=""Project Allocation""/>
</dimensions>
<rules includeZeroRows=""false"" includeRollups=""false"" markInvalidValues=""false"" markBlanks=""false"" timeRollups=""false"">
<currency useCorporate=""false"" useLocal=""false"" override=""USD""/>
</rules>
</call>")
])),
CSV = Table.SelectColumns(Source,{"output"}),
#"Split Column by Delimiter (Rows)" = Table.ExpandListColumn(Table.TransformColumns(CSV, {{"output", Splitter.SplitTextByDelimiter("#(lf)", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "output"),
#"Split Column by Delimiter1" = Table.SplitColumn(#"Split Column by Delimiter (Rows)", "output", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"output.1", "output.2", "output.3", "output.4", "output.5", "output.6", "output.7", "output.8", "output.9", "output.10", "output.11", "output.12", "output.13", "output.14", "output.15", "output.16", "output.17", "output.18", "output.19", "output.20", "output.21", "output.22", "output.23", "output.24", "output.25", "output.26", "output.27", "output.28", "output.29", "output.30", "output.31", "output.32", "output.33", "output.34", "output.35", "output.36", "output.37", "output.38", "output.39", "output.40", "output.41", "output.42", "output.43", "output.44", "output.45", "output.46", "output.47", "output.48", "output.49", "output.50", "output.51", "output.52"}),
#"Promoted Headers" = Table.PromoteHeaders(#"Split Column by Delimiter1", [PromoteAllScalars=true]),
#"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",{"Account Name", "Account Code", "Level Name", "Project Allocation", "Jan-2018", "Feb-2018", "Mar-2018", "Apr-2018", "May-2018", "Jun-2018", "Jul-2018", "Aug-2018", "Sep-2018", "Oct-2018", "Nov-2018", "Dec-2018", "Jan-2019", "Feb-2019", "Mar-2019", "Apr-2019", "May-2019", "Jun-2019", "Jul-2019", "Aug-2019", "Sep-2019", "Oct-2019", "Nov-2019", "Dec-2019"}),
#"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Removed Other Columns", {"Account Name", "Account Code", "Level Name","Project Allocation"}, "Attribute", "Value"),
#"Renamed Columns" = Table.RenameColumns(#"Unpivoted Other Columns",{{"Attribute", "Period"}}),
#"Filtered Rows1" = Table.SelectRows(#"Renamed Columns", each [Value] <> "0.0"),
#"Sorted Rows" = Table.Sort(#"Filtered Rows1",{{"Value", Order.Ascending}}),
#"Changed Type" = Table.TransformColumnTypes(#"Sorted Rows",{{"Period", type date}, {"Value", type number}}),
#"Calculated End of Month" = Table.TransformColumns(#"Changed Type",{{"Period", Date.EndOfMonth, type date}}),
#"Added Account Column" = Table.AddColumn(#"Calculated End of Month", "Account", each Text.Start([Account Code], 5), type text),
#"Changed Type1" = Table.TransformColumnTypes(#"Added Account Column",{{"Account", Int64.Type}}),
#"Removed Errors" = Table.RemoveRowsWithErrors(#"Changed Type1", {"Account"}),
#"Added Dept Column" = Table.AddColumn(#"Removed Errors", "Dept", each Text.Start([Level Name], 6), type text),
#"Added Version Column" = Table.AddColumn(#"Added Dept Column", "Version", each "Current Forecast"),
#"Changed Type2" = Table.TransformColumnTypes(#"Added Version Column",{{"Account", type text}, {"Version", type text}})
in
#"Changed Type2"
I was able to use this coding to get my connection to work. The one issue I am having is the time span is not filtering. I end up with every month of the version I am pulling.
- rtaylor6 years agoHelper III
That shouldbn't be a problem though right? You should be able to use power query and filter the dates you need after your api request is complete.
- keeganm6 years agoFrequent Visitor
You can, it just not as efficent. I am using version 23 of the API and I found instead of using Jan-2020 I had to use 01/2020.