Public Service Announcement: No More Deleting Plan Types (11.1.2.4 and PBCS)

Someone asked me today…how do I easily delete Plan Type in Hyperion Planning.  I thought to myself…why would they ask that?  In 11.1.2.3 they added a cool new Plan Type Manager that allows you to add, delete, and rename Plan Types.  But hey, I’ll fire up Planning and take some screenshots.

First, let’s look at the 11.1.2.3 to make sure that Brian hasn’t lost his mind:

PlanTypeDelete01a

Fantastic…I may be losing my mind, but at least I’m not quite there yet.  Clearly you can rename and delete Plan Types.  So then I fired up 11.1.2.4:

PlanTypeDelete02

That looks totally different!  First, there are no text boxes to rename Plan Types.  Second, there is no delete button at all.  Interesting.  For grins, let’s look at PBCS:

PlanTypeDelete03

I guess I shouldn’t be surprised that they look the same…  So now let’s try to add a new Plan Type:

PlanTypeDelete04

It seems there is no reason to check the documentation.  They seem to have removed this functionality on purpose.  While I’m sure they had their reasons, I’m not a fan of removing functionality.  Just for fun, here are the release notes for 11.1.2.3 where they specifically call out the additional new features:

https://docs.oracle.com/cd/E40248_01/epm.1112/planning_new_features/planning_new_features.html

And if you scroll way down you should see this:

PlanTypeDelete05

When I have some more time, I’ll be posting an article on deleting Plan Types using the Planning repository.  And then when I have even more time…I’ll show you how to do it on PBCS.  In the meantime, I’m off to delete a Plan Type the hard way.


Building a Hyperion Home Lab: The Build and Installing ESXi

Before we go to far, let’s consolidate what we’ve done so far.  Here’s a list of the entire series:

Ok, now that we have all of this hardware, what do we do with it?  Build a computer!  I won’t go too much into the details, as you can find plenty of information about this using Google, but here are the basic steps I took:

  1. Get the case ready by moving the motherboard stays around to match up to your motherboard.  For me, I had a 4U case left over from another project, so I used that rather than the Norco from my guide.
  2. Install your motherboard.  For me, this was an ASRock Server motherboard from the guide.
  3. Connect your front panel wires: For me, this included the power switch, reset switch, power LED, HD LED, and USB ports.
  4. Install and connect any case fans.  For me, I used the one’s that came with my 4U case.
  5. Install your processor(s).  For me, this was a pair of E5-2670’s.
  6. Install your memory.  For me, this was 16 x 8 GB DDR3 modules.
  7. Install your power supply and hook it to the motherboard.  For me, I chose the slightly cheaper than my guide Seasonic M12II.  I may update the guide depending on how I like it.
  8. Install your heat sinks.  For me this was a pair of Noctua 4U compatible models.
  9. Install any PCIe cards.  For me, this included an Intel X520-DA1 10GB network card and an Areca 1880i RAID adapter.
  10. Install your hard drives.  For me, this included one Sandisk Ullra II 960GB drive along with four Samsung 840 Pro’s that I moved from another system.

Here’s a shot of my system during the build:

2016-03-06 11.40.08

Ok…we have the computer built…now what?  It’s time for software.  If you want to go the route of using your new computer as a multi-purpose system, then you will likely want to install VMWare Workstation or Oracle’s VirtualBox.  At this point, I would recommend heading over to Jake’s blog, as I have no desire to redo all of the great work he has already done.  You can find his entire guide here.  You can skip straight to the VMWare stuff here.

But what about ESXi?  To start our ESXi installation, we need a way to install ESXi.  We also need a place to install ESXi.  What if we could use the same location for both?  Sounds good…let’s do that.  First, we have a few prerequisites:

  • Download the installation ISO for VMWare ESXi.  I am using ESXi 6.0 with Update 1.  The name of my ISO is VMware-VMvisor-Installer-6.0.0.update01-3029758.x86_64.iso.
  • Download Rufus.  Rufus is a great tool for creating bootable USB thumb drives.  You can get the portable version of 2.7 here.
  • Purchase a USB thumb drive.  I use a 8GB SanDisk Cruzer Fit from Amazon.  I’ve used SanDisk drives for this purpose on two other systems.

