Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Vault navigator provides easy navigation through documents types and objects
View/dump fields and relations definition
VQL query generator with contextual help, syntax check and highlighting
Generate VQL statements on the fly based on document type or object selection
Improved VQL syntax: select *, count(*), into
Cache query results with scheduled refresh
Generate aggregated reports by using more advanced syntax (GROUP BY, HAVING, MAX, MIN, COUNT, etc)
View/dump documents and objects metadata and relations
Inline edit of the metadata
View content, renditions, attachments and relations for documents and objects
Object navigator allows browsing objects for attribute data and references to business objects, users, permissions, relations, picklists.
Export query results to Excel and CSV
MDL commands/script editor with contextual help, syntax check and highlighting
Execute MDL scripts in one go, statement by statement and asynchronously
Favorites and history management
Compare objects metadata
dqMan Veeva Vault Edition is comprehensive tool for administrating Vault data and configurations, helping Vault administrators, consultants and developers to carry out the daily tasks in a reliable and efficient way.
The powerful and easy to use VQL and MDL editor provides syntax check and highlight, predefined templates, contextual help and improved syntax. The data resulting from queries can be exported, edited and manipulated in multiple ways. The MDL engine allows automating the creation, change and replication of the configurations on multiple vaults.
The clean user interface allows quick and efficient use of all these features and in addition offers extensive customization with context sensitive actions on data and configuration.
dqMan is targeted at IT professionals who are already familiar with the Veeva Vault platform, especially VQL and MDL as well as Vault configuration.
Send any feedback, questions, feature requests or bug reports to support@dqman.com
dqMan is distributed as a portable application packaged as a ZIP file. The ZIP file can be extracted anywhere on the installation machine. The folder where dqMan is extracted to can have any name, as per the user's preferences.
Please note that deploying the application to the default Program Files folder may require administrative permissions; this is standard Windows behavior when deploying any files to the Program Files folder and not specific to dqMan.
You can use the following command line parameters in dqMan:
For login:
-r<Vault>
- Autoconnect to the supplied vault. The vault name must be given in the same format dqMan is configured to use. If fully qualified server names are activated, vault names need to match this format.
-u<Username>
- A valid username to log in with
-p<Password>
- The password for the user.
dqMan requires a valid license for the application to work. Customers having purchased dqMan (or having requested a 14-day trial license) will receive their license key(s) via email.
dqMan can be activated easily online where it automatically verifies the license key against the dqMan license server, but for machines which are permanently offline/isolated from the internet an offline license activation method is also available.
For dqMan to be able to activate the license online, it must to be able to access the internet from the machine where it is running.
Specifically, the dqmanVVE.exe process must be granted permission to communicate with the dqMan Licensing Server hosted at https://dqman.com
No data besides the actual license key is collected or sent by dqMan to the licensing server.
Start dqMan
The dqMan License Activation dialog opens prompting the user to enter a license key
Copy & paste the license key from the email you have received after purchasing dqMan (or having requested a trial license)
Press the Activate Online button
dqMan validates the license key entered at step 3 and the main application window opens
If the activation could not be completed successfully or the license is expired or disabled, dqMan will display an appropriate error message. The user can retry entering a valid license, or click any of the links on the above dialog to help solving any potential issues with license activation.
To activate dqMan on a machine which is permanently offline/isolated from the internet follow the steps below:
Enter the email address used to purchase dqMan as well as the license key you want to activate offline. The email address is used to authenticate the owner of that mailbox as a dqMan customer/license holder, therefore only email addresses used previously for purchasing dqMan can be used here. If you do not own or have access to the mailbox used to purchase dqMan you will need to contact the owner of that mailbox and have them perform this procedure themselves, or have them forward the resulting email to you before continuing with step 4.
Press the Request Offline License Now button
You will receive an email shortly with a dqMan offline license file (*.dqman file) attached
Use your company intranet to transfer the offline license file received in the previous step to the offline machine where dqMan is installed
Start dqMan
The dqMan License Activation dialog opens prompting the user to enter a license key
Press the Activate Offline button, there is no need to enter the license key in this case
dqMan opens a standard File Open dialog
Locate the offline license file from step 5 and Open it
dqMan validates the license from the offline license file and the main dqMan window opens
If the activation could not be completed successfully or the license is expired or disabled, dqMan will display an appropriate error message. The user can retry opening another license file, or click any of the links on the above dialog to help solving any potential issues with license activation.
dqMan offline license files expire 24 hours after having been issued. They can no longer be used for offline activation afterwards. Note that the above does not refer to the actual license validity period, which is unaffected by the chosen activation method and stays valid for 1/2/3 years depending on the subscription purchased (or 14 days for trial licenses).
To verify/view the license dqMan is currently using, just open the About dialog from the dqMan main window's Help menu. The License Information section at the bottom of the About dialog displays information about the dqMan license such as the license key, license expiration date and license type (e.g. 1/2/3-Year subscription or 14-day trial).
It is also possible to Change License Key here in case this would be necessary.
dqMan will display notifications 30, 14 and 1 day(s) respectively before the current license expires so the user can take action (renew/purchase) in due time before the license actually expires causing dqMan to stop working.
Simply click OK to acknowledge the message and continue working with dqMan.
When the current license expires dqMan will stop working and will display the License Expiration dialog informing the user about the license having expired and prompting the user to activate a valid license.
Either of the#online-license-activation or#offline-license-activation methods described above can be used to reactivate dqMan with a valid license, after which the application will resume working normally.
All dqMan user data is preserved when the current license expires and will be available as usual as soon as dqMan is reactivated with a valid license.
To log in to a Veeva Vault, start dqMan, enter your login credentials and Vault URL. The URL protocol must not be specified since dqMan uses https to connect Veeva Vault. You can save your login credentials by selecting Save in login history and use them again in the future by clicking the History button.
For best experience the security profile of the user you connect with should be System Administrator or Vault Owner.
dqMan can open multiple sessions to the same or different vaults. You can open a session in several ways:
Click Session menu>New Session Window, or press Ctrl+N.
Whenever a session is needed but not available, the same login dialog box described in #2.1-log-in-out is displayed.
Sessions are always bound to a session window. Disconnecting a session window will terminate the session, but will not close the session window.
dqMan enables you to open as many sessions as needed, restricted only by the settings in the Client or Server configuration.
You can manage Sessions using the Session menu or the toolbar. The available functions are:
The MDL View allows the user to write and execute Vault MDL (Metadata Definition Language) commands to configure a Vault or automate tasks by writing scripts which manipulate the various Vault component types.
The MDL View offers advanced code editing and debugging functionality, such as MDL syntax highlighting, auto-complete functionality for MDL commands, setting breakpoints, stepping through code during execution, logging responses from the server as commands are executed, executing a sequence of commands as a script, etc.
The MDL View is divided into an upper and lower area - the upper area is the code editor area, while the lower area is the log viewer which displays output and error messages in response to the MDL commands/script being executed.
The bottom border of the code area can be dragged with the left mouse button to split the MDL work area between the code and log windows as per the user's preference (e.g. view more of the code editor or show more log output).
MDL code can be typed/edited directly in the upper code editor area of the window, pasted from the clipboard or loaded from/saved to an external file:
Paste from clipboard: you can paste any text copied to your clipboard into the MDL code editor by using the default Ctrl+V shortcut or selecting Paste from the MDL code editor's context menu. The text will be inserted at the cursor's position.
Save to file: Use the Save Script action from the Edit main menu or from the MDL code editor's context menu in order to save MDL you have edited in dqMan Veeva Vault Edition to an external file.
Individual statements or scripts can be executed in several ways. It is also possible to step through scripts, pause, or stop a running script. You can control the execution using the action buttons to the right of the main toolbar.
Note that some of the above commands may not be available depending on the type of code being executed and/or if execution times are too short for the user to interact with the buttons during runtime.
Additional functions are available in the context menu:
Run to Cursor executes all commands from the current cursor position or from the beginning to the selected line. The command in the current line is highlighted and debug mode is turned on.
In debug mode, you can select to execute the next command using Set Next Statement. This can be used to place the next statement/command that will be executed anywhere in the code, thus skipping errors or unneeded steps.
Breakpoints can also be set to control the execution of a script. Any number of breakpoints can be set anywhere in a script using the Set/Remove Breakpoint context menu items respectively. Breakpoints will be set/removed on the line where the context menu is opened, and will be marked with a red dot to the left of the line as well as highlight. It is also possible to remove all breakpoints at once when they are no longer needed using the Clear All Breakpoints context menu item.
Breakpoints cannot be set on empty lines.
Breakpoints can only be set on the starting line of a statement, not "inside" it.
Trying to set a breakpoint in a location where it is not allowed will move the breakpoint automatically to the starting line of the closest statement/command.
The Script Navigator is a folder tree for all available local drives, enabling quick access to MDL command/script files stored on the user's machine.
The Script Navigator is optional and can be closed if the user prefers to open MDL files by other means (e.g. using Load Script from the context menu or simply dragging an MDL file into the MDL code editor)
You can open a selected script using the Return key or by double-clicking it. Open scripts are marked as such until the session window is closed. Additionally, you can toggle the marks using the function Mark as New and/or Mark as Opened from the context menu.
The option Stop on Errors in the script editor's context menu defines the error handling behavior:
When this option is active, the script pauses in case of error and highlights the faulty statement/command. The statement or command affected by the current error will be highlighted in its entirety (even if it spans multiple lines) to clearly show which part of the script is affected.
If this option is inactive, the script will not stop execution but will display error messages in the result log.
Error handling will always pause on any error, prompting you to take action before resuming execution (for example, to fix the error or place the cursor after the error to skip it).
The proprietary statements provided by dqMan simplify the user's tasks by employing a language that closely resembles SQL.
Distinguished by the dqMan logo, these proprietary statements are visually marked on the corresponding query row.
dqMan empowers users by enabling them to utilize select *, group by, order by, count, as well as descriptions of various fields or relations.
The SELECT * statement is used to retrieve all queryable fields from a specified target. In the given examples, SELECT * is used to fetch all queryable fields from the targets "user__sys," "group__sys," and "binder_node__sys."
The COUNT(*) function is used to calculate the number of rows returned by a query. In the provided example, the COUNT(*) function is used to count the records in the "documents" where the "type__v" column is equal to 'Clinical.'
The INTO clause is used to store the results of a query into a local table. In the given example, the query results from selecting specific columns from the "documents" table, where the "type__v" column is equal to 'Clinical,' are stored in a local table named "local_clinical."
After storing query results in a local table, regular SQL syntax, specifically SQLite syntax in this case, can be used to query the local table. The provided example demonstrates a SELECT statement on the "local_clinical" table, where the results are grouped by "subtype__v" and "classification__v," while also counting the number of documents using the COUNT function.
Syntax:
Describe <type> [fields|relations] [all|custom]
Describe <[\]doc_type[\doc_subtype[\doc_classification]]> [all|custom]
Arguments:
Examples:
The DESCRIBE statement is used to obtain information about relations of an object in the system. In the given examples, the DESCRIBE statement is used to retrieve information about the relations of objects such as "activity__v" and "user__sys."
To view all fields of a document or object type in the results grid, users can utilize the "describe" command. The syntax for the "describe" command is as follows:
DESCRIBE object | []doc_type [\doc_subtype [\doc_classification]] [[[ALL|CUSTOM] FIELDS]]
In the provided example, the DESCRIBE statement is used to retrieve information about the fields of the "\regulatory__c" document type, including both standard and custom fields.
Term | Explanation |
---|
Click the New Session Window toolbar button
If you already have an open Session window which you would like to duplicate into a second session with the same credentials on the same vault click the Copy session toolbar button
Function | What It Does |
---|---|
Load from file: Either use the Load Script action from the Edit main menu, the (folder tree) or drag-and-drop the file from your filesystem to the MDL view in dqMan Veeva Vault Edition.
Command | What It Does |
---|
In this case you can only resume script execution by fixing the error OR manually setting the next line to be executed beyond the point where the error occurred, thus skipping the error entirely (see description of Set Next Statement in above)
The full syntax for querying the local tables can be found here:
Function | What It Is |
---|
New Session Window
Opens a new session window prompting the user with the login dialog box. For more information on logging in to dqMan, see #2.1-dqman-log-in-log-out.
Clear Cache
Empty cached data from memory and delete local tables.
Copy
Creates a copy of the current session window and logs you in automatically using the same user credentials.
Connect/Disconnect
Opens/terminates a session without closing the session window. The button will show Connect or Disconnect based on the whether the active session window is currently connected or not.
Session Alias
Sets an alias name for a session. This name is used instead of the default session name (<user@domain>|<vault>) wherever it is possible.
Close
Closes the current window.
Exit
Closes dqMan.
<type> | Object name, such as |
[all|custom] |
|
VQL | Vault Query Language |
MDL | Metadata Definition Language |
DB | Database |
SQL | Structured Query Language |
fme | fme AG (dqMan vendor) |
Executes the currently active statement (where the cursor is located) |
Executes all MDL statements as if they represent a script The arrow to the right of the Run Script button opens a menu with a number of options on how the script should be executed: Run Script - run all code sequentially as a single script from top to bottom Send statements one by one - sends all statements to be executed individually one after another starting from top to bottom Execute script asynchronously - the script is sent to the server to be executed asynchronously as a job. dqMan check the result of the job execution and returns the cursor to the user only after the job result is displayed in the Script Log section |
Executes the script one statement/command at a time, requiring the user to initiate each step by pressing this button repeatedly. The next statement/command to be executed is always highlighted. This is ideal for debugging complex scripts or simply following the individual processing steps a script performs. |
Pauses a running script and switches to debug mode. The next command will be highlighted. |
Stops the execution. |
You can create a dump from almost every control where a valid id
is displayed and highlighted or selected.
In such cases you can call the Dump object function from the appropriate context menu on the id
. The dump will be opened in a separate window.
Dump object from Clipboard
If you select a valid id
, you can generate a dump directly by right-clicking Dump function or by pressing Alt+D.
If a valid session is not found, first the login history will be searched and, in case of success, an automatic login is established. If no session can be found or the automatic login fails, the login dialog box will be displayed.
Click and hold the left mouse button for 1 second on any value representing a valid Veeva id to load the respective object into the Object Navigator (see Object Navigator).
The Dump operation is applicable to both documents and objects. However, it's important to note that the information provided after performing a dump may vary, as illustrated in the examples below.
The Vault Navigator is available in the VQL view, to the left of the dqMan screen. You can open or close it using the Vault Navigator from the View menu or by using the Navigator button on the toolbar.
The Vault Navigator displays the document types and objects hierarchy, the favorites tree and the local tables.
Whenever a tree item is expanded, the appropriate data is fetched dynamically from the vault. Therefore, you can easily update a part of the tree by collapsing and re-expanding the parent object.
The Objects tab allows users to navigate through the available document types hierarchy (under Base Document node) and the objects hierarchy (under Vault Objects).
Create a VQL query on the fly Click the desired node in the Vault Navigator to create a VQL query for the object contents, placed in the VQL command input area without executing it. The query is created using the Default Query Template that you can modify in the Options dialog box.
View the folder content Center mouse click to create a VQL similar to the above, but automatically executed.
Context menu Right-click a object to open the context menu:
Context Menu Command | What It Does |
---|
Load a favorite query Click a favorite to load the VQL query of the favorite into the VQL command input area without executing it. To execute it, use the center mouse button.
Context menu Right-click a favorite to open the context menu with the following options:
This view displays and allows all user-created local tables to be managed.
Local tables are usually created for caching the data in a local database engine and can be queried later by using a more advanced syntax (GROUP BY, HAVING, MAX, MIN, COUNT, etc). This reduces repeated calls to Veeva Vault for working with data which is not expected to change frequently and can be cached locally, for example for development and testing purposes.
The local table serves as a direct conduit for transferring any alterations to Veeva Vault. This includes updates, edits, and deletions made to the current object or document within Vault. The status bar displays the currently active object.
The database file where data for the local tables is stored is encrypted and can be read only by dqMan.
The History records all successfully executed VQL statements for further use. The toolbar buttons below allow the VQL execution history tobe navigated, as well as the History Panel to be toggled.
Clicking Back or Next loads the corresponding query into the input control, replacing the existing content.
The History Panel displays all recorded commands in a list.
To copy a command, either double-click it or use drag-and-drop. The content of the target input area will be replaced, unless a part of it has been selected.
Copying a command to a script view will insert the command at the current cursor position without overwriting the existing content, unless something is selected.
The History Panel is displayed on the left side of the session window by default, but it can be moved around and anchored in different places of the session window.
Context Menu Option | What It Does |
---|
For more information about creating and querying local tables see .
Menu Option | What It Does |
---|
Expand recursive | Expands all subobjects. |
Tree Options | Opens the respective page of the Options dialog box to manage vault tree settings |
Object Options | Lists of objects functions available for the selected tree item |
Dump | Creates a dump of the currently selected type |
Show fields | Shows the fields of the currently selected type |
Show relations | Lists the available relationships for the selected tree item |
Refresh | Available only for the root nodes it allow refreshing the data from Vault |
Refresh | Refreshes the data in the selected table with the current data in Veeva Vault |
Drop | Drops the selected local table |
Load | Loads the data from the local table into the grid. The query for the local table (including all fields) is added to the query editor |
Auto-refresh | Automatically refreshes the local table periodically, starting on the selected date and at the specified interval |
In dqMan, there are two functions to view external text files like log files or trace files, or anything else like notes, code snippets, readme files and so on.
To open any text file, go to View>View File; to open a new file, click Open.
As files open, a submenu with the most recently opened files is also added to the View>View File menu allowing these files to be quickly opened again if needed.
The File View displays the contents of the file. Use the context menu to access additional functions such as refresh, search, dump object or word wrap settings.
Run Favorite | Loads the VQL query of the selected favorite and executes it immediately. |
Manage Favorites |
Expand all | Expands all subobjects. |
You can save any VQL queries as a favorite for easy and quick access later.
You can load and save favorites from the Edit menu or the VQL editor's context menu. Simply use the Load from Favorites or Save to Favorites menu items available in those menus at any time while in the VQL editor.
Depending on whether there is a text selection or not, either the whole content of the code area or only the selected text will be saved as a favorite. Ideally complete statements should be selected and saved as favorites, but it is possible to save incomplete statements as well if desired. Incomplete favorites do need to be closed after being loaded to form a valid statement that can be executed correctly.
When saving a query to Favorites, a number of properties can be set to catalog, sort and find favorites later.
Favorites can also be edited later if changes are needed (see Manage Favorites below for editing existing favorites).
Name Name of the favorite.
Category Select a category for your favorite. Your favorite query will be grouped together with other favorites under the same category.
Query type Enter or select a query type.
Object type Enter the object type used in this query.
Show in Favorites Select if you want the favorite to be displayed in the Favorites menu. Unchecking this will hide the favorite from the Favorites menu and the Favorites Panel in the Vault Navigator.
Show in Vaults
Enter any vaults this particular favorite should be limited to.
An exclamation mark placed in front of the vault name (e.g. !testVault.domain.com
) hides the favorite for the respective vault.
Leaving the field empty will display the favorite in all vaults.
Vaults can also be selected by opening the menu to the right of this field, but only known (previously used) vaults will be displayed in the list.
Description Enter an (optional) description of what this favorite does.
VQL Query Displays the VQL query for this favorite.
The Manage Favorites window allows favorites to be edited, deleted, searched, as well as exported/imported to/from external files (for sharing favorites with others for example).
The Manage Favorites window can be accessed from the Vault Navigator's Favorites Panel by right-clicking and selecting the Manage Favorites item from its context menu.
Favorites can be searched/filtered, using the various properties at the bottom of the window. Any property performs a full text search in all available properties. All queries that match the filter criteria are displayed in the center of the window.
The toolbar buttons perform the following actions on the selected favorite(s):
Edit opens the selected favorite for editing (this can also be done by double-clicking a favorite from the list).
Deletes the selected favorite.
It is not possible to restore a deleted favorite, so take care when using this action.
Export to File exports all selected favorites to a file.
Import from File imports favorites from a file.
The Object Navigator, located by default to the right of the dqMan screen, provides easy, fast and comprehensive access to the properties and relations (such as name, relations, lifecycles and so on) to any other object in the Vault Navigator.
You can edit any editable field directly in the Object Navigator by selecting the field value and clicking F2. You can also follow connections to other objects similar to a web browser by simply clicking the link to open the dependent object in the Object Navigator.
You can open Object Navigator and load new objects in any of the following ways:
Use any explicitly identifiable object anywhere within dqMan, such as ids
in any text area such as lists, logs, tails and so on,
or
Any object in the Veeva Vault,
or
Distinct values in the VQL result list, such as id.
After selecting an identifier, you can load the object into Object Navigator either by pressing F12, by selecting Extras menu>Navigate Object or by long-clicking the object and then releasing the click when the cursor changes.
Follow a link to a dependent object, as described earlier in this publication.
Press Alt+O or click View menu>Object Navigator to open it without selecting any object.
After any of these procedures, the Object Navigator will open if it is not already visible.
For handling objects, the Navigation Bar has functions that you can identify by the tooltips displayed after hovering your cursor above the desired icons:
The attribute area displays all the attributes of the object and their values. The context menu of the attribute area provides additional functionalities, as follows:
The tabs at the top of the attribute area provide various ways to order the attributes.
The relations area contains more links to other objects, depending on the object type.
When the document id is clicked for a duration of 3 seconds, the relationships are presented in a grid format within the Object navigator.
These relationships are organized based on their relation type. The grid includes the following relation fields: id, target_doc_id__v, created_by__v, and created_date__v.
If the major_version_number__v and major_version_number__v are present, the relations of the selected version are shown.
However, if either major_version_number__v or major_version_number__v is not available, the grid displays the relationships of the latest version.
Configuration
The Object Navigator configuration is stored in the file ObjectNavigator.xml in the /config subdirectory of the dqMan home directory.
The configuration is done in different sections within the file, as follows:
Section <copy_attributes>
Copy attributes fill the submenu of the Copy Value of function from the Attributes area. It is a simple list of all possible values. The submenu is filled with all attribute names that are valid for the currently loaded object.
<copy_attributes>
<attribute name="id" />
<attribute name="name__v" />
<attribute name="document_number__v" />
<attribute name="filename__V" />
</copy_attributes>
This chapter describes only the basic principle of the Object Navigator configuration. There are many more examples to be found in the ObjectNavigator.xml.
There are two ways to compare data:
The Compare data function from the Extras menu enables you to compare different data lists, for example DQL query results with other VQL query results or with imported data lists.
The Object Compare List enables you to add single objects of any type, from any repository. These objects are compared attribute by attribute and you can modify them directly in the list.
This function is only available if at least two different data lists are open. These can be results from DQL queries from any repository or imported data lists. The assistant is described in the following sections:
First, select the two different data lists to compare from the dropdown menus. Subsequently, the comparison function is determined. The following functions are available:
Function | What It Does |
---|---|
You can customize the comparison using the options Compare case sensitive (which compares case sensitive occurrences) and Compare exact order of repeating attributes (repeating attributes can have the same values, but in different order).
The two data lists must allow correlation of the data records. At least one column of the source data list must be joined to one column of the target data list. These operations are performed in the second page of the assistant.
To join to columns, select the columns in both lists and click the button Join or drag-and-drop the desired columns onto the opposite list. To delete a join, use the context menu of the Selected Columns grid.
Selecting Search for different records causes the comparable columns to be defined additionally, which you can do using the Compare button or by pressing the Ctrl during the drag-and-drop of one column onto the opposite list.
The search is then performed for objects that can be joined by all Joins to columns, but that differ in the Compare to columns.
The results of the comparison are displayed on the last page.
The number of found data records can differ for both lists, since the criteria can be fulfilled by more than one data record.
The result of the compare operation are displayed in the corresponding data lists. All found records are marked as such. If the function Search for different records was executed, the rows with differences are highlighted.
The marks remain until either a new VQL query is executed in the session window, a new data compare is run or the marks are removed manually using the respective function from the context menu.
You can process marked records as a group, similarly as selected data records. Object functions, export functions and the Script Generator support marked records.
To execute a function for all marked records, you must select exactly ONE cell of any marked record and start the function. Selecting more than one cell or an unmarked cell causes the function to be be executed for the selected objects/cells only.
If the compare is executed using the Search for identical records or Search for different records functions, the rows in the two grids are linked to each other. Use center mouse click on a marked record in one list to scroll the other list to the corresponding record.
If more than one record from one list is linked to a single record in the other list, repeated mouse clicks on the single record will loop through all linked records successively.
If a Search for different records is executed, the function Add to Compare List will add the selected object and all the corresponding objects to the Object Compare List in one go if only one object is selected. The Object Compare List will be cleared first.
In the Object Compare List you can add single objects of any type, from any vault, for example a demo
object from vault A could be compared with a demo1
object from vault B.
To add objects from the VQL query result list, call the Add to Compare List function from the context menu. There can be only one Object Compare list. All objects will be added to the same list which is automatically created when the first object is added. Closing the list removes all objects.
The attributes are aligned vertically. The object in the first column is the master object. All other objects are compared to the master object and differences are highlighted. Differences in single values of repeating attributes are displayed in red font color.
To change the master object, drag the new master object to the first column. If different object types are compared, attributes that are invalid for the object type remain grey and empty.
You can refresh the values of a column and remove an object from the comparasion.
The context menu of the list offers additional functionalities, as follows:
In dqMan Veeva Vault Edition Edit, Synchronize with master and Dump Object work on documents only.
Normally, you can only add one instance of an object to the list. If an object is sent to the list a second time, the list entry is updated without adding the object a second time.
Sometimes it is useful to follow the changes of an object throughout its process. Therefore, you can freeze an object by clicking the button in the header of the object.
You cannot update or modify frozen objects.
This section provides information about the third party open source libraries used in dqMan. Provided bellow are the library names, the license under which they are being used and links to the specific version being used.
Library | License Type | Details |
---|
In the VQL View, you can execute single VQL queries.
To execute a VQL query, do one of the following:
Press F9 or Shift+Enter.
Go to the Edit menu>Run.
Click Run on the context menu.
Click the Run button on the toolbar.
Other actions you can perform in the VQL View:
Double-click a cell in the result grid to copy the value on the clipboard. Press Ctrl when double-clicking to insert the cell value into the code editor at the current cursor position. The latter can also be performed on the result grid's column headers to insert the respective column names as attribute names at the cursor position.
Double-click the messages in the status bar to copy them to the clipboard. Move the mouse cursor over the status bar to display the current message in a tooltip, if it does not fit into the message bar area.
You can see information about the latest executed action and the query result in the Messages area.
The status bar displays the complete execution time of the query, including the transfer of the query results to dqMan. The pure server response time without data transfer is labeled as Server response time.
You can enter one or several VQL queries in the SQL Query input area. When executing the query, all the content in the input area is regarded as one query and transferred to the Veeva Vault for execution. However, if only a part of a query is selected, then only this part is executed.
Use semicolons as separators for two or more queries. Setting the text cursor on one query selects this query for execution.
Moreover, you can add comments. Every line beginning with --, # or // characters is regarded as a comment line.
A number of syntax assistance functions supports the creation of VQL queries:
Command syntax: Click a VQL command and wait for the hint to view the correct command syntax.
Auto completion: Several dynamic values, such as object names, query targets, VQL functions and so on, or allowed function values are faded in automatically in the form of a selection list. You can copy the values from selection lists by pressing Enter.
You can manually activate the selection list anywhere in the command area by pressing Ctrl+Space. The list is filled context dependent with the likely values at the current position. If none of the pre-defined lists applies, the list is filled with the possible attribute names.
The Results list contains the data returned by the previously executed VQL statement.
Use your mouse to resize the columns and rows and reposition the columns in the Results list.
To search through the entire table, go to Edit menu>Search. Typing one or several initial letters within one column will scroll to the first matching value.
You can right-click the desired Results list column head and select to sort it alphabetically. Clicking an item to scroll the column into the visible range of the list.
On the data area, a list of functions is faded in for object processing. Available functions are:
Edit Starts the Results List Inline Editor.
Copy This function copies the selected values to the clipboard. Rows will be separated with a linefeed and a carriage return character; columns will be separated with tabs.
Copy with Header This function copies the selected values to the clipboard, including the header names of the selected columns in the first line. Rows will be separated with a linefeed and a carriage return character; columns will be separated with tabs.
Duplicate Duplicate copies all selected values in a separate data grid.
Add to compare list The selected objects are added to the Object Compare list.
Sort Sorts the result data ascending or descending by the selected column.
Goto... Enables the fast change to a line or a column for the Results list. Entering a number enables vertical scroll, entering a column header or selecting one from the will enables horizontal scroll.
Marks Used to select different objects in the Results list. You can toggle or scroll marks to the next or previous marked object. Marks are mainly used by the Compare Data function, but can also be set manually.
Export to Exports the selected cells of the Results list to CSV or Microsoft Excel (you need to have Excel installed to be able to export to this format). You cannot export data to Excel if a remote Office 365 installation is used; if this is the case, use the Copy with Header command.
Dump Dump the select document or object. Available only when id field is displayed in the grid.
View file content Opens the content of the selected document. Available only when id field is displayed in the grid.
View Renditions Opens the last version of rendition of the selected document. Available only when id field is displayed in the grid.
View Attachments Opens a list of attachments where you can choose from. Available only when id field is displayed in the grid.
Delete Selected Version Deletes the selected version of the document. This option is present only when all fields required for identifying a version are displayed in the grid: id, major_version_number__v, minor_version_number__v,
Delete All Versions Deletes all versions of a document.
Open in Veeva Opens the Veeva UI in the browser and navigates to the selected object
You can edit values directly in the Results list, if the results contain the id
attribute.
Press Enter to save any changes.
Pressing Esc or moving the focus to any other control will close the editor without saving.
Single Attributes For single attributes, a standard input field will be created in the corresponding cell of the grid. Some attributes display a list with possible values.
Repeating Attributes You can modify Repeating Attributes within a small sub grid. The sub grid offers an own context menu for inserting, deleting or reordering values of the repeating attribute.
Multiple Single Attributes If the Results list contains more than one result, you can edit a single attribute of multiple objects simultaneously. Select more than one value in a column and start the editor. The values you enter are applied to all the selected objects.
Multiple standalone or linked repeating attributes You can also modify standalone or linked repeating attributes of more than one object at the same time, if the selection is extended to more than one object (line) in the result grid. The values you enter are applied to all the selected objects.
You can filter query results by the queried values using the attribute filter, which can be open for each column. You can combine filters and use them for multiple columns using an “and” operation.
To open an attribute filter for a column, click the button in the column header and then, in the filter dialog box, you can see the filter options depending on the column data type.
Click Apply Filter to activate the filter after selecting the filter options. If a filter is active, the filter button in the column header and the row numbers are highlighted.
Additionally, all filter buttons in column headers have a context menu.
The Message Area logs the executed VQL commands and their results. The context menu offers some settings to influence the behavior:
You can activate the Message Area from the View menu.
You can format VQL queries automatically. The associated format templates are defined in the file FormatTemplates.xml.
To format a query, click on the query in the VQL input area and select the function Auto Format Query from the context menu of the VQL input area.
The Query:
Select id, name__v, binder__v, created_by__v from documents
where binder__v = true order by id;
Will be formatted to:
SELECT
id,
binder__v,
created_by__v
FROM
documents
WHERE
binder__v = true
ORDER BY
id
To clear the formatting of a query (unformat), use the Unformat Query function from the context menu. Calling this function removes all tabs, multiple spaces, line feeds and carriage returns from the query, leaving a plain single line query.
Opens the dialog.
History of loaded objects (navigate using the Previous Object and Next Object functions)
Reload button to refresh currently displayed object
Document Version drop-down
Function | What It Does |
---|---|
Function | What It Does |
---|---|
Functionality | What It Does |
---|---|
To stop a running query, click the Stop button on the toolbar.
Click and hold the left mouse button for 1 second on any value representing a valid Veeva id
to load the respective object into the Object Navigator (see ).
Proprietary syntax: Statements using dqMan proprietary syntax elements show a dqMan marker to the left
Function | What It Does |
---|
Function | What It Does |
---|
Copy
Copies the selected value to the clipboard.
Copy value of
(Shortcut) Copies the selected value of the object to the clipboard. For more information, see the Configuration section later in this document.
Edit
Opens an inline editor to modify the selected property value.
Add to Compare List
Adds the current displayed object to the Object Compare List.
Dump
Dumps the current displayed object
View File Content
Available only for documents. It displays the content of the current document
View Renditions
This is available only for documents. It displays all the renditions for the current document.
View Attachments
This is available only for documents. It displays all the attachments for the current document.
Delete Version
This is available only for documents. This deletes the currently displayed version of a document.
Delete ALL Versions
This is available only for documents. This deletes all versions of a document.
Open in Veeva
It opens the Veeva UI in the browser and navigates to the selected object
Attributes
Orders the attribute in alphabetical order.
by Objecttype
Orders the attribute by type hierarchy.
by Category
(Classical dump) Orders the attribute by category.
Search for identical records
Searches for identical records in both lists.
Search for missing records
Searches for missing records in both lists.
Search for different records
Searches for records that are joined by one or more columns but differ in other attributes.
Edit
You can modify the values directly inside the table. A change is stored only after pressing Enter. You can modify repeating attributes inside a small sub-grid, which provides its own context menu for inserting, deleting or reordering values of the repeating attribute.
Copy
Copies all selected cells into the clipboard.
Dump Object
Dumps any valid object ID in the selected cell.
Goto…:
Searches for attributes in the list.
Show Attributes
All: Displays all attributes of all object types in the list. Master: Displays all attributes of the master object. Type specific: Displays type specific attributes of the master object type only. Identical values: Displays all attributes with identical values in every column. Different values: Displays all attributes with a different value in any column.
Compare settings
Compare case sensitive: Compares case sensitive. Exact order of repeating attributes: Repeating attributes can have the same values, but in different order.
Order Attributes by
Name: Sorts attributes by name Category: Sorts attributes by category, such as an object dump Not sorted: Attributes are displayed in content server generated order.
Synchronize with master
This functions enables you to copy values from the master object to compared objects. If any range of values is selected within the area of compared objects, all selected attributes (lines) will be copied to all selected objects (columns) of the list.
Modify Filter | Opens the filter dialog box. |
Clear Filter | Clears the selected filter and updates the list. |
Filtered Columns | Displays the list of all active filters in the list. Select a column to scroll the list down to the corresponding column. |
Show marked objects only | Limits the filter to the marked objects, for example after using Compare Data function. |
Clear all OTHER Filter | Clears all other filters except for the selected one. |
Clear ALL Filter | Clears all filters. |
Copy | Copies selected text to clipboard |
Clear | Clears message Area |
Settings / Auto Clear Log | Clears the Message Area before executing a query (this setting is ignored for auto repeated query). |
Settings / Log Query Results | Besides messages, VQL results will also be logged in the Message area. |
Settings / CSV Format for Query Results | Results of VQL queries will be logged in CSV format. |
Settings / Fixed Width for Query Results | Results of VQL queries will be logged as list with fixed width. Values can be truncated if too long. |
Word Wrap | Toggles word wrap |
TTextEditor control for Delphi | MIT License |
dqMan has a globally available search functionality which can be used in almost any place where text is presented to the user in some form (any type of code or script editor, object dump, tables/grids, logs/command output messages, text files opened for viewing inside dqMan, etc.)
Click Edit menu>Find (or press Ctrl+F) or Find next (or press F3).
Enter the desired search parameters in the Search for dialog box or select one from the list. Select whether the search items must be Case sensitive and whether you want to run search across Rows or Columns.
Click Search. To count all occurrences, click Count.
Once logged in, you can work in the Session Window in any of the following editors/views:
VQL: edit & run VQL queries
MDL: edit & run MDL statements and scripts
You can switch anytime between these views using the above toolbar buttons or the View menu. Changing the view does not delete any existing commands or results in other views; moreover, during script debugging, you can execute commands in other views without stopping the debug process.
You can use the below toolbar buttons to execute your VQL queries/MDL commands/scripts. It is possible to run/step into/pause/stop VQL queries/MDL scripts.
Note that some of the above commands may not be available depending on the type of code being executed and/or if execution times are too short for the user to interact with the buttons during runtime.
You can import data (not documents) from external sources into a repository using the import function. A data import takes place in two stages. First the data is loaded into a dqMan data grid, then the data is processed using the script generator.
The Import function is available in the Extras menu. In the File Open dialog box, you can select Excel files, CSV or text files.
Depending on the selected file type, you will be helped by the import assistants, as you can see later in this document.
Function | Description |
---|---|
You can also import data directly from the clipboard, if the data is of type text. Calling this function opens the CSV import assistant.
Header line
Line number with column headers, enter 0 for none.
Start row
Line to import from.
End row
Line to import to.
Separator
The character that separates the data columns. Valid are Tab, Semicolon, Comma or any free combination of characters, as well as the Fixed Width option.
Options
Remove leading and trailing blanks - Removes all surrounding blanks. Remove leading and trailing apostrophes – Removes apostrophes. Pool separators – Combines several sequential separators into one. Ignore empty lines – Does not import lines with no data.
Preview
The preview shows how the selected options affect the import result. The number of lines displayed as preview is limited to 25.
Go to the Extras menu>Options to adapt the features and functionalities of dqMan.
The last open category is saved when leaving the options dialog and restored on the next visit.
The General category has four subsections:
Setting Name | What It Does |
---|---|
Object Functions and the VQL favorites are stored locally, therefore every instance of dqMan uses its own data. However, Favorites can be shared if the full paths to the shared favorite files are supplied. The XML files which contain the favorites and Object Functions (Favorites.xml) need to be copied to a network drive for sharing. If the shared files are not available, local versions will be used instead.
You can add and manage links to documents, URLs or program files to the Documentation menu using the function bar:
When utilizing the "describe" command on an object or document, you have the option to select and display specific attributes of your preference in the results list.
In the Vault Navigator, you can manage the Objects Hierarchy behavior.
Option | What It Does |
---|---|
Function Bar Element | What It Does |
---|---|
Setting | What It Does |
---|---|
Command | How It Affects |
---|---|
Command | How It Affects Grid Colors |
---|---|
Objects | What It Does |
---|---|
Setting | What It Does |
---|---|
Open session at startup
Automatically opens a session window at start up. Select the start view from the Start with list.
Restore last executed query from history
Restores the last executed VQL query from the history.
Show toolbar
Displays the toolbar.
Show tabs for open windows
Displays an additional toolbar with buttons for all open windows.
Always open/update "Compare Objects" tab in background
Whether or not to bring the comparison window to the foreground when adding a new object.
Save History Data
Saves VQL and MDL history data on local disk for later use. History size limits the size to the selected value. This limit is valid per session window.
Autosize row heights
Auto resizes the cells in the history list to Max Rows lines, if multi-line commands are displayed.
Read Timeout (s)
Specifies the response reading timeout for the REST API request.
Session Timeout (s)
The keep_alive requests are executed at the specified interval.
API version
Select the API Version.
Save login info
Saves the login information, either with or without password. If the option always show next unused login is activated, the login dialog initializes with the credentials used for the most recent login.
Order login history by
Sorts the displayed order of saved logins in the login history.
Edit history
Modify the saved logins in the login history.
VQL syntax help
Enables syntax help for VQL commands and functions.
Auto indent
Indents the cursor in new lines. Leading tabs and spaces will be copied from the proceeding line.
Restore column order and width
If the names and number of columns are not changed, the VQL result list settings (column width, column order and visible columns) will not change if VQL queries are executed again.
Move focus to VQL Result List after query execution
Moves the focus to the VQL Result grid if the query was successfully executed; If cleared, the focus remains in the VQL area.
Autosize columns
Column widths are adapted to the length of the represented data, with the limitation defined in the Max. Characters field.
Autosize rows
Row heights are adapted to the maximum number of lines of repeating attributes, with the limitation defined in the Max. Rows field. This option does only apply if the VQL query contains repeating attributes and their values are separated by carriage return.
Results grid
Maximum number of rows load in the Results grid when executing a query. Over this limit the user is warned so he can decide if all rows will be loaded.
Cached objects records
The number of records per object that will be cached when object data is loaded in the Object Navigator
Separate repeating attributes
Values of repeating attributes can be separated by comma/semicolon/carriage return/tab/custom string.
Enclose single values with
Encloses values of repeating attributes with single/double quotes or with no character at all if nothing is selected.
Font Name & Font size
You can change the font and its size.
Auto-complete
Auto-complete code completion. If disabled, use CTRL + Space for manual code completion.
Number of lines in code completion list
The autocomplete suggestions window displays the selected number of lines. If the list contains more than can fit, a scrollbar will be displayed.
Show Line Numbers
Displays or not the number of lines in the editor.
Show Line State
Displays or not the status of the lines in the editor.
Auto-complete Matching Pairs
Automatically completes the open bracket.
Highlight even lines (background)
Background color for even lines.
Marked lines (background)
Background color for marked rows.
Different columns (background)
Background color for cells with different content (from Compare data function)
Autoformat queries
Generated queries from query templates get formatted automatically.
Query templates
Allows to configure the query templates for Document Types and for Vault Objects
Clear script log at restart
Clears the script log area every time a script is executed.
Copy comments to script log
Copies comments in the script to the script log.
Add line numbers to script log
The line number of the command is added to the script log. If line numbers are stored, the context menu function Show command enables you to jump from any line in the log to the corresponding command in the script.
Synchronize log to file
Enables allows copying all log messages into a file. If selected, the user has to choose a target file every time a script is started. If an existing file is selected, the additional content will be appended to the existing file.
Log everything
Logs everything.
Log results only
Only logs results or error messages.
Log errors only
Only logs error messages.
Log nothing
Nothing is logged.
CSV format for query results
(Only valid for VQL script log) Results of VQL queries are logged in CSV format.
Fixed width for query results
(Only valid for VQL script log) Results of VQL queries are logged as lists with fixed width. If too long, the values can be truncated.
Next line
Color of the next script command to be executed (in debug mode only).
Error
Color of an incorrect script command (in debug mode only).
Add item. When entering a URL or program file, type it into the cell manually.
Delete the selected entry.
Add a menu separator
Move selected entry upwards
Move selected entry downwards