Absolutely. My organization has been told that that we are in violation of our license agreement because of the former employees / users that exist within archived versions of the models. We actively manage the users in the LIVE models (and have a separate security model for managing user status), but still, we periodically have to go through each of our workspaces to manually cull former employees from the workspaces. It's a huge hassle. The fact that the tenant administration even looks into archived models to identify users is a massive hole. It's improper to have users from archived models in the list at all.
... View more
Please note that this article is specific to an MS Windows Server implementation with a CA Certificate and uses Windows Batch Scripting file commands. A good reference for Windows Batch Scripting commands can be found here: https://en.wikibooks.org/wiki/Windows_Batch_Scripting
So, you’ve had your Anaplan environment up and running for a while and your end users are excited. They have asked for more and more functionality and you’ve given it to them—but all of the integrations are manually run on a daily, weekly, monthly, etc. cadence. The users are asking for help streamlining the process and inquiring about if automation is possible—automation of source data in, automation of model-to-model data sharing, automation of budgeting and forecasting data out (for external reporting or even back to your GL system).
Good news! It is possible, and you have been tasked with setting up these integrations! Your organization does not have Cloud options for which Anaplan has connectors (Dell Boomi, Informatica, Mulesoft, etc.), but you can work with your internal IT team members to accomplish your task using AnaplanConnect. You’ll need a server to run the processes, access to a scheduling tool, and some team members in IT to ensure data is staged between systems appropriately.
As you go through the documentation and create some test scripts in your UAT environment, you’ve got things working. You’ve followed the examples and created a parameter section at the top of each script for the integration user account/certificate credentials, the workspace ID, the model ID, etc.
The thing is, your Anaplan landscape is getting big. You’ve got a Development, UAT, and Production environment and multiple live models. You’ve got ALM (mostly) implemented between UAT and Prod, but the new AnaplanConnect v. 1.4.x paradigm requires the 32-character workspace and model ID’s to be present (and correct) within each script, and you can no longer just use the workspace and model names (like in AnaplanConnect v. 1.3). Therefore, even if the Prod and UAT models are named the same, the scripts must uniquely identify them with the 32-character ID.
How do you manage this? How do you successfully migrate these scripts between UAT and Prod without typos or copy/paste issues? Could you even tell what workspace or model the script is actually running against without some kind of lookup key? What to do?
Introducing: The Configuration File
Just like most applications have a file (or two) of common parameters used across the platform, you can create a configuration file specific to the AnaplanConnect parameters needed from your organization’s Anaplan Platform!
What Kind of Parameters Can I Define Centrally in My Config File?
Any commonly used setting in your scripts can be centrally defined and managed in your Config file. Examples are:
Authentication parameters (unsecured user account or CA Cert).
Source data (import) directory paths.
Export data directory paths.
Import error (dump) log file directory paths.
Standard export or error log file names (with date stamp if you want to get fancy).
What Would an Example Configuration File Look Like?
Please see the file attachment for this article.
How Does This Work?
Depending on how you organize, nest, or schedule your scripts, be sure to include a command to call the configuration file (where all the common parameters are defined) prior to defining or running the AnaplanConnect operation in the script.
In each script, where you would have explicitly defined the parameter (like ModelID), simply reference the parameter name in your Config file. For example, I have a model called “HUB”. Previously in my scripts, I just defined the ModelID =”HUB” for each operation. Since that no longer works, and 32-character alpha-numeric names are not my thing, I reference the parameter that I named “HUB” in my Config file.
In the Config file:
In the AnaplanConnect script:
This %HUB% parameter is read into memory when the Config file is executed and is available to the AnaplanConnect script for use when needed.
What if My Organization Has Multiple Production (or UAT) Workspaces?
You’ll need to have a configuration file for each workspace that contains information specific to that workspace but can include common server-level information (like extract file path or import file path) that may remain the same throughout the Prod/UAT/Dev instances. Just organize the scripts based on where the model exists and make sure the appropriate configuration file version is called as part of the execution process.
Can This Help Improve My Testing?
As part of the default example scripts provided in the manual, there is a “Pause” command at the conclusion of the execution section (“Do not edit anything below this line”). By replacing that “Pause” command with an ‘if’ statement and including a definition around whether or not you desire the “Pause” script command to be in effect, you can easily have your scripts in “debug” mode or “production run” mode.
First, replace that “pause” in the execution section of the script with a line that says,
Then, you can control this behavior from the configuration file instead of within each script. Add a couple of lines to the configuration file and comment out the state you don’t want (below shows “debug mode” – pause set TRUE).
Now I’m sure you’re wondering, “Are there more things I can do to streamline my scripts?” The answer is YES. But, those are for you to noodle on and figure out, depending on the needs of your organization. Happy noodling!
What do you think about AnaplanConnect? Let us know in the comments below.
Master Anaplanner Stacey Gibbens, PMP is a Senior Financial Systems Analyst with Simon Property Group. In this role, Stacey manages a suite of financial applications (including Anaplan), wearing any one of several hats depending on the situation and customer in question. This includes project management, application development, systems integrations, and expert-level troubleshooting.
Stacey understands that any information system is only as good as its user interfaces and data flows. Since implementation in 2015, the footprint of Simon’s Anaplan environment has grown from one production workspace comprised of a Data HUB, a Security model, and 5 user models to FOUR production workspaces, comprised of two Data HUBs, a Security model, and 14 user models.
She and her team have been able to leverage the straightforward Anaplan user interfaces, along with AnaplanConnect, scheduling tools, and a data warehouse, to reduce errors and eliminate duplicative data entry between multiple related (but stand-alone) applications as well as produce external, highly formatted Cognos reporting.
... View more
My organization is currently using the Excel add-in v. 3.2 as a reporting tool, which meets our organization's requirement to control the data in Anaplan (read only, not write-back). My organization wants to keep the controls around data push/pull as is. I have just done some testing with v. 3.3 and it does the job that it needs to do, OTHER than the fact that I cannot see any way to disable the ability to create a Read/Write connection. We need for future versions of the Excel add-in to allow control of this behavior either as a setting during install or a registry edit or a different version of the add-in (read/write vs. read only). As @helennie notes, there may be a DCA way to control this, but that causes extra work for the folks that administer the Anaplan environment and is not a solution. The Excel add-in tool itself needs to be able to be configured. Thank you, Stacey Gibbens
... View more
Dear everyone, I am part of the IT organization at my company, and I am responsible for the Anaplan environment from am IT perspective. We are currently using the Excel add-in v. 3.2, which meets our organization's requirement to control the data in Anaplan (read only, not write-back). My organization wants to keep the controls around data push/pull as is. I see that v. 3.3 has been released, with notice given that v. 3.0 and older will be depreciated as of May 31, 2020. I also notice that v. 3.4 is being promoted as an upcoming release for March 2020 (but with no details shared). I have just done some testing with v. 3.3 and it does the job that it needs to do, OTHER than the fact that I cannot see any way to disable the ability to create a Read/Write connection. Does anyone know if future versions will allow an administrator to control this behavior (as a setting during install or a registry edit or ...?) or if different versions will be differentiated by that ability? I'm concerned that v. 3.2 may be depreciated without a replacement that allows for the restriction on the data Write capability and that will leave us with an inability to use the Excel add-in (which makes us sad....). 😞 Thoughts? Thanks in advance... Stacey
... View more
@damianshameer2 Well, I can't dispute your experience with running integrations using a CA cert within a single workspace. If you say it works, then it works. However, in my experience, the integration account must not be restricted to SSO only (which is what checking the SSO box does). I use an integration account associated with a CA certificate to run integrations across 3 production workspaces, with model-to-model, data uploads (from a warehouse extract), and data downloads (to be a data import back to the warehouse) on a nightly and intra-day cadence, and have been for years. The caveat is that I'm using AnaplanConnect and not the REST API, but I can't imagine authentication requirements for the integration account would be different across those two methods. That would seem cumbersome. Please do post to let everyone know what Support says. I'd be interested to see what they say. Thanks! Stacey Gibbens
... View more
Hi Damian, My understanding is that when scripting integrations, the integration user must NOT be SSO. SSO does not use passwords or certificates, but instead a SAML server that is connected up on the back end between your firm and the Anaplan authentication servers which knows the user by their network credentials. Even if you have a network account that can be logged into that you can then use SSO into Anaplan with (when logged in as that user), that's not going to work for scripted integrations. I understand your statement that it's firm policy to not have exceptions, however, that may need to be revisited with your management if you'd like to have scheduled integrations. Good luck, Stacey Gibbens
... View more
I have also experienced this issue when testing Anaplan Connect 1.4 for my implementation on a Windows server. I am running a compound action that loads extracted data from our warehouse to an Anaplan data source, then the Anaplan data source to a module and a list. The issue comes when loading to the list, in which the process creates a list of unique members from the source file with potentially multiple instances of the same member key (entity and unit). The 1.4 version chokes on the (acceptable) errors -- in my case "Another row has already been processed with this key," does not create the log file, and just hangs. I reported this to Anaplan Support yesterday and received a response that this behavior is a bug in 1.4 and they are working on it. The exact blurb from them is: I can confirm that you are experiencing a known issue with Anaplan Connect version 1.4 that affects the ability to continue beyond the error. Our Anaplan Connect team has been working on this issue and hope to have a fix implemented in the next version. I do not have a time line of when this new version can be expected, unfortunately. The current workaround is to use Anaplan Connect 1.3 until the new version of Anaplan Connect 1.4 has been released. So, I guess maybe put off any more effort on implementing this version until they have a fix to gracefully handle error logs for list integrations... Stacey Gibbens Simon Property Group firstname.lastname@example.org
... View more