So I’ve downloaded my ISO, I’ve downloaded Rufus, I’ve purchased my thumb drive and I’m ready to make an ISO.  Now what?  Try this:

  1. Fire up Rufus.  It may prompt you to elevate to administrator priveledges, so do that.  It may also ask you about updates, I just answer No and move on.  It should look something like this:ESXiInstall01
  2. It may have picked your USB device by default, if not, choose the proper device:ESXiInstall02
  3. Make sure that MBR partition scheme for BIOS or UEFI is selected:ESXiInstall03
  4. Select FAT32:ESXiInstall04
  5. Select 4096 bytes:ESXiInstall05
  6. Select ISO Image and then click on the ISO button:ESXiInstall07
  7. Select the ESXi ISO image and click Open:ESXiInstall08
  8. Enter a volume label:ESXiInstall06
  9. Verify all of your settings and click Start.ESXiInstall09
  10. Click Yes when it tells you that something is obsolete:ESXiInstall10
  11. Click OK to erase the selected device and create your bootable thumb drive:ESXiInstall11
  12. Assuming all goes well, it should complete and look something like this:

ESXiInstall12

Now let’s plug our new thumb drive into our new computer!  You may need to modify your BIOS/UEFI settings to make the thumb drive your primary boot device.  Once you do that, you should be ready to run through the installation.

  1. You can either hit enter or wait for the automatic boot to take you into the installer:
    ESXiInstall14
  2. The installer will load:ESXiInstall13
  3. And load…ESXiInstall15
  4. Press Enter to continue:ESXiInstall16
  5. Press F11 to agree and continue:ESXiInstall17
  6. Select your USB drive from the list and press Enter.  The capacity should give it away.ESXiInstall18
  7. Press Enter to confirm that you don’t have anything on the USB drive that you care about, because it’s about to be erased:ESXiInstall19
  8. Choose your language and press Enter:ESXiInstall20
  9. Enter a password for your root account, enter it again, andpress Enter:ESXiInstall21
  10. Press F11 to start to installation to your USB drive:ESXiInstall22
  11. Watch the progress bar, grab a cup of coffee, get a snack:ESXiInstall23
  12. After a reboot, you should be booting into ESXi from your USB drive and see something like this:ESXiInstall24

And now we have ESXi running on our new computer.  Now go build a Hyperion environment!  Once you get to this point, I’d highly recommend taking a look at Jake’s series on building out your own environment.  You can see the entire series here.


The EPM Week In Review: Week Ending March 12, 2016

Another busy week…maybe not as busy as last week.

Patches and Updates:

Oracle released Account Reconciliation Cloud Services (ARCS).  PBCS finally has a cloud-based sibling.

Oracle has officially posted the landing page for another PBCS sibling…Enterprise PBCS.  While it is not yet available, it does have pricing information.

Jason released version 1.5.5 of Drillbridge, now under the Applied OLAP license and with a few bug fixes.

New Blog Posts:

This week, I blogged about Drillbridge and then Drillbridge again.

Doug and Brian have started a series on Migrating from FDM to FDMEE: Into, FDM Migration Utility System Requirements, FDM Migration Utility Secret Sauce.

Opal walks us through the new FR Web Studio.  She also reminds us that PBCS requires Adobe Flash to properly use Calculation Manager (because sometimes Oracle thinks it’s still the early 2000’s).

Another FDMEE post from Dayalan discussing end-user access.

Eric has an introduction to the aforementioned ARCS here.

My long-time colleague at US-Analytics, Terry, provides a tutorial on PSE 22506614.  Clearly we need to work on his blog titles…

Another FDMEE post, this time from John Goodwin (who knows everything…seriously…everything) continuing his deep dives into the various Web Services.

Will starts off a series on loading data into Planning using the Outline Load Utility with an introduction to encrypting your password.

Other News:

Microsoft announced that they will be bringing SQL Server to Linux.  No, it’s not April 1st, this is real.  Also, Hell has frozen over.

We had a good lunch gathering here in Dallas on Friday at Thai Star in Addison.  You can still join the MeetUp group here in case you missed this one but want to catch the next one.

ODTUG has announced the Hands On Training for KScope16.  Get all the details here.


Drillbridge Aquired by Applied OLAP and Community Edition 1.5.5 Released

Applied OLAP has officially completed the acquisition of Jason Jone’s Drillbridge product.  This is great news for those of us that are fans of the product as it gives Drillbridge the backing of a company with a long-standing record of great support and other great products.  Jason will now be working directly for Applied OLAP.  Congrats Jason!  We’re all excited to see what comes next for Drillbridge.  His official update.

Speaking of what comes next, there has also been a new release of the Community Edition.  Version 1.5.5 is available here once you register.  Stay tuned for another post on upper level drill-through with Drillbridge!


Drillbridge: Introduction

***Updated 2016/03/10 for Firefox Issue Fix***

So you have an existing Essbase model and you are finally ready to provide your end-users with drill-through.  But wait…EIS is dead and buried and while Essbase Studio can be made to function with an existing cube, it is somewhat painful to actually make it work properly.  On top of that, it just isn’t very flexible in the way that it provides drill-through.  So what do we do?

I guess we could technically go build our own custom drill-through definitions and figure out a way to make it work.  There’s always FDMEE, but that’s not cheap and doesn’t offer upper-level drill-through.  Enter Jason Jones (a fellow Oracle ACE) and his amazing tool just for drill-through.  Drillbridge is one of the coolest third-party tools I’ve used in the EPM space.  So how do we get started?

First, let’s head over to the Drillbridge website and download the Community Edition (1.5.4).  This is the free version and a great place to start.  You can download 1.5.4 here.  You will need to register and login to the site to actually see the download link.  Once we have the ZIP file downloaded, we can move on to installation.

Before you install Drillbridge, make sure that you have Java installed and in the PATH.  You can verify this by opening up a command prompt and typing java -version.  Once we verify that Java is working properly, the installation is pretty straight forward.  We just unzip the file that we downloaded into a directory on our server.  I chose E:\Drillbridge.  You should end up with something looking like this:

Drillbridge01Open up a command prompt change directories to the bin folder and test Drillbridge by typing Drillbridge.bat console.  Assuming everything work, you should see something like this:

Drillbridge02

You can go ahead and stop the service and now we are ready to install the service by typing in Drillbridge.bat install.

Drillbridge03

This should create a new service.  We can run Services.msc to make a quick change to the service.  I like all of my services using my Hyperion Service account, so I right-click on the new service and click Properties.  Once on the properties screen, click on the Log On tab and enter your credentials.

Drillbridge04

Then click OK and you should be ready to start up your service:

Drillbridge05

Now we can log into the system and start our configuration!  Let’s fire up the website and take a look.  You should be able to navigate to [Servername]:9220 which should provide you with the splash screen:

Drillbridge06

We’ll start by creating a connection.  Click on the Connections button at the top of the screen and you should be prompted for a username and password.  The default username is admin and the default password is drillbridge.

Drillbridge07

Once you are logged in, you are ready to click the New Connection button:

Drillbridge08

In case you want to test this with everyone’s favorite Essbase application, I’ve created a SampleBasic SQL Server database for you to play with.  I’ve also included a SQL Essbase Load Rule to load data our Sample.Basic Essbase database.  The database includes a Fact table with 1.25 million records of data to load along with level 0 meta-data tables and a full extract of the meta-data from Sample.Basic courtesy of the Advanced Outline Extractor from AppliedOLAP.  You can get both here.  If you end up using my sample, your connection should look something like this:

Drillbridge09

Now that we have a SQL data destination for our drill-through, we are ready to configure the Essbase side of things.  First, we’ll add an Essbase server.  Click on the Servers button at the top of the screen and then click on New Server button.

Drillbridge10

Enter your Essbase details and click Save.

Drillbridge11

Now that we have our Essbase server configured, we can add our actual Essbase database.  Click on the newly created server:

Drillbridge12

Once you click on the server, you should see a new tab.  Click on the Cube Mappings tab:

Drillbridge13

Click on the New Cube Mapping button:

Drillbridge14

Enter the details for your Essbase application and click save.  I’ll be using Sample.Basic to go with my sample data:

Drillbridge15

Now that we have our database configured, we need to configure the deployment specs.  What’s a deployment spec?  Basically we need to specify the intersections in our Essbase database that will be enabled for drill-through.  We specify the deployment spec once because we may have multiple drill-through options for each of our intersections.  To add our deployment spec, click on Admin in the top right corner and then click on Deployment Specs.

Drillbridge16

Click on the New Deployment Spec button:

Drillbridge17

Enter a name and a set of intersections in the specification.  Also, check the box indicating Level-0 only.  We’ll start simple in this blog post and in our next post we’ll head to the upper levels where the fun stuff happens.

Drillbridge18

The code that I used basically gives us level 0 for all of our dimensions except the Scenario dimension.  I’ve just specified Actual and Budget as the Variance members are calculated anyway.

@RELATIVE("Year", 0),@RELATIVE("Measures", 0),@RELATIVE("Product", 0),@RELATIVE("Market", 0),"Actual","Budget"

We have all of the foundation ready to go, now all we need is a drill-through report.  Click on Reports and then click on New Report.

Drillbridge19

We’ll give it the report a name, choose a connection, and provide a query.  We’ll also select an Essbase connection and choose a few options at the bottom.

Drillbridge20

And here’s the code for the query:

SELECT
	 DimMarket
	,DimMeasures
	,DimProduct
	,DimScenario
	,CONVERT(VARCHAR(10),CAST([DimYear] AS DATETIME),101) as [Date]
	,CONVERT(CHAR(3), CAST([DimYear] AS DATETIME), 0) AS DimYear
	,TransactionNumber
	,Amount
FROM
	[SampleBasic].[dbo].[FactSample]
WHERE
    DimMarket  = '{{ "name" : "Market",    "expression": "#Market"      }}' AND 
    DimMeasures = '{{ "name" : "Measures", "expression": "#Measures" }}' AND
    DimProduct = '{{ "name" : "Product", "expression": "#Product" }}' AND
    DimScenario  = '{{ "name" : "Scenario",  "expression": "#Scenario"  }}' AND
    CONVERT(CHAR(3), CAST([DimYear] AS DATETIME), 0)  = '{{ "name" : "Year",  "expression": "#Year"  }}'

Once we create the report, we still have a few things left to do.  Click on the report name to modify the report.

Drillbridge21

Click on the Validate tab to verify that the connections to both Essbase and our Relational database are good along with the report definition.

Drillbridge22

Click on the test tab and enter an intersection and click Build It to see a preview of the drill-through report.

Drillbridge23

And here’s the sample:

Drillbridge24

Finally, we’ll choose our Deployment Spec and  Server and click the Deploy button to finish off our first drill-through with Drillbridge.

Drillbridge25

Now we can fire up Smart View and try it out.  We’ll drill into a level-0 intersection and make note of our value ($249,683):

Drillbridge26

And here’s our nice drill-through report courtesy of Drillbridge:

Drillbridge27

Our numbers up top tie (since this is pulled from Essbase…it should).  You can click on the Excel link and tie out the numbers.

If you are using Firefox as your default browser, beginning in 11.1.2.4, it requires the Oracle Smart View for Office 11.1.2.5.x extension.  If you don’t have this installed, you will likely receive something like this:

FirefoxFail

That was my error until I installed this:

FirefoxWin

And that’s it for today.  This is one very long post, but there’s no great way to break it apart.  Go grab Drillbridge and give it a try.  Exciting things are coming and I can’t wait to use this product at several of my clients.  As we continue to explore this tool, we’ll move onto upper level drill-through and then move onto some of the more advanced features.


The EPM Week In Review: Week Ending March 5, 2016

It was a very busy week in the EPM space.  We had several patches released along with a large amount of great blog content.

Patches and Updates:

HPCM 11.1.2.4.120 has been released.  Looks like a lot of bug fixes and some new features.

Hyperion Tax Provision gets patch 11.1.2.3.701.

The long-awaited 11.1.2.4.200 patch is out for HFM.  There are a lot of new features…but it looks like they didn’t manage to include web-based meta-data management. I have verified this in my test lab…sigh.

Disclosure Management 11.1.2.3.815 is also available.  It seems to be purely bug fixes.

New Blog Posts:

This week I got back to PowerShell with a focus on Hyperion Planning and the Outline Load Utility.

Vijay posted his first in a series of posts on the DRM Batch Utility.  I look forward to the rest of this series.

Philip has a guest post on Cameron’s blog about PBCS and Valid Intersections.  When will they finally give this to the on-premise users?!

Neha shows us how to upload Smart Lists in PBCS and Hyperion Planning using the web-based interface.

Dmitry has posted the second part of his EPMA and ODI integration series.

