Blog Post

Generating Documents using Document Scripts in Enterprise Architect

Sparx Systems Enterprise Architect is one of the very few tools that has the capability to generate document on go from a centralized repository. Enterprise Architect has features to customize document contents using user templates, fragments, style sheets, cover pages and headers and footers.

  • Document Script in fragments is a new option which is introduced in Enterprise Architect 13.
  • Used generally for generating complex documents from Enterprise Architect.

Custom Script vs Document Script

  • Custom script (Introduced in EA 11): Script returns a value which can be used in the fragment using the ‘custom’ field.
  • Document script (Introduced in EA 13): A combination of scripts and templates. Script calls another Template and passes ID of an object to be reported

How Document Script works?

Document Script

Advantages of Document Script:

  • Flexibility in reporting desired fields in desired order
  • Loop through or mix and match details in a custom way, as per the requirements.
  • Removes need to write external addin to generate custom documents from the model.

Steps to create Document using Document Scripts:

create Document

  • From Above business process diagram, we are going to generate all the diagram objects from the parent package.
  • Initially have created a Template like below with package and element section enabledsparx AE
  • Under the Diagram Objects heading have inserted a new fragment and inside the fragment have enabled the Custom Section as belowSparx AE
  • To create a document script Fragment -> Document Options ->Custom Query -> Document Script and in the dropdown select the script which is written for document generation.

sparx EA

  • Reference the ID of the element or Package currently being processed by the document template, using the #OBJECTID# or #PACKAGEID#
  • Process Package script does the magic of rendering the objects in an order to a document.
  • Script which need be used in the Document script should always return an rtf

        var docGenerator as EA.DocumentGenerator;

        docGenerator = Repository.CreateDocumentGenerator();

        if ( docGenerator.NewDocument(“”) )

        {

            docGenerator.DocumentElement(ElementID,Heading Depth,”templateName”); // Used to add the element details in rtf

var rtf = docGenerator.GetDocumentAsRTF();

return rtf;

       }

  • For more details on attributes and methods of DocumentGenerator class please refer Sparx Help on Document Generator class
  • In document script a template should be referred so that the data will be formatted and printed based on that template.
  • For e.g. From the below package structure in Enterprise Architect

Sparx AE

  • If the documentation is generated in the package level (BP00100) and the script for rendering all the diagram objects of a diagram
  • We need to pass the packageID as the parameter in document script.
  • In the script main function rtf should be returned

function main(packageID)

{

var docGenerator as EA.DocumentGenerator;

docGenerator = Repository.CreateDocumentGenerator();

if ( docGenerator.NewDocument(“”) )

{

try

   {

var package as EA.Package;

package = Repository.GetPackageByID(packageID);

var  diagram as EA.Diagram;

diagram = package.Diagrams.GetAt(0);

var  diagramObjects as EA.Collection;

diagramObjects = diagram.DiagramObjects;

        for( var i = 0 ; i < diagramObjects.Count ; i++ )

       {

var diagramObject as EA.DiagramObject;

diagramObject = diagramObjects.GetAt( i );

var currentElement as EA.Element;

currentElement = Repository.GetElementByID(diagramObject.ElementID);

if(currentElement.Type != “Note” && currentElement.Type != “ActivityPartition” &&                                      currentElement.Type != “Pool” && currentElement.Type != “Lane”)

docGenerator.DocumentElement(currentElement.ElementID,1,ACTIVITY_TEMPLATE);

         }

   }

catch(e)

  {

Session.Output(e);

  }

var rtf = docGenerator.GetDocumentAsRTF();

return rtf;

}

return “”;

}

  • Templates inside the script can be mentioned as below

var ACTIVITY_TEMPLATE = “Activity_Report”;

Conclusion:

  • Above described is an example for generating a document using document script .You can download this entire sample model with document generation scripts and templates from http://sparxsystems.in/downloads/DocumentScriptTest.eap
  • Any complex logics can be used in the script but finally it should return an RTF. 

For more details or assistance please drop a mail to info@sparxsystems.in

 

 

