Extract Databases
- Last UpdatedFeb 24, 2025
- 3 minute read
Unlike standard multi-write databases, extracts allow users to keep elements claimed when they exit from AVEVA E3D Design or change to another module. They can also be used, together with Data Access Control (DAC), to manage workflow. Refer to Administrator User for more information.
An Extract is created from an existing Database. When an Extract is created, it will be empty, with pointers back to the owing or master database . Extracts can only be created from multi-write databases. An extract can be worked on by one User at the same time as another user is working on the master or another extract.
When a user works on the extract, an extract claim is made as well as a user claim.
If the claim mode is explicit, the extract claim will be made automatically when you make a user claim using the CLAIM command. You can also claim to the extract only using the EXTRACT CLAIM command.
If an element is claimed to an extract, only users with write access to the extract will be able to make a user claim and start work on the element:
-
If the databases are set up with implicit claim, when you modify the element, the element will be claimed both to the extract and then to you. If the element is already claimed to the extract, then the claim will only be made to you.
-
If the databases are set up with explicit claim, then you will need to use the CLAIM command before modifying the element.
-
Once you have made a user claim, no other users will be able to work on the elements claimed, as in a normal multi-write database.
-
If you unclaim an element, it will remain claimed to the extract until the extract claim is released or issued.
When an extract user does a SAVEWORK, the changed data will be saved to the Extract. The unchanged data will still be read via pointers back to the master Database (DB). The changes made to the extract can be written back to the master, or dropped. Also, the extract can be refreshed with changes made to the master.
Examples |
|
|---|---|
|
EXTRACT CLAIM /STRU1 /STRU2 /STRU3 |
|
|
Claims named elements to the extract |
|
|
EXTRACT CLAIM /STRU1 /STRU2 /ZONE-A HIERARCHY |
|
|
Claims the named elements, and all the elements in the hierarchy to the extract The HIERARCHY keyword must be the last on the command line. It will attempt to claim to the extract all members of the elements listed in the command which are not already claimed to the extract. |
|
|
EXTRACT FLUSH DB PIPE/PIPE ‘Description of flush’ |
|
|
Writes all changes to the database back to the owing extract. The Extract claim is maintained. |
|
|
EXTRACT FLUSH /STRU1 /STRU2 /STRU3 ‘Flushing three structures’ |
|
|
Writes the changes to the named elements back to the owing extract. The Extract claim is maintained. |
|
|
EXTRACT ISSUE DB PIPE/PIPE ‘Issuing /pipe’ |
|
|
Writes all the changes to the database back to the owning extract and releases the extract claim |
|
|
EXTRACT ISSUE /ZONE-A HIERARCHY ‘Issuing /zone’ |
|
|
Writes all the changes to the named element and all elements under it in the hierarchy back to the owning extract and releases the extract claim |
|
|
EXTRACT ISSUE /STRU1 /STRU2 /STRU3 ‘Issuing three structures’ |
|
|
Writes the changes to the named elements back to the owning extract and releases the extract claim |
|
|
EXTRACT RELEASE DB PIPE/PIPE |
|
|
Releases the extract claim: this command can only be given to release changes that have already been flushed. |
|
|
EXTRACT RELEASE /STRU1 /STRU2 /STRU3 |
|
|
Releases the extract claim: this command can only be given to release changes that have already been flushed. |
|
|
EXTRACT RELEASE /ZONE-A HIERARCHY |
|
|
Releases the extract claim to the named element and all: elements under it in the hierarchy. |
|
|
EXTRACT DROP DB PIPE/PIPE ‘Dropping /Pipe’ |
|
|
Drops changes that have not been flushed or issued. Your claim must have been unclaimed before this command can be given. |
|
|
EXTRACT REFRESH DB MYTEAMPIPING |
|
|
This will refresh the extract MYTEAMPIPING with changes made on the parent extract, |
|
The elements required can be specified by selection criteria, using a Programmable Macro Language (PML) expression. For example:
EXTRACT CLAIM ALL STRU WHERE (:OWNER EQ 'USERA') HIERARCHY
Command Syntax
>- EXTRACT -+- FLUSH ---------------.
| |
|- FLUSHWithoutrefresh -|
| |
|- RELEASE -------------|
| |
|- ISSUE ---------------|
| |
|- DROP ----------------| .-------<-------.
| | / |
‘- REFRESH -------------+--*-- elementname --+- HIERARCHY -.
| |
| |
| |
‘-- DB dbname ---------------------+->