Attachments on Filesystem Structure

Hi there Bizagi,

I'm having difficulty to determine how does Bizagi Studio save attachments onto the filesystem. What I did managed to find out was that Bizagi saves all the different file containers into it's own directly butmthere is a part in the directory that I can't figure out.

Can someone please help.

At the example below the directory is as follows:


Where does the 10003 and 13 comes from? I know the 13562 is the EntityID of one of my own Entities to which the Attachment links to. How do I know were the 10003 and 13 comes from as there is a lot more in my Docs directory?


Any assistance will be much appreciated.




Hi BizAgi,

Ok I've managed to figure out that the 10003 in my directory structure represent my ENTITY ID from the ENTITY table. The only unclear part now is the 13. What does that reference in the example above?




Dear Andre,

Files uploaded in Bizagi projects are stored in the web server's defined upload path configured in the Advanced Environment Configuration. However, inside this defined folder, the subfolder structure is organized as described below: …\IdEntity\WholePart\SurrogateKey\IdAttribute\

  • IdEntity: It is the Id of the entity, to which the file type attribute belongs to. In order to know the id of the entity, you may need to query the table ENTITY of your project. This is a static information that will maintain the same since the creation of the entity in Bizagi Studio.

  • SurrogateKey: It is the value of the key of this entity's instance, where the file type attribute is. In order to know the key value of the entity's instance, you may need to obtain the desired entity and checkout its .SurrogateKeyValue. This is dynamic information, therefore you can know this information in runtime, as each process' case will have a different SurrogateKey.

  • WholePart: It is defined as the whole number of the dividing the SurrogateKeyValue by 1000; or can be obtained with the following calculation:

WholePart = (SurrogateKey - (SurrogateKey Module 1000)) / 1000 Again, this is dynamic information as it is derived from the SurrogateKeyValue.

  • IdAttribute: It is the id of the attribute of file type that currently stores the uploaded file. In order to know the id of the attribute, you may need to query the table ATTRIB of your project. This is a static information that will mantain the same since the creation of that attribute through Bizagi Studio options.

For further information: