# Web Client

## About URL Object Access Support

| The Web Client supports a URL scheme that allows components to generate URLs pointing to specific objects. For example, it allows the Workflow Services Notifier to generate e-mail notifications containing hyperlinks for new and updated work items. To configure a component to generate URLs for the Web Client, you can use one of two methods. The first method generates URLs that identify objects by their record IDs (CIDs). Because record IDs are always unique, this method guarantees a single, unique result. The second method generates URLs that identify objects by their object numbers. For example, in the URL generated for a 2-D drawing, the drawing is identified by its document number.
| ### URL Syntax The Web Client supports the following URL syntax: http://<Agilee6host>/axalant/task<querystring> The way you configure the query string determines whether URLs generated for the Web Client use record IDs or object numbers to identify objects.
| Additionally, you can activate the old URL syntax (http://<Agilee6host>/axalant/load<querystring>) by setting the parameter axalant.web.enable.load to "True"! For further information on how to enable the old URL syntax, refer to the topic "Configure the webplm.properties File" in this guide.
| #### Example for the Oracle Application Server deployment: http://<oas-server-host>:<oas-server-http-port>/WebClient<InstallationName>_web@plmenv/task?-t=OPN-EDB-ARTICLE%28EDB_ID%3D2000001525%29 #### Example for Apache Tomcat deployment: http://<tomcat-host>:<tomcat-port>/webplmenv/task?-t=OPN-EDB-ARTICLE%28EDB_ID%@3D2000001525%29 ### Configuring URLs that use record IDs (CIDs) To generate URLs that identify objects by their record IDs, you configure a query string with the following parameters: record ID, entity name and mask name. The following combinations are supported: ?RECORD=<record-id>&ENTITY=<entityname>&MASK=<maskname> Examples: The following URL opens an item with a record ID of 1183264441 and displays it in the mask EDB-ART-CFR: http://ola:8088/axalant/load?RECORD=1183264441&ENTITY=EDB-ARTICLE&MASK=EDB-ART-CFR For type records an additional parameter TYPE=<typename> can be added to the query string! ### Configuring URLs that use object numbers To generate URLs that identify objects by their object numbers, you configure a query string with the following parameters: ID name, record ID, entity name, and mask name. The following combination is supported: ?IDNAME=<idname>&RECORD=<record-id>&ENTITY=<entityname>&MASK=<maskname> Example: The following URL opens an item with an ID name of T_DOC_DAT.DOCUMENT_ID, a record ID of 010001 and displays it in the mask EDB-ART-CFR: http://ola:8088/axalant/load?IDNAME=T_DOC_DAT.DOCUMENT_ID&RECORD=01001&ENTITY=EDB-ARTICLE&MASK=EDB-ART-CFR As a default for IDNAME "C_ID" is used.
| ### Configuring URLs that use specific object versions
| To generate URLs that identify specific object versions (latest, released etc.), you configure a query string adding the parameter REVISION to the URL parameters ?IDNAME=<idname>&ENTITY=<entityname>&MASK=<maskname>&REVISION=<n|LATEST |RELEASED> The parameter REVISION can have the following values: REVISION=<n | LATEST | RELEASED> n = This will query for a field with a suffix _VERSION with the provided value (REVISION=2) LATEST = This will query for a field with a suffix _VERSION with the largest value. RELEASED = This will query for the latest released version, using the same logic as "version view = production" to determine which record to return. Example: The following URL opens an item with a record ID of 010001 and displays it in the mask EDB-ART-CFR and the latest version: http://ola:8088/axalant/load?IDNAME<idname>&<RECORD>=010001&ENTITY=EDB-ARTICLE&MASK=EDB-ART-CFR&REVISION=LATEST
| ### Configuring URLs that link directly to files (only available for Documents)
| To generate URLs that link directly to a file associated to an Agile e6 document add the URL parameter FILEPOS=<filepos> . It defines the specific file associated with the given document object. ?IDNAME=<idname>&ENTITY=<entityname>&MASK=<maskname>&FILEPOS=<filepos> Example: The following URL opens a document with a record ID of 010001, displays it in the mask EDB-DOC-CFR and opens the file associated to the document: http://ola:8088/axalant/load?IDNAME=<idname>&RECORD=010001&ENTITY=EDB-DOCUMENT&MASK=EDB-DOC-CFR&FILEPOS=30
| Since the position number of a file doesn't guarantee a clear identification, the parameter FILEPOS=<T_FILE_DAT.C_ID should be used instead of the parameter FILEPOS=<T_DOC_FIL.POS_NO> when searching for a file!
| ### URL based file checkout
| For the URL based file checkout a LGV procedure can be configured with the parameter axalant.web.file_checkout_usx in order to set up a mechanism to check the file access rights. This parameter must be configured in the webplm.properties file. The procedure to call the check mechanism will be called as select userexit with lgv_sel_run to check the file. In the procedure the userexit xfile_cko_res must be called to check out the file. Example: axalant.web.file_checkout_usx=WebTools/checkoutFile() LGV Procedure must contain the call of xfile_checkout_res … … 70 RES = @xfile_checkout_res(“/ROC /DISCPATH=dummy”) …. ….
| ### Using the Wildcard "%25" for Queries
| To generate URLs that allow to search for objects, you configure a query string adding the wildcard "%25" to the URL parameters ?ENTITY=<entityname>&RECORD=<record-id%25>
| ### Restricting the Access to Masks
| The new configuration parameter axalant.web.masks=<regular expression> in the file %EP_ROOT%\epclt\<web environment>shared\classes\webplm.properties allows to restrict the access to masks. Only the masks for URL based access are allowed which match the regular expression. Example: The regular expression axalant.web.masks= EDB-ART-.*|EDB-DOC-.* restricts the access to masks which start with EDB-ART-.* or with EDB-DOC-.*.