Introducing the Anaplan Integration Script Generator: Simplifying Anaplan Connect Scripting

Introduction

Anaplan, a leading platform for enterprise planning, has revolutionized the way organizations manage their data and streamline processes. However, leveraging Anaplan's powerful features often requires scripting with Anaplan Connect—a command-line utility for interacting with the platform. To simplify this process, we are excited to introduce the Anaplan Integration Script Generator, a new capability that automates the generation of Anaplan Connect scripts. In this blog post, we will explore the features and benefits of this utility and demonstrate how it can significantly enhance your integration workflows.

Automated Script Generation

The Anaplan Integration Script Generator serves as a front-end utility that dynamically constructs Anaplan Connect scripts. With its user-friendly interface, generating syntactically correct scripts for various operating systems, including Windows, Linux, and macOS, has never been easier. The screenshot below showcases step 1 of 3 of an intuitive interface that guides users through the script generation process.

Streamlined Operations

One of the standout features of the Integration Script Generator is its ability to chain together an unlimited number of operations within a single logged-in session. This capability empowers users to automate complex workflows by seamlessly executing multiple actions, importing data, and interacting with different Anaplan objects such as Workspaces, Models, Actions, and Files. Whether you need to upload files or execute import actions and processes, the Integration Script Generator has got you covered.

Dynamic Import Actions

When working with import actions, the Integration Script Generator provides an added benefit by dynamically selecting the corresponding Import Data Source. This intelligent feature simplifies the configuration process, ensuring that the right data sources are associated with the chosen import actions. Take a look at the screenshot below to see this functionality in action.

Authentication Flexibility

The Integration Script Generator supports multiple authentication methods, including Basic Authentication, Certificate Authentication, and OAuth2. This flexibility allows users to seamlessly integrate with Anaplan while adhering to their organization's security standards. With an intuitive configuration interface, users can easily set up authentication options tailored to their specific needs. The screenshot below demonstrates the authentication configuration screen.

Configuration Management

To streamline workflows and facilitate collaboration, the Integration Script Generator enables users to download and save their configuration settings. By doing so, you can easily share configurations with team members, ensuring consistency across projects and maximizing efficiency.

Special Character Support

Security is paramount, and passwords with special characters add an extra layer of protection. The Integration Script Generator excels in generating scripts that support special characters, employing special escaping syntax to handle characters like exclamation marks within passwords. Rest assured that your scripts will be robust and secure, even when dealing with such characters.

Unlocking Efficiency with Anaplan Integration Script Generator

To truly grasp the capabilities of the Anaplan Integration Script Generator, we invite you to watch the short video showcasing its features and how it simplifies the process of working with Anaplan Connect scripts. This video will demonstrate the utility's intuitive interface, seamless operation chaining, and the convenience of dynamic import actions.

Want to get started?

  1. Set up Anaplan Connect using the Anaplan Connect Quick Start Guide for Windows or the Anaplan Connect Quick Start Guide for macOS & Linux.
  2. Start building your Anaplan Connect scripts today by using the Anaplan Integration Script Generator.

We Want to Hear From You

We are excited to release the Anaplan Integration Script Generator and believe it will significantly enhance your Anaplan integration workflows. We value your feedback and encourage you to try out this utility, exploring its features and functionalities. Please let us know about your experience with the Integration Script Generator and how it has benefited your organization. Your input will help us further refine and improve this tool to better serve the Anaplan community.

Empower your integration workflows today with the Anaplan Integration Script Generator, and simplify your interaction with Anaplan Connect scripts like never before.

Author: Quin Eddy, @QuinE - Director of Data Integration, Operational Excellence Group (OEG)

«1