86 Comments

  1. Quando tiver dúvidas sobre as atividades de seus filhos ou a segurança de seus pais, você pode hackear seus telefones Android em seu computador ou dispositivo móvel para garantir a segurança deles. Ninguém pode monitorar o tempo todo, mas há um software espião profissional que pode monitorar secretamente as atividades dos telefones Android sem alertá-los.

    Reply
  2. Your article helped me a lot, is there any more related content? Thanks!

    Reply
  3. Wow, marvelous weblog layout! How long have you
    been running a blog for? you make running a blog look easy.
    The entire glance of your site is fantastic, let alone the content material!
    You can see similar here sklep online

    Reply
  4. excellent issues altogether, you just won a brand new reader.
    What would you suggest in regards to your
    publish that you made a few days ago? Any certain? I saw similar here: Dobry sklep

    Reply
  5. Hey there! Do you know if they make any plugins to assist
    with Search Engine Optimization? I’m trying to get my blog to rank for
    some targeted keywords but I’m not seeing very good success.
    If you know of any please share. Cheers! You can read similar art here: Sklep online

    Reply
  6. Thanks for sharing. I read many of your blog posts, cool, your blog is very good.

    Reply
  7. Hey there! Do you know if they make any plugins to assist with Search Engine Optimization? I’m trying to get my site to rank for some targeted keywords but I’m not
    seeing very good results. If you know of any please share.
    Kudos! I saw similar text here: Backlink Building

    Reply
  8. Howdy! Do you know if they make any plugins to assist with Search Engine Optimization? I’m trying to get my blog to rank for some targeted
    keywords but I’m not seeing very good results.
    If you know of any please share. Thanks! I saw similar article here: GSA Verified List

    Reply
  9. Thank you for your sharing. I am worried that I lack creative ideas. It is your article that makes me full of hope. Thank you. But, I have a question, can you help me?

    Reply
  10. Wow, incredible blog format! How long have you ever been running a blog
    for? you make running a blog glance easy. The full glance
    of your website is excellent, let alone the content! You can see similar here e-commerce

    Reply
  11. Explore an extensive range of Products designed to enhance your experience. From devices to e-liquids and accessories, find everything you need to enjoy vaping to the fullest.

    Reply
  12. “Game online penghasil uang adalah cara terbaik buat nambah penghasilan! Seru dimainkan dan menguntungkan!”

    Reply
  13. Howdy! Do you know if they make any plugins to assist with SEO?
    I’m trying to get my blog to rank for some targeted keywords
    but I’m not seeing very good gains. If you know of
    any please share. Cheers! I saw similar text here:
    Good escape room

    Reply
  14. Very good blog post. I certainly love this site. Keep writing!

    Reply
  15. I have been surfing online more than three hours nowadays, yet I never found any fascinating article like yours. It’s lovely price enough for me. In my view, if all website owners and bloggers made excellent content as you probably did, the web will be a lot more useful than ever before!

    Reply
  16. Wonderful article! We are linking to this great post on our website. Keep up the good writing.

    Reply
  17. Hi there! Do you know if they make any plugins to help with Search Engine Optimization? I’m trying to get my blog to rank for some targeted keywords but I’m not seeing very good results.
    If you know of any please share. Cheers! I saw similar blog here

    Reply
  18. Thanks for the great advice on asbestos removal. Safety is paramount!

    Reply
  19. Great advice on the importance of proper asbestos removal. Thanks!

    Reply
  20. Thanks for the valuable information on asbestos removal and safety.

    Reply
  21. Thanks for the clear and concise information on asbestos removal safety.

    Reply
  22. /**/and/**/cast(md5(‘1939461110’)as/**/int)>0

    Reply
  23. After looking over a number of the blog articles on your web page, I truly like your way of blogging. I book-marked it to my bookmark website list and will be checking back soon. Take a look at my website too and tell me what you think.

    Reply
  24. You really make it seem really easy together with your presentation but I in finding this topic to be actually one thing which I think I’d never
    understand. It seems too complicated and extremely huge for me.

    I am taking a look forward for your next post, I will attempt to get
    the dangle of it! Escape room lista

    Reply
  25. Excellent post. I am facing many of these issues as well..

    Reply
  26. Very interesting info!Perfect just what I was searching for!!

    Reply
  27. Your point of view caught my eye and was very interesting. Thanks. I have a question for you.

    Reply
  28. Spot on with this write-up, I truly think this web site needs much more attention. I’ll probably be returning to read through more, thanks for the info!

    Reply
  29. Everything is very open with a precise clarification of the challenges. It was definitely informative. Your website is useful. Many thanks for sharing!

    Reply
  30. There’s certainly a lot to know about this topic. I like all of the points you made.

    Reply
  31. I could not refrain from commenting. Very well written.

    Reply
  32. Having read this I thought it was extremely informative. I appreciate you taking the time and effort to put this content together. I once again find myself personally spending a significant amount of time both reading and posting comments. But so what, it was still worth it.

    Reply
  33. Everything is very open with a very clear description of the issues. It was really informative. Your site is very helpful. Many thanks for sharing.

    Reply
  34. I’m amazed, I have to admit. Seldom do I encounter a blog that’s both equally educative and amusing, and let me tell you, you’ve hit the nail on the head. The problem is something too few people are speaking intelligently about. I’m very happy that I came across this during my search for something regarding this.

    Reply
  35. Thanks for another wonderful article. Where else could anybody get that type of information in such a perfect way of writing? I have a presentation next week, and I am on the look for such info.

    Reply
  36. Way cool! Some very valid points! I appreciate you penning this write-up and the rest of the website is really good.

    Reply
  37. Hurrah! Finally I got a blog from where I be capable of genuinely get helpful data regarding my study and knowledge.

    my web blog; why not try these out

    Reply
  38. Do you mind if I quote a couple of your articles as long as I provide credit and sources back to your website? My blog is in the exact same area of interest as yours and my users would really benefit from a lot of the information you present here. Please let me know if this ok with you. Appreciate it!

    Reply
  39. Can you be more specific about the content of your article? After reading it, I still have some doubts. Hope you can help me.

    Reply
  40. Hi just wanted to give you a quick heads up and let you know a few of the images aren’t loading correctly. I’m not sure why but I think its a linking issue. I’ve tried it in two different internet browsers and both show the same outcome.

    Reply
  41. Your style is so unique in comparison to other folks I’ve read stuff from. Thanks for posting when you’ve got the opportunity, Guess I’ll just bookmark this blog.

    Reply
  42. Excellent article! We will be linking to this great content on our site. Keep up the good writing.

    Reply
  43. I really like it whenever people come together and share opinions. Great blog, keep it up.

    Reply
  44. Your article helped me a lot, is there any more related content? Thanks!

    Reply
  45. This is fantastic! Full of useful information and extremely articulate. Thanks for offering this.

    Reply
  46. Wow, fantastic blog layout! How long have you been blogging for?

    you made blogging look easy. The overall look of your
    site is magnificent, as well as the content!

    Here is my website see here

    Reply
  47. Can you be more specific about the content of your article? After reading it, I still have some doubts. Hope you can help me. https://accounts.binance.com/pl/register?ref=YY80CKRN

    Reply
  48. -1 OR 3+426-426-1=0+0+0+1

    Reply
  49. 0″XOR(if(now()=sysdate(),sleep(15),0))XOR”Z

    Reply
  50. 1 waitfor delay ‘0:0:15’ —

    Reply
  51. I was suggested this web site by my cousin. I am not sure whether this post is written by him as nobody else know such detailed
    about my trouble. You’re wonderful! Thanks!

    Here is my site – more bonuses

    Reply
  52. Your point of view caught my eye and was very interesting. Thanks. I have a question for you.

    Reply
  53. Good information. Lucky me I found your site by chance (stumbleupon). I have bookmarked it for later!

    Reply
  54. Great post. I will be going through a few of these issues as well..

    Reply
  55. Your article helped me a lot, is there any more related content? Thanks!

    Reply
  56. Including Sugar Defender into my daily regimen has
    been a game-changer for my general wellness. As a person that
    currently prioritizes healthy consuming, this supplement has offered
    an added increase of protection. in my energy levels, and my wish for unhealthy snacks so easy can have such an extensive
    influence on my life.

    Reply
  57. Your point of view caught my eye and was very interesting. Thanks. I have a question for you.

    Reply
  58. Hey there! Do you know if they make any plugins to help with
    SEO? I’m trying to get my site to rank for some targeted keywords
    but I’m not seeing very good success. If you know of any please share.
    Kudos! You can read similar blog here: Eco blankets

    Reply
  59. Thanks for sharing. I read many of your blog posts, cool, your blog is very good.

    Reply
  60. How Increase Your Web Presence Link Popularity
    주소모음

    Reply
  61. I get pleasure from, cause I found just what I used to be taking a look for.
    You have ended my 4 day lengthy hunt! God Bless you
    man. Have a nice day. Bye

    Feel free to visit my website – browse around this website

    Reply
  62. sugar defender reviews
    For several years, I have actually battled uncertain blood sugar level
    swings that left me feeling drained and inactive.
    But because integrating Sugar Defender right into my routine, I have actually noticed a significant renovation in my overall energy
    and stability. The dreadful mid-day distant memory, and I appreciate that this all-natural solution attains these results
    without any undesirable or negative responses.

    truthfully been a transformative discovery for me.

    Reply
  63. Your point of view caught my eye and was very interesting. Thanks. I have a question for you.

    Reply
  64. Thank you for your sharing. I am worried that I lack creative ideas. It is your article that makes me full of hope. Thank you. But, I have a question, can you help me?

    Reply
  65. Can you be more specific about the content of your article? After reading it, I still have some doubts. Hope you can help me.

    Reply
  66. sugar defender ingredients As somebody who’s always been cautious concerning my blood sugar
    level, discovering Sugar Protector has actually been an alleviation. I
    feel a lot more in control, and my current check-ups have revealed positive renovations.
    Recognizing I have a reputable supplement to sustain my
    routine offers me satisfaction. I’m so thankful for Sugar Defender’s
    effect on my health!

    Reply
  67. Oh my goodness! Awesome article dude! Thanks, However I am going through troubles with your RSS. I don’t understand why I cannot subscribe to it. Is there anybody getting identical RSS issues? Anybody who knows the answer will you kindly respond? Thanks.

    Reply
  68. Thanks for sharing. I read many of your blog posts, cool, your blog is very good.

    Reply

Leave a Comment

*