database-plugin
database-plugin copied to clipboard
ACLI : Error when executing Export command
Hello,
I get errors when launching an EXPORT in command line. My environment is Windows / SQLServer My command line is like :
Archi -application com.archimatetool.commandline.app -consoleLog -nosplash --modelrepository.cloneModel "https://dev.azure.com/xxxxxxxx" --modelrepository.loadModel "myRep" --modelrepository.userName "myUser" --modelrepository.passFile "MyPassFile" --export.database "Database name in the plugin" --export.model.name "MyModelName"
Errors details on attachments please.
Can you see what happens ?
What seems curious to me is that the error message speaks of import while I am doing an export... The export command does not seem to need the name of the model unlike the import (I do not see the option in the online help), is this normal?
Thanks for your help. Regards Martine (PS please note that I am on vacation tonight for 15 days, I will not be able to respond to any messages)
Hi Martine, Thanks for raising this issue. As I'm on vacation as well, I'll investigate in few days :)
Hi Martine,
I kept the "export" word as it is the way the Eclipse framework references the export to database process. Nevertheless, it is more a "sync" than an "export" as before exporting the data, the plugin verifies if a newer version of each Archimate concept exist in the database. If this is the case, then the export process import the newer version from the database before exporting the model to the database.
This said, I conducted some more tests on a MS-SQL database and even if I didn't experienced the same error message as you, I discovered some other issue. I will fix them and release a new version in the coming days. We'll then check if it solves your issue. If not, I'll ask you some more questions to help me understand what happens.
Hello Hervé, Thank you for your response. I hope you had a good holiday. If I understand correctly, the « synchronization » that Archi will do in command mode will not affect my production model, only the instance of Archi that will open to execute the command, right? (I'm not a technical expert, I didn't really understand how the command mode worked, I spent a lot of time developing the command...). Were you able to work on the issues? Are you going to release a new version soon to test ? Ask me if i can help. Regards Martine
In fact, the plugin has been developped to support several people working simultaneously on the same model.
In that perspective, the situation where while you are working on a model, one of your colleague may export a new version in the database. So when you will do your export, the plugin will detect there are some changes in the database. The rules are quite simple:
- if you updated a component that your colleague has not, then it is exported to the database
- if your colleague updated a component that you haven't, then the plugin updates (import) the uptates to Archi
- if both you and your colleague updated the same component, then the plugin shows you both versions and ask you to choose which one to keep (this is conflict management)
But if you're the only person working on your database, you may safely ignore this mechanism :)
I haven't had time to solve the issue yet, but it's on my todo list.
Hi Hervé, thank you for these clarifications. I think this mechanism goes against the collaborative management of Archi itself. To work with several people on the same model, we use Archi's "collaborative" mode which itself manages conflicts in the event of simultaneous modifications to the same element. We will therefore have 2 conflict management to do, that of Archi and that of the plugin, which moreover risk not being synchronous if one or other of the users forgets to do a refresh before exporting. What do you think ? Martine
Hi Martine,
I do not understand why you state that this mechanism goes against collaborative management of Archi itself.
In fact, there is no collaborative management of Archi itself. CoArchi is a plugin, just like the database plugin. It has been developped by the same developers, that's the reason why coArchi is highlighted on their website and that they refuse to even add a link to my plugin (like all my other plugins by the way).
They are completely distinct plugings that both allow several architects to work on the same models:
- CoArchi links a model to a Git Repository (1 to 1 relation) and allow to create branches. Besides, updating Archimate concepts using another tool than Archi and coArchi is not supported.
- The database plugin allows to persist several models in several databases (n to n relation), share components between models (when a component is updated in a model, the other models that share this component are automatically updated), but do not manage branches (model history is linear). In addition, the plugin completely supports that models or Archimate concepts are created or updated using SQL requests.
You just need to use the one that fulfill your needs. If you use two independent collaborative plugins, then you need to manage conflicts in both :)
that's the reason why coArchi is highlighted on their website and that they refuse to even add a link to my plugin (like all my other plugins by the way).
That's not correct. We don't link to any third-party plug-ins on the main Archi web-site because we are not responsible for their maintenance or promotion. But we do have an Other Plug-ins section on the Archi Forum where third-party plug-ins can be discussed and promoted.