Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Pawel Zubkiewicz

Pages: 1 2 [3] 4 5 6
I managed to workaround this problem by using Document Script fragment which is available since EA 12.1.1224 - so pretty new feature.

Sparx says in changelog:
Document Script fragments now available:
- Allows specifying a script to be called by the generator that will return the fragment contents as RTF
- Set template type in Template Document Options
- Use with DocumentGenerator LoadDocument and GetDocumentAsRTF for dramatically increase documentation flexibility

They are quite convenient, but poorly documented. Anyway,  finally after years (no kidding!), I managed to generate documentation in nonlinear way without using virtual documents. I'm using it to include MockUp diagrams into UseCase specification. Each UseCase is traced to particular Package that contains mockups diagrams. Those Mockups can be stored anywhere in the model - finally, there is no need to store mockups in same tree branch as the use case :-)

This gives a lot of freedom and flexibility in the way repository can be structured, no need to worry about documentation generation. Of course, I use this for Mockups, but it can be used for anything.

I think I will write a blog post about this to explain it better :-)

The following code worked:
Code: [Select]
!INC Local Scripts.EAConstants-JScript
function main()
Session.Output("Got here!");
    var reporting as EA.DocumentGenerator;
    reporting = Repository.CreateDocumentGenerator();
    if(reporting != null)
        Session.Output("Got here 2!");
            Session.Output("Got here 3!");
if(!reporting.InsertText("This is some text",""))
                Session.Output( "Error: " + reporting.GetLastError() );
Session.Output("Got here 4!");
var retStr;
retStr = reporting.GetDocumentAsRTF();
Session.Output("Got here 5!");
            return retStr;

At least, with your help, I've got the trivial example to work now, which is a major step forward.

Sadly, the code I was intending to use seems to cause EA to crash and shutdown.

Your example code works for me as well, however ONLY in a case when in template I select custom section - strange - this is not described in documentation at all!

If custom section is not selected the script is not executed!
Even though this custom section does not refer to output of the script it is included in the final document.

Similarly to you, I also have problems with my intendent script. I got some errors but logs don't say much :-(
Also if I change in my script the
Code: [Select]
return docGenerator.GetDocumentAsRTF(); into
Code: [Select]
docGenerator.SaveDocument( OUTPUT_FILE, DOCUMENTATION_TYPE );
EA generates proper document with correct content.

So, my question to you Screwtape is: did you manage to find your way with this new functionality? Maybe you could share what have you learned?

PS. Geert, the Session.Output is visible (when script is actually executed of course)
PS2. I'm using newest version of EA 12.1.1228.


Never mind, I managed to fix the problem :-)

Yes, but they are less flexible even when ad-hoc generated as you presented in

So, Geert, to your knowledge it's not possible to achieve that without model documents?


I'm wondering whether it is possible to find a Package via sql query and make EA recognize it as a Package in document template with all sections?

I have a fragment template and in custom query I've got this simple SQL for testing purpose:
Code: [Select]
SELECT t_package.ea_guid as CLASSGUID
from t_package
where t_package.ea_guid='{F3425580-C5F4-44f7-9F1D-0ED8F3CCB5D0}';

When I execute document generation of this fragment:
Code: [Select]
package >
diagram >
< diagram
child packages >
< child packages
< package
custom >
< custom

Only the part inside 'custom' tag is evaluated, the rest is ignored.

Is is possible to return via SQL a "full" Package so it will be evaluated with all its contents by the template?

Bugs and Issues / Re: MySQL DB migration problem
« on: March 09, 2016, 08:29:37 pm »
Thank you Geert, we can always count on you :-)

Bugs and Issues / MySQL DB migration problem
« on: March 09, 2016, 08:01:22 pm »

I've got repository on MySQL db and I need to move it on another computer.
I've exported whole DB using MySQL Workbench to SQL file (structure and data). Then, I imported it into new instance of MySQL db on another computer. Everything worked ok, there are tables, data etc.

When I try to connect to the repo from EA I get this error message "There does not appear to be a model in this repository".

What should I do? Any idea how should I export/import the database?

General Board / Re: Is there any solution for Docs Generator (RTF)
« on: September 22, 2015, 07:44:17 pm »
I would also like to see your JScript code. I have similar problems with template engine.

Could you please post your solution here?

General Board / Re: Documentation Template: conditional including
« on: September 22, 2015, 07:47:18 pm »
I'm also interested in such solution.

Has anyone manged to include template fragment conditionally? Or "implement" if statement inside the template?