Tony helps us understand how to perform process log analysis in FDMEE.

For a little bit of BI blogging, check out a BICS introduction to projects over at ArtOfBI.

Rodrigo shows us how to dynamically export objects from ODI.

Jake came out of blogging retirement to show us how to use the REST API in PBCS with Groovy.  Great stuff as always.

Henri has a great post about the previously mentioned 11.1.2.4.200 patch for HFM.

Blogs from the Past:

This is a new section of our week in review.  Basically, if I used a blog post for something, I feel like I should give people credit for great work.  So this area will just bring up older blog posts that maybe you missed or just that I found helpful.

I was working with the Essbase JAPI and I made use of Jake’s post about Groovy and Dmitry’s post on his outline scrambler.  Without these posts, I’m sure it would have taken me days to figure it out.  Thanks guys!

 

Other News:

123OLAP is having a great sale on EPM training.  See more here and be sure to let them know that Brian @ US-Analytics sent you their way!


Officially an Oracle ACE Associate

This just came for me in the mail:

20160302_142832

I now have a pin, a sleeveless fleece sweater, and a shout-out on the Oracle ACE twitter account…I must be a real ACE Associate!

Now how do I get one of those fancy ACE or ACE Director sweaters?


PBCS March 2016 Update: FR Web Studio Is Almost Here

If you are a PBCS user, you should have gotten or will be getting an e-mail from Kash with the March release of PBCS. The headline to this release is the new Financial Reporting Web Studio. I’ll have a full post once the patch hits my PBCS test instance (very soon). In the meantime, have a look at the docs:

http://www.oracle.com/technetwork/middleware/bi-foundation/fr-webstudio-2874377.pdf

While we were all expecting the new web-based FR studio, I didn’t realize they were overhauling the charting engine.  It’s about time!  Here’s another doc on that:

http://www.oracle.com/technetwork/middleware/bi-foundation/fr-charting-2874649.pdf

One thing that I was hoping for but see no mention of…Attribute Dimensions.  I’m guessing we are waiting for a significant Smart View update for this to become a reality.  So we’ll continue waiting.  And just in case you haven’t gotten the e-mail yet or are just curious, here’s the actual release documentation from Oracle:

RCD_PBCS_March_2016


PowerShell and Hyperion: The Outline Load Utility

I was reminded recently that I promised to continue with PowerShell in my last PowerShell blog post, but that I hadn’t done it yet.  I may have gotten a little caught up in my home lab series.  So, if you were waiting and waiting for this, my apologies.

Now that we have a little bit of PowerShell working knowledge and we have it working with MaxL, let’s get serious about some of our other batch commands.  Today we’ll focus on the outline load utility for Planning.  If you’ve used this utility in your batch commands before, you can probably skip the first part of this blog post.  If not, let’s first talk about what the outline load utility is.  It may be the worst named utility that I’ve ever used.  The outline load utility doesn’t actually load an outline at all.  And to make matters worse…it’s not even just a meta-data tool.

The outline load utility allows us to load meta-data, numeric data, text-based data, build smart lists, and generally manage the back-end of Hyperion Planning from a batch script (or PowerShell).  Today we’ll focus on getting the utility working in PowerShell.  So where is this mythical utility?  You should be able to find it here:

<epm install drive>:\Oracle\Middleware\user_projects\epmsystem1\Planning\planning1

You will actually find quite a few utilities in this directory.  There are utilities for imports, exports, running business rules.  This directory is why I will never wake up one day and say “I wish I had something to blog about.”  I’ll literally never run out of content with all of these hidden gems out there.  Here’s a sample:

OutlineLoad1

Next we need to decide what we want to do with the utility and give it a shot.  There are so many things that we can do with it, I’m going to stick with something really simple and use the 11.1.2.3.500 Sample Vision app for the demonstration.  This way you should all be able to reproduce what we are doing.

So let’s first log into our Vision sample app and take an export of the Product dimension.  Once inside our app, click on Administration then Import and Export and then Export Metadata to File.OutlineLoad2

Select our Product dimension from the list and click Run and we should have a great file to start playing with.  When prompted, just save the file away and we’ll come back for it later.

Now let’s get back to our Planning server and start up PowerShell.  Once we have our window open, let’s just change our directory and run the CMD file and see what happens:

OutlineLoad3