Comments

  • I love this! I have used Retool for customer dashboards and have so many ideas on quick apps that can be publicly used. Glad to see this out there :)

  • This is quite good @QuinE! Thanks for publishing.

    I've tried this out and it seems that it can only run actions and not processes. Is that right or am I just setting up the processes tab incorrectly (although there isn't really any other parameters in the processes tab).

    Also, when running actions that have a module view as a source (instead of file), the "File to Upload" parameter still requires a file to be added for the "Add" button to work. Maybe this should have a "Data Source Type" parameter so that actions using a module view won't need the file source parameter.

    Apart from the 2 points above, I think this is a great tool!

  • hi @m.angeles11 - thanks for your comment.

    You can definitely execute processes. Just click the "Processes" tab. Then you can see your processes and add them to the operation. In the screenshot you shared, you have selected the "Imports" tab.

    As for your second point, I agree with you. The integration builder should be updated with this. I will work with the team to support this.

  • Can't wait to try it out.

  • Hi @QuinE, thanks for your response. I did put in the relevant details for the Processes tab but just didn't include the snapshot. Have re-done my test case and am including screenshots this time to clearly show you the issue I've encountered.

    As you can see in the above screenshot, the Import action ran fine, however, the process was not found even though it successfully allowed me to select the process from the Processes tab (see 1st screenshot) and add it into the script.

    The action that I ran was actually included in the process and I initially tried to generate the script that didn't include the Import action but nothing ran as the process could not be found. What I was expecting is that if I add a process via the Processes tab then it should run that process independently of any Import actions that may also be included in the script. So in my scenario, because I added an import action (TEST2_Action2) and a process (TEST2_Process - which also includes the TEST2_Action2), I would have expected the TEST2_Action2 to have run 2x and not just once.

    Maybe you can test this out and confirm if my findings above are correct and if I have made an error in the configuration somewhere, it would be great to know what it is so I can correctly configure it.

  • Hi @m.angeles11 - that is strange. Please direct message me, and we can set up some time to see what is going on. At the end of the day, this tool is just building a basic Anaplan Connect script. I suspect there is a character that needs to be escaped. Out of curiosity, I see in your screenshot a model name of "[Delete] Test gg". Can you simplify that name and see if that fixes the issue? If that does, then we know that we need to handle special characters better in the script generation.

  • Hi @QuinE, I've encountered the same issue as @m.angeles11 and found out what's causing the issue. It seems when you assign a process using the tool, it generates the script as below tagging the Process as an import. You can manually replace "-import" to "-process" for the "Operation" variable in the script to fix the issue.

    Fix:

  • Hi @QuinE, further to the comments from @Satesh, apart from the "-process" needing to be corrected, I believe the creation of the File Upload part of the script should be done prior to the "-process…" part of the script so that any process that requires any source files to be loaded will do the loading of the source file prior to running the process.

    To do this in the current script generator, the user will have to complete and ADD the File Uploads section first before doing the Processes section to get the order correct. This said, it would be good to either swap the order of the Process and File Uploads tab in the script generator OR leave the tabs as is but always create the script so that the file upload script is always created prior to creating the "-process" part of the script when running the script generator.

    Thanks again for creating the script generator as it simplifies the process for creating the script and once you have amended it for the above things then it will be even better as there would be no need for any manual intervention once the script is generated.

  • QuinE
    edited September 2023

    HI @m.angeles11 and @Satesh - The Integration Script Generator has been updated, and you should see the issue regarding the incorrect syntax when trying to execute a Process. @Satesh - You were absolutely right.

    @m.angeles11 - Regarding the order of file uploads and Processes, it is up to the user to insert the File Uploads before executing a Process. Unfortunately, there is no way to reorder except to delete and re-add the step. For example, if you had four steps as follows:

    Step 1 - Upload File A

    Step 2 - Upload File B

    Step 3 - Run a Process that runs import actions for files A, B, and C.

    Step 4 - Upload File C

    This is obviously out of order. To correct the situation, you would need to delete Step 3. This, in turn, would make Step 4 now Step 3. At this point, the Process could be re-added.

    Please let me know if this clarifies.

    Lastly, a few other usability bugs were fixed, and we have a roadmap to support JDBC and different relational databases in the near future. Hopefully, this helps!

  • Hi @QuinE, great to hear that the script generator has been updated for the process execution.

    Not a big deal if the order of the file upload cannot be changed, but I suppose it would be better if the tab for the file uploads in the script generator steps was before the tab for actions so that the flow of events happens correctly by going through each of the tabs in sequence.

    This is a great tool for those using scripts to automate the running of actions and processes! Thanks for building it… helps the non-technical people like me a lot!

  • Hi @QuinE thanks for sharing this amazing tool. Currently i have a problem with the credentials, i inserted Workspace ID e model ID, but i have an error with Workspace ID as you can see in my screenshot below, DO you have any suggest?

    (I take Workspace ID just by clicking on the "question mark" icon and on "About" button)

  • Hi @Giacomo97 - Please try again. The solution has been enhanced to now accept both names and IDs for Workspaces and Models. Previously, it only accepted names.

  • Hi @QuinE,

    I now encounter the same issue that @Giacomo97 has when trying to login. This was definitely not an issue before so it might be caused by the recent change you mentioned that now allows the Workspace and Model names to be used.

  • Hi @m.angeles11 - can you please check your Workspace & Model Names or ID and ensure they are correct. I just checked, and everything is working correctly. Here is what I am seeing on my end:

    Note - to test for incorrect values, I also added "x" and tried to connect and the incorrect value was also caught.

  • Hi @QuinE,

    Thanks for re-testing. I definitely entered the correct WS and Model IDs as I copied them from the web address.

    I work for an Anaplan partner consultancy so I have access to multiple tenants and this morning I tried the script generator again using the WS and Model IDs from our own Anaplan tenant and I was able to successfully login. But when I tried using the WS and Model details for one of our client tenants, it fails.

    Is there a Tenant Admin setting that prevents the script generator from connecting to a workspace?

  • Hi @m.angeles11 - thanks for pointing this out. I now see the issue. The reason is that you are connecting to your client's tenant as a "Visiting User". A limitation of a visiting user is that a visiting user ID cannot list (via the REST API) Workspaces or Models of the tenant they are visiting. The way the Integration Script Generator currently works is that after the user successfully logs in, there is an API call to list Models and Workspaces which is then used to validate what is entered for a Workspace and Model in the UI.

    We can update the Script Generator to not validate the entered Workspace and Model which will allow you to proceed.

  • Thanks for looking into this @QuinE.

    Yes, it would be great if the workspace and model validations can be skipped to allow me to proceed. I presume there is a good reason for putting the validation process in, so maybe the validation process should only be skipped if the user running the script generator is a "visiting user".

    Thanks again for this cool tool!

  • @m.angeles11 - we will get that functionality added.

  • QuinE
    edited January 3

    Hi @m.angeles11 - apologies for the delay, but we have added new logic to support visiting users. Please note that if you are a visiting user, you must use the Workspace and Model IDs whereas a non-visiting user can use both the names and IDs.

  • Awesome! Thanks @QuinE.

  • When executing Anaplan Connect on Windows platforms, there has been a challenge with using exclamation marks in passwords. Exclamation marks are special characters in Windows, leading to incorrect parsing of strings containing them. This often results in a 'login failed' error during script execution. To address this, the Anaplan Integration Script Builder now includes an enhancement to accommodate passwords with exclamation marks. Users experiencing this issue can select the "Allow exclamation marks" option, generating a modified script. It's important to note that this new script will significantly differ from the standard Windows Anaplan Connect script.

  • Hi, when I try to run my script I get this error. Is it because of the security permissions at my company? It would be great to have a model/workspace from Anaplan that we could practice this on.

  • Does this work with a SQL connection?

  • @jonathan.edwards Unfortunately, this tool does not yet have the ability to generate a script that uses a JDBC properties file within the operation, nor does it have the ability to create a JDBC properties using your SQL server information.

  • Hello @Olek P ,

    The PKIX error can occur for a few different reasons. The usual main reason for the error is a certificate trust store issue with Java. You essentially need to get the certificates from "api.anaplan.com" and "auth.anaplan.com" and import them into your Java Trust Store on the machine that is running Anaplan Connect.

    Here is a link to a Community article that can assist with this process:

    If the issue still remains after the above process, then you may have a proxy or firewall blocking your communication. You will have to work with your IT team to ensure proper domains are allowed for Anaplan, which you can also find here on the Community.

  • CommunityMember81686
    edited August 29

    Should allow visiting users for a tenant to also create import and export scripts. Currently, this functionality is restricted to internal users only. A visiting user is only able to create a script to see names but is not able to create a script to import a file, export a file, run a process, etc. Which is odd because a visiting user with the proper credentials can write an Anaplan Connect script manually and perform those actions.

  • @CommunityMember81686

    The functionality to allow for a visiting user to create import and export scripts was added in January of this year. When you are at the login screen, are you making sure to check the box for "Visiting User"? Please note, as a visiting user, you will need to use Workspace and Model ID's to connect and create your scripts instead of Workspace and Model Names, as this is reserved for non-visiting users due to the API calls required to list the names.

    If this does not address your issue, can you please share more information and any screenshots that may help diagnose and resolve from our side?

  • CommunityMember81686
    edited August 29

    jon.ferneau

    Please find the attached screenshots. I of course can access as a visiting user, but cannot see any of the actions within the model (needed to create the script).

    Access Verified as a Visiting User:

    Yet, unable to view any Actions within this model


  • Hi @CommunityMember81686

    After reviewing the issue, I concluded that the endpoints to receive action metadata are also restricted to a user's default tenant. This would mean that a visiting user would not be able to view Imports, Process, Exports, etc if they are sending requests to a workspace/model that is not within their current default tenant.

    I can see how this is limiting for script generation as it is very common to have a visiting user setup integrations at a client. A potential feature we could add to the application would be a free text field that would allow a visiting user the ability to enter the known action name and generate a script successfully. Would this enhancement assist in your script generations?

  • @jon.ferneau, this would be helpful, but why the restriction on viewing the processes, actions, etc.? Why not open it up to anybody who has access to the model?