Anaplan connect from dashboard buttons

Hello, I have a requirement where in a user wants to be able to do the following as and when he wants to - possibly through a button on the dashboard: a) Trigger a batch file (Anaplan connect) that loads data from SQL into Anaplan b) Trigger a batch file (Anaplan connect) that loads data from Anaplan to SQL As far as I am aware, there are only two ways to do this - Set up a scheduler, or manually double click the batch file. Is there any other way to do this please? Thanks, Ashok

Answers

  • Hi Ashok,

    You're correct, this would either be manual or done through a scheduler.  You can use something like Windows' Task Scheduler, or a more enterprise-level solution like Informatica Cloud Services.  

    Also, if your SQL batch file is created automatically within SQL and saved to a fixed location, a user can manually click a button in Anaplan to import that data through an Import Action.  As for the loading data into SQL, this button approach (via Export Action) would only go as far as extracting the data from Anaplan and saving the file the standard download location.

    Hope that helps!

    -Chris Weiss
  • Hi Ashok,

    Another thought here.. If you create the Anaplan Connect batch files in a standardized location, you might be able to create a hyperlink to those files using the MAKELINK function, and include those links on a dashboard to open the batch files directly through Anaplan.  I'm not sure if that will actually work, and I also think this might violate some best practices so I probably wouldn't recommend it as a scalable enterprise solution to your problem, but it might be something worth trying out as a temporary patch solution.  Let me know if you'd like more details on this, I'd be interested to see if it actually works...

    -Chris Weiss
  • Hi Chris,

    Thanks for getting back to me! Yes, I would definitely like to try your approach out. Are there more details that you could provide on it please? Meanwhile, I will try to investigate on how to proceed with the MAKELINK function.

    Thanks,
    Ashok
  • Hi Ashok,

    I agree with Chris that makelink function would be a solution for this. Though you cannot directly (safely) point from Anaplan cloud to your server's folder running anaplan connect. I'm afraid you need a little bit of programming to build a web service that does this for you. In that case you would call the web service from the link and that service would execute the anaplan connect script.

    Br,
    Jaakko
  • Great point Jaako, depending on the location of the files Ashok will likely need to build a web service URL (for example locally-mounted folders may work but FTP/server locations will not work).  But at the point of building web services, it might be better to just custom develop a real integration using the REST API (https://community.anaplan.com/anapedia/integrations/data-integration/anaplan-api-guide), which also would likely not be the best solution depending on the circumstances (i.e. do you have an ETL tool, would it be cheaper for you to buy ETL licenses vs. training existing developers to build an integration, etc.).

    Ashok, you may want to test this approach using local files on your computer and then decide how to proceed.  But realistically you would likely be best off using a desktop/server scheduler software or ETL tool to solve your problem in the most sustainable and scalable way.

    Also, to answer your other question, here are the details on the MAKELINK function which you would use to build this out: https://community.anaplan.com/anapedia/calculation-functions/makelink?inheritRedirect=true.  Let us know if you would like any other details on anything we're discussing, I'm sure we'd all be happy to point you towards the Anapedia articles that provide the details of what we're discussing here.

    -Chris Weiss
  • Hi Chris and Jaakko,

    Thanks for getting back to me. We do have an ETL tool in place, but I was wondering if it would be possible to provide control to the user to trigger loads - so that if he/she wants to perform any adhoc actions, they could do so. But I think I get what you guys are saying, that we should stick to a scheduler. Would you recommend using the REST API over connect if the requirement is to specifically let users decide when to load data? Also, if we do use the REST API, does it mean that the user can trigger data loads (imports from SQL and exports into CSV) through action buttons in the front end?

    Thanks for sending me the MAKELINK function, that seems to be straight forward to implement. Once again, thanks for all your help and looking forward to your inputs on the above.

    Thanks,
    Ashok
  • Hi Ashok,

    For requirements like that, in the past we've built ETL integrations that run "near real-time", and only integrate on data that the user has indicated to be included.  We would schedule the integration to run every 5-15 minutes (depending on requirements and performance testing), and filter the data to wherever a boolean evaluated to TRUE based on any given business logic, or user-entered checkboxes.  This way the user still decides when the data is included in any jobs, but the user does not need to manually trigger the integration.

    As an aside, I would rarely recommend building an integration through the REST API for several reasons, especially considering some roadmap developments around the APIs in general.

    Happy to provide more details if you think this would be of interest to you, otherwise it sounds like you're on the right track!

    -Chris Weiss
  • Hi Chris,

    Thanks for your insights, I believe that we will continue with using the scheduler tool to set up frequent jobs (every 15 minutes) so that it would be like a near real time system.

    I would be interested to know the roadmap of the REST API though!

    Thanks,
    Ashok
  • Hi Ashok,

    Glad to hear that you found the near real-time integration approach to be helpful.  

    As for the roadmap around future development of the API, I'm not sure how much is supposed to be shared here since nothing is publicly launched yet (I believe there may be some announcements upcoming at Hub).  My high-level understanding is that there are some overhauls being done on the API in general, including potentially outputting actual metadata, which would result in a change to the current structure of the REST API.  There may also be changes to data accessibility through the API (for example, not requiring import/export actions), but again all of these are potential roadmap items that may or may not ever happen.  

    The general takeaway here is that based on this information I would avoid custom building an integration based on the REST API until the roadmap around this functionality is clarified and officially published.

    Hope that helps!

    -Chris Weiss