You should get something totally useful like this:

OutlineLoad4

Before we go any further, we need to go ahead and generate a password file for the load utility.  This will allow us to execute our PowerShell script without needing to enter a password each time.  To do this we just type in PasswordEncryption.cmd PasswordFile.pass.  It should prompt you for a password.  This will be the password to the username that we will eventually tell the load utility to use.  Enter your password, press enter, and the file we need should be produced.

OutlineLoad5

Now we are ready to load the file that we exported earlier from Workspace.  I placed my exported file directly into the planning1 folder with the utility for my first execution just to make things simple.  So first let’s look at the command, then we’ll pick it apart:

.\OutlineLoad.cmd -f:PasswordFile.pass /A:Vision /U:admin /I:admin_ExportedMetadata_Product.csv /D:Product /L:Product.log /X:Product.exc

ParameterDescriptionValue
-F:Specifies the password file that we just generated so that we don't need to enter a password.PasswordFile.pass
/ASpecifies the application that we are connecting to.Vision
/USpecifies the username that we are connecting with.admin
/ISpecifies the file that we will be importing.admin_ExportedMetadata_Product.csv
/DSpecifies the dimension that we will be loading.Product
/LSpecifies the file to log our results to.Product.log
/XSpecifies the file to write exceptions to.Product.exc

So what happens?

OutlineLoad6

Success!  And how about our log and exception files?

OutlineLoad7

Great…they are there.  Now let’s make this something worthy of PowerShell.  To do that, we’ll make everything into a variable.  I’ve created a folder on my Planning server to store my files and referenced that file in the following PowerShell script:

###############################################################################
#Created By:	Brian Marshall
#Created Date:	12/16/2015
#Purpose:		Sample PowerShell Script for HyperionEPM.com
###############################################################################

###############################################################################
#Variable Assignment
###############################################################################

$PlanningPath = "C:\Oracle\Middleware\user_projects\epmsystem1\Planning\planning1"
$PlanningUsername = "admin"
$PlanningPasswordFile = "PasswordFile.pass"
$PlanningApp = "Vision"
$PlanningDim = "Product"
$PlanningDimFile = "admin_ExportedMetadata_Product.csv"

$PlanningWorkingFolder = "C:\Data\HyperionEPM\PowerShell"

###############################################################################
#Outline Load Utility Execution
###############################################################################

& $PlanningPath\OutlineLoad.cmd -f:$PlanningPath\$PlanningPasswordFile /A:$PlanningApp /U:$PlanningUsername /I:$PlanningWorkingFolder\$PlanningDimFile /D:$PlanningDim /L:$PlanningWorkingFolder\$PlanningDim.log /X:$PlanningWorkingFolder\$PlanningDim.exc

Along with the file above, I’ve placed the Product file that we exported from Workspace.  I’ve set the PlanningWorkingFolder variable to reflect the name of my folder and I should be ready to execute my new Product PowerShell script.  But wait…I don’t want to schedule this process to run on the Planning server and another process to run on the Essbase server.  I need them to run from the same place.  We’ll cover that exact need in our next post…stay tuned!


The EPM Week In Review: Week Ending February 27, 2016

This week was a little slow in the patch department, but plenty of great blogging going on.

Patches and Updates:

None!

Blog Posts:

This week I posted the final installment of the Building a Hyperion Home Lab series.

Michelle encourages us to actively participate in user groups.  I’m a huge fan of ODTUG and the local NtxHUG, so listen to Michelle and join in the fun!

Cameron walks us through the process of migrating to the cloud with PBCS.

Celvin has a new update to his NUMSys Web Edition utility.  I haven’t had a chance to play with this tool, but it looks pretty cool.

Tim is on his soapbox about crossjoins…and he’s right!  Please read his blog post to help make MDX a safer place for all of us.

Opal has been busy this week with not one, but two blog posts.  First she tells us how to get back our missing Smart View ribbon.  Next she shows us how to provide feedback to Oracle in both BICS and PBCS.  She claims that Oracle even reads the feedback…and responds!

Dmitry posted the first part of his step-by-step guide to EPMA integration with Essbase Studio using ODI.

Other News:

I also updated the site this week to include new pages for Quick Links, Presentations, and Latest Patches.

ODTUG has announced the Thursday Deep Dives sessions for KScope16.  See you in Chicago!