General Board / Re: Transitive relelations (Business Rules Managem
« on: August 27, 2015, 12:26:49 am »
Thanks a lot Geert. Now it works!

General Board / Re: Transitive relelations (Business Rules Managem
« on: August 26, 2015, 10:21:38 pm »
Have you tried the relationship matrix?
I think that does exactly what you describe.

You mean model search in matrix instead of package selection?

I'm investigating that option. I wrote a custom SQL search to use it there
Code: [Select]
SELECT t_connector.Start_Object_ID
FROM t_object
INNER JOIN t_connector
ON t_connector.End_Object_ID=t_object.Object_ID
t_object.Name like 'KA101';
(I know it's bad but for testing purpose it's enough).

However when I execute this in matrix no elements are displayed in matrix. I wrote a different query that retrieves only ea_guid of elements, but Matrix still is not populated with those elements. (both queries work ok in Project search window)

Do you know what I should return in SQL query so Matrix would understand?

General Board / Transitive relelations (Business Rules Management)
« on: August 26, 2015, 12:26:37 am »

I'm asking for your suggestions on how to organize management or "create views" (it's hard to name this properly) for elements that have transitive relationships.

My IT system is composed of 15 Modules. Each Module has from 3 to 6 Components.
- Each Component can be assigned to only one module (so it's a tree not a matrix).
- Each component can have many Business Rules assigned to it. Each business rule can be assigned to as many components as you please (so Component - Business Rule relation can be presented as a matrix)


Now I want a nice way of dealing with this, I would prefer more tabular / matrix way of working with those elements than diagram oriented because there is simply to many of them.

I know that I can use Reletionship Matrix (which is great) but I need to have option to filter by transitive relationships. In other words:
I want easy solution to see list all Business Rules assigned to all components that belong to for example Module 1.

Without the need to create every time new diagram and using Insert related elements...
Any suggestions?

General Board / Re: Import of (updated) BPMN 2 models
« on: August 26, 2015, 08:49:59 pm »
Belief me I'm well aware of the price tag on Aris, EA and IBM Rational suite for that matter. However I'm also convinced that changing people's minds is much harder than changing software.

@Geert @qwerty
As much as I feel writing custom import engine would be fun exercise I want to avoid this because than again I'd have to convince people that this is worth it. After all this would take time, for which someone have to pay.

Anyway thanks for help.

General Board / Import of (updated) BPMN 2 models
« on: August 26, 2015, 05:32:55 pm »

I wonder if it is possible to import BPMN 2 model (exported from Aris) multiple times in a way that EA would recognize what was already imported and just update existing elements and not create new ones. Do you know if that's possible?

Detailed description:
- There is a Unit in my company dedicated to do "Business Process Modeling" they use Aris to model in BPMN 2
- There is "my" unit which does Systems Analysis and design in EA

We want to import from Aris some of the models into EA every time they are changed in Aris.
So what I do:
1. Import into EA Aris model for a first time. Let's call it Version 1 - this works great.
2. There are changes in Aris model, so new export file is generated (in BPMN 2 XML format). Let's call it Version 2
3. I import the Version 2 into EA.
4. EA creates new package for Version 2 in EA repo. It does not recognize that most of the elements already exists since they were created during import of Version 1.

Is it possible to make EA update "Version 1" elements during import of "Version 2"?

PS. When I use import BPMN 2, on a dialog window there is option "Strip GUIDs" which is selected and read only by default. Why? I feel this could be a reason that EA is creating new elements every time.

General Board / Cloud Services questions
« on: July 28, 2015, 10:31:11 pm »

I'm preparing a demo/evaluation setup of Enterprise Architect for IT unit at my company, to "finally" convince management that EA is best option for us.

I have experience with previous versions of EA (mostly 9 and 10) but I have never worked with Cloud Services. I read but some particular things are still not clear for me.
Could you please answer my questions:
1. How much Cloud Services cost ? Are they for "free" when you bought EA licenses? If yes, which of them?

Also, one of the features of Cloud Services is "Re-usable Asset Service".
2. Does RAS allows for easy document template sharing? As far as I know/remember document templates are locally stored (which is serious drawback in my opinion)
3. Does RAS allows sharing common elements between projects?
Let's say I have two or more systems that work in the same domain. Those systems have common: requirements, business rules, business processes, etc. Of course those systems also have specific requirements, rules, and many other properties and they are developed as separate projects by separate teams. Will there be any value added in using CS/RAS in comparison to "plain" repository in SVN/database?

Thanks in advance

General Board / Re: Recursive "undo check out"
« on: March 25, 2015, 07:10:50 pm »
Create a new model from last last SVN version

So no easy way.

Maybe we could ask Sparx to add that feature, at least to scripting API?

Pages: 1 2 [3] 4 5 6