ARIS Community - We Love BPM

Exporting/Backing Up Reports

RBeddoe's picture
by Rick Beddoe in Reports & Macros posted on 2012-01-06

We have almost 200 reports that we would like to back up. Is there a way to do this programmatically or through some other means?

Thanks,

Rick Beddoe
Cargill Aris Technical Analyst
Minneapolis, MN, USA

1780 Views
0 Likes
7 Comments
There are no attachments
kylekatarn's picture
by xxxxxxxx xxxxxxxx posted on 2012-01-09

Hi,

I'm assuming you have access to the machine where ARIS Server runs.

1. Go to C:\ARIS7.2\LocalServer\templates\scriptservice\Report\

  - Replace 'C:\ARIS7.2\' for your ARIS installation root directory

  - If your installation isn't a local server installation, try replacing 'LocalServer' by 'Server'. Essentialy, you must find the ARIS Server root folder.

2. Notice lots of sub-folders, mapped to reports' categories: Common, Administration, Analyse, Automation, BalancedScorecard, ...

3. Imagine you want to backup some report inside the 'IT City Planning' category.

  - Enter the directory 'IT City Planning'

  - For each report there are at least 4 files: [report_guid].info, [report_guid].script, [report_guid]_en.script and [report_guid]_yy.loc. [report_guid] is something like 'b4e80120-eaea-11d8-12e0-9d2843560f51'

  - A report (*.arx file) is nothing more than a renamed zip file [1] consisting of all these files above

4. Knowing that, to backup a report, you first must know it's GUID. Then, find it's component files on the server's Reports directory, zip them and rename the resulting file to something that ends in *.arx (eg: funreport.arx)

5. Report backed up and ready to import again via IT Architect, when needed

Repeating the process above for each set of related files (*.script, *.info, *_en.loc, *_yy.loc) you want to backup. You can backup any report on the server without ever opening IT Architect or other tool.

Some fun parts you may want to take care of:

  • Automation! I don't believe you desire to perform the above process manually for 200 reports. With some programming it's easy to automate the zip + rename part, given a list of report GUIDs to back up

  • Import: what about restoring? You probably need the reverse process - opening 200 *.arx (zip) files and injecting them on the server.

[1] Regarding *.arx file formats @see http://www.ariscommunity.com/users/freddy/2011-08-24-importing-arx-file-...

Best luck!

RBeddoe's picture
by Rick Beddoe posted on 2012-01-09

Thanks Kyle,

I found I can simply copy the entire folder to a new location and restore it by copying the content back when needed.

The problem is that ARIS must keep an inventory somehow of what scripts were created. Even if the script is not available, it will still show in the list of scripts. Do you know if this inventory is stored as XML or internally to ARIS somehow?

Cheers,

Rick Beddoe
Cargill Aris Technical Analyst
Minneapolis, MN, USA

kylekatarn's picture
by xxxxxxxx xxxxxxxx posted on 2012-01-09

That's right - if you copy the whole folder, every script will be back up! If you don't need to select what reports to back up, that's a plain and simple solution.

ARIS keeps a list of all report categories inside the file ...\LocalServer\templates\scriptservice\Report\categories.en. Regarding reports inside a category, I don't recall finding such file neither having trouble with what you described. Either it's internal information or some other file.

I dont' believe ARIS is managing internally the report names/contents since that was way more complex than just mapping the virtual categories to filesystem contents.

Have you tried restarting the server and/or refreshing the administration view on IT Architect?

Regards,

Kyle

RBeddoe's picture
by Rick Beddoe posted on 2012-01-12

Reboot is a good suggestion Kyle. I will try that when I get a chance.

I was successful using your .zip method and that's encouraging. I could build a VBScript file to do this automatically. The .loc file contains the name of the report, so I could parse that and use it for the name of the .zip file.

Cheers,

Rick Beddoe
Cargill Aris Technical Analyst
Minneapolis, MN, USA

kylekatarn's picture
by xxxxxxxx xxxxxxxx posted on 2012-01-13

Exactly! You are right, automation is also the first thing that comes to my mind!

Regarding scripts (macros/reports), the possibilities are endless, once you know where and what to look for.

With given time/effort, lot's of new features could be built around ARIS. For example:

- Backup/restore system like we discussed. In this case, the data is all there, in the filesystem!

- Version control system integration

- Integration with external IDEs like Eclipse, for script editing & debugging

 

I would be very interested in exploring these issues in more detail, specially the last one.

However, all these extensions would rely on ARIS' internals, therefore could stop functioning anytime. ARIS should have some kind of "public API" to expose basic administration & modelling functions.

Regards,

K.

RBeddoe's picture
by Rick Beddoe posted on 2012-01-13

Yes, an IDE would be nice. I did some investigating with Eclipse. It may be possible to import ARIS libraries, but who knows which librairies to import?

Ideally, a true, external, documented API would go a long with with automating ARIS. .NET API would be a home run, but I highly doubt it will happen.

I have an extensive .NET background and it was a bit like going back to the Golden Age of Sail when I took on our ARIS Report Scripting efforts. The scripting environment is a bit of a challenge. At a minimum it would be nice to have some sort of syntax checking or reflection. Having to run a report for 20 minutes only to find that I've mis-typed something can be a bit frustrating.

 

Rick Beddoe
Cargill Aris Technical Analyst
Minneapolis, MN, USA

RBeddoe's picture
by Rick Beddoe posted on 2012-01-17

I wrote a simple C# utility to back up my scripts. This utility will create a directory on the backup disk for each script I want to back up. The directory matches the name of the script which is parsed from the .loc file. Then it copies the 3 files needed for the script into that folder.

I did not put the files->.zip->.arx functionality in the utility. If I ever need to recover a script, I can do this process manually.

I can make the code available if anyone is interested.

Rick Beddoe
Cargill Aris Technical Analyst
Minneapolis, MN, USA