Using Enterprise Architect API for documentation in Gitbook - enterprise-architect

we use Sparx Enterprise Architect for creating our UML diagrams. Also we write our architecture documentation based on Gitbook. Currently we copy & paste the diagrams into MS Paint and save them as PNG to use it the image in the Gitbook.
Our build system then creates a HTML version of the Gitbook and publishes the documentation to our webserver.
The question is that we want to reference the diagrams directly from Gitbook/Markdown to Enterprise Architect. Is there any kind of REST API for Enterprise Architect available to directly link to a PNG/image?

Yes, there is, but you'll need to install the cloud server component.
As an alternative you could also:
Export the model as HTML and reference the element/diagram on there. You can use the GUID to get stable hyperlinks
Use the regular automation API to build your own export/synchronize mechanism.

Related

Which version of mermaid is supported in Azure DevOps Wikis

Which version of mermaid is currently supported in AzureDevOps. In the official docs it only mentions some diagrams that are supported.
I was really loosing a lot of time because I was using features that are not supported by Azure DevOps.
I now went down to feature from 8.2.6 but I would like to know for sure which version is supported.
Thank you
Based on your description, I further checked this problem. Currently, the wiki supports the following Mermaid diagram types:
Sequence diagrams
Gantt Charts
Wiki does not support other types of Mermaid diagrams, so this seems to have nothing to do with the version. Regarding this feature, I help you find a user voice. You can vote and add comments on it.
As of Sprint 200 (March 2022) the following diagrams are supported up to version 8.13.9:
Flowchart
Sequence diagrams
Gantt charts
Pie charts
Requirement diagrams
State diagrams
User Journey
I looked at the files downloaded from the Developer Tools: Network tab. I first thought it was 6.3 based upon the url but looking into the json I saw this...
"./package.json":function(e){e.exports={name:"mermaid",version:"8.2.3",description:"Markdownish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.",main:"dist/mermaid.core.js",keywords:["diagram","markdown","flowchart","sequence diagram","gantt","class diagram","git graph"]
So as of this moment... I believe it to be 8.2.3
Checking the listed support page it shows the following diagrams as supported:
Supported:
Sequence diagrams
Gantt charts
Flowcharts
Unsupported:
Pie charts
Requirement diagrams
State diagrams
User Journey
Testing each of the diagram types in a DevOps wiki page using the examples from the mermaid website, the first three work. The rest return an error "Unsupported diagram type". Truly amazing they have it documented as supported but in reality its not.
Sad that azure devops (server) wiki still not support mermaid.
One hack could be using the 'markdown' button on https://mermaid.live/
and then paste the markdown from mermaid.live into devops wiki.

Correct Use of UML Icons for Source Control in Continuous Delivery Modelling

Working on a proposal diagram of a Continuous Delivery Model, and am looking for a way to represent Source/Version Control in the diagram. I don't see a specific icon for Source/Version Control in yED graph editor, and google searches don't seem to be helping much. I can't use the same icon as database since I also have a number of databbase objects in the same model as well.
Is there a generally accepted or official diagram shape/icon/whatever for source control (git, svn)?
No, there is no icon for version control defined in UML.
(Nor is there one for a database for that matter.)
You can download the full specification of UML on the OMG website.

Enterprise Architect and Unity3D

I'm trying to connect a project I have created in Unity3D to Enterprise Architect. What I want is for Unity to be able to see the data about a model in EA's database and then be able to do something with it but I'm having trouble accessing the database.
The automation interface of EA is what I want to be using apparently but I can't really work out what it is or how to use it.
So I guess my question is a) Is what I'm trying to do even possible? and b) if it is, does anyone know of a site or tutorial that could show me how to use the Automation Interface, as I can't seem to find anything and EA's just confuses me
not sure if it would work with any other language used by Unity3D other than C#, but if its C#, just need to add Interop.EA.dll(found in the Sparx EA install folder) as a reference to your project and add a using statement when you want to use the API.
here is a link to the official API reference (functions and properties)
As to tutorials, here is a link on basic use of the API from the official documentation

Sitecore: importing a sublayout after deploying the code

I have a local Sitecore instance where I made changes involving both code and the creation of a new sublayout.
After deploying the code I can see on the new environment the usercontrol (.ascx) file associated to the sublayout, but the corresponding item does not appear and cannot be used.
If I attempt to recreate the usercontrol, it tells me that the file already exists, and due to my lack of experience with the platform I found myself unable to import it.
What would be the optimal way to proceed?
To deploy your new sublayout correctly you should create a Sitecore Package. This is basically a zip file that allows you to move both items and disk files between Sitecore instances in a controlled manner. For basic installs of Sitecore, where you have not added any specialised tools, it is generally the preferred way to move resources between servers.
The "Package Designer Guide" on the Sitecore Developer Network will give you information about how to use the Sitecore UI on your development site to create a package containing both the Item(s) and the file(s) for your sublayout:
http://sdn.sitecore.net/upload/sitecore6/65/package_designer_admin_guide-a4.pdf
Once created, this package can then be imported onto whatever other servers you want to deploy your sublayout to.
-- Edited to add --
Derek Hunziker's answer makes a good point: As well as the basic Sitecore behaviour there are third party tools available which can enhance and extend the deployment experience if you wish. As well as Hedgehog TDS, you might also consider:
The "Sitecore Rocks" extension for Visual Studio allows the creation of packages from within the
Visual Studio UI. This tool is free to use. (https://visualstudiogallery.msdn.microsoft.com/44a26c88-83a7-46f6-903c-5c59bcd3d35b/)
There are also a variety of open source tools - Sitecore Courier is one example: (https://github.com/adoprog/Sitecore-Courier) This is designed to help automate deployment between Sitecore instances.
Both TDS and Courier are most suited to regular deployments, such as those during ongoing development cycles, since they both include automation to help decide what gets deployed. The standard Sitecore UI and the Sitecore Rocks extensions for package creation are better suited to ad-hoc deployments, since you generally pick the things to deploy manually.
A common best practice is to deploy your items along with your code using Team Development for Sitecore. This eliminates the need to create Sitecore packages every time you want to move items between environments, which in turn reduces issues caused by human error. As an added bonus, the items that you own as a developer (such as Templates and SubLayouts) can be checked into source control.
Full disclosure: I work for Hedgehog Development :)

Version Control System for Dynamics CRM 2011/2013

I have started using Git for my other development projects (PHP, HTML, JavaScript, etc.) and can now see how beneficial it is, however I've been unable to find anything similar for Dynamics CRM 2011/2013 as a lot of the solution development is done within the web interface.
I'm guessing this is not possible, but could someone with more experience than me please confirm this or let me know which tools I should be looking into?
Thanks
You can use the Visual Studio Developer Toolkit available in the SDK to version control your plugins and web resources initially. I'd recommend this as your first step.
If you choose to take it further you can also look at using the SolutionPackager tool to version control your solutions. This will split out your solution zip file into separate version controllable files for each component. It works best when you follow the developer workflow outlined in the linked MSDN article