<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!--
Copyright (c) 2006 UGS Corp.

All Rights Reserved.

This software and related documentation are proprietary to UGS Corp.
-->
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>DBLOCATE</title>
      <script language="javaScript">
        abridged="false";
        displayConditions=new Array();
      </script>
      <link type="text/css" href="../css/main_styles.css" rel="stylesheet">
   </head>
   <body class="bodydocs" onload="top.pageLoader()" bgcolor="#FFFFFF">
      <hr noshade="true">
      <div class="title_refTopic" id="xps10_pagetitle">DBLOCATE </div>
      <hr noshade="true">
      <h4 class="refClassification">Attaches Secondary Databases </h4>
      <p class="para_refTopic">Obtains data blocks or parameters from prior versions of the primary database, or other databases.  DBLOCATE may also be used to compress the primary database and to migrate databases created in prior NX Nastran versions. </p>
      <div class="title_refCategory">Format: </div>
      <div class="refCategoryContent">
         <p align="center"><img align="bottom" src="graphics/fms-ufig11.gif"></p>
      </div>
      <div class="title_refCategory">Example: </div>
      <div class="refCategoryContent">
         <ol type="1" start="1">
            <li>
               <p class="para_item">Locate in version 4 of MASTER3 all data blocks named KAA for all superelements with IDs greater than 0. </p>
               <table width="100%" align="center">
                  <colgroup span="1">
                     <col span="1" width="18*">
                     <col span="1" width="80*">
                  </colgroup>
                  <tbody>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">DBLOCATE</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">DATABLK=(KAA) WHERE(PROJECT=&rsquo;FRONT 
BUMPER&rsquo;  ,AND SEID&gt;0 AND VERSION=4) LOGI=MASTER3</pre></td>
                     </tr>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">ASSIGN</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">MASTER3=&rsquo;physical file name of master 
DBset&rsquo;</pre></td>
                     </tr>
                  </tbody>
               </table><br></li>
            <li>
               <p class="para_item">Copy all data blocks and parameters from the last version of MASTER3 to the primary database.  For all items with the qualifier SEID, change the SEID to twice the old ID number. </p>
               <table width="650" align="center">
                  <colgroup span="1">
                     <col span="1" width="17*">
                     <col span="1" width="80*">
                  </colgroup>
                  <tbody>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">DBLOCATE</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">CONVERT(SEID=2*SEID) COPY LOGI=MASTER3</pre></td>
                     </tr>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">ASSIGN</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">MASTER3=&rsquo;physical file name of master 
DBset&rsquo;</pre></td>
                     </tr>
                  </tbody>
               </table><br></li>
            <li>
               <p class="para_item">Compress a database with multiple versions.  All versions under the current project-ID (see PROJ statement) will be copied from the database OLDDB to NEWDB. </p>
               <table width="670" align="center">
                  <colgroup span="1">
                     <col span="1" width="20*">
                     <col span="1" width="79*">
                  </colgroup>
                  <tbody>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">ASSIGN</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">MASTER3=&rsquo;physical filename of new 
master DBset&rsquo; </pre></td>
                     </tr>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">ASSIGN</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">OLDDB=&rsquo;physical filename of old master 
DBset&rsquo;</pre></td>
                     </tr>
                     <tr>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">DBLOCATE</pre></td>
                        <td align="left" colspan="1" rowspan="1" valign="top"><pre class="indent">LOGI=OLDDB COPY WHERE(VERSION=*) ,
CONVERT(VERSION=VERSION;PROJECT=PROJECT)</pre></td>
                     </tr>
                  </tbody>
               </table><br></li>
         </ol>
      </div>
      <div class="title_refCategory">Describers:</div>
      <div class="refCategoryContent">
         <table cellpadding="10" width="100%" align="center">
            <colgroup span="1">
               <col span="1" width="22.93*">
               <col span="1" width="77.07*">
            </colgroup>
            <thead>
               <tr>
                  <th align="left" colspan="1" rowspan="1">
                     <p class="para_th"><b class="uiTerm">Describer </b></p>
                  </th>
                  <th align="left" colspan="1" rowspan="1">
                     <p class="para_th"><b class="uiTerm">Meaning </b></p>
                  </th>
               </tr>
            </thead>
            <tbody>
               <tr>
                  <td align="left" colspan="1" height="124" rowspan="1" valign="top">
                     <p class="para_td">datablk-list </p>
                  </td>
                  <td align="left" colspan="1" height="124" rowspan="1" valign="top">
                     <p class="para_td">Specifies a list of data blocks separated by commas.  The default is *, which selects all data blocks.  The located data block may be renamed in the primary database by specifying a slash after the old name followed by the new name.  For example, if KLL is to be renamed to KLL1, then DATABLK = (KLL/KLL1) is specified. </p>
                  </td>
               </tr>
               <tr>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">param-list </p>
                  </td>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">Specifies a list of parameters separated by commas.  The default is *, which selects all parameters.  The located parameter may be renamed in the primary database by specifying a slash after the old name followed by the new name.  For example, if LUSETS is to be renamed to LUSET, then PARAM=(LUSETS/LUSET) is specified. </p>
                  </td>
               </tr>
               <tr>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">where-expr </p>
                  </td>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">A logical expression that specifies the desired values of qualifiers, PROJECT, VERSION, and DBSET.  For example, WHERE(VERSlON=4 AND SEID &lt; &gt; 2 AND SEID &gt; 0) selects all items under version 4 for all values of SEID greater than 0 except 2.  See the beginning of this section on WHERE and CONVERT clauses. </p>
                     <p class="para_td">The default for VERSION is the last version-ID and PROJECT is the current project-ID.  The default for qual is *, which is all qualifier values found on the located database.  See also Remark <a class="links" href="javascript:void(0)" onclick="top.openFile('QRG/03ref33329_16.html#refnGvi5djuli');return(false);">25-9. </a></p>
                  </td>
               </tr>
               <tr>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">convert-expr </p>
                  </td>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">Modifies the values for PROJECT, VERSION, DBSET, and qualifiers selected by the where-expr.  The format of convert-expr is: </p>
                     <p class="para_td">PROJECT=project-expr; VERSION=version-expr; DBSET=DBset-name; quali=qual-expri[;...] </p>
                     <p class="para_td">For example, CONVERT (SEID=100+SEID; SPC=102).  See the beginning of this section on WHERE and CONVERT clauses. </p>
                     <p class="para_td">The default action for VERSION and PROJECT is to convert to the current version-ID and current project-ID.  But if either PROJECT or VERSION is specified in the convert-expr, then both must be specified.  See Example <a class="links" href="javascript:void(0)" onclick="top.openFile('QRG/03ref33329_16.html#ref48267');return(false);">25-3. </a> The default action for qualifiers and DBSET is to use the same values as long as both databases have the same NDDL scheme.  If not, see Remark <a class="links" href="javascript:void(0)" onclick="top.openFile('QRG/03ref33329_16.html#refnGvi5djuli');return(false);">25-9. </a></p>
                  </td>
               </tr>
               <tr>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">dbname </p>
                  </td>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">Specifies the logical name of the master directory DBset of the located database.  dbname must be specified on an ASSIGN statement, which references the physical file name.  By default, the located database is also the primary database.  (If dbname is specified for the primary database, then dbname must be MASTER.) </p>
                  </td>
               </tr>
               <tr>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">OVRWRT</p>
                     <p class="para_td">NOOVRWRT </p>
                  </td>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">By default, duplicate data blocks or parameters on the located database will take precedence over those on the primary database.  A duplicate means that a data block or parameter has not only the same name but also the same qualifier values, PROJECT, VERSION, and DBSET as the data block or parameter on the primary database.  If NOOVRWRT is specified, then a fatal message is issued. </p>
                  </td>
               </tr>
               <tr>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">COPY </p>
                  </td>
                  <td align="left" colspan="1" rowspan="1" valign="top">
                     <p class="para_td">Requests that the located data blocks or parameters be copied to the primary database. </p>
                  </td>
               </tr>
            </tbody>
         </table><br></div>
      <div class="title_refCategory">Remarks: </div>
      <div class="refCategoryContent">
         <ol type="1" start="1">
            <li>
               <p class="para_item">The DBLOCATE statement and its applications are discussed further in <a class="links" href="javascript:void(0)" onclick="top.popUpPage('User/index.html?goto=User/18ref15962_1.html&vars=-aux,-home','linkInter','menubar=yes,status=yes,resizable=yes,toolbar=yes,scrollbars=yes,location=no,directories=no');return(false);">&ldquo;Database Concepts&rdquo; in the <em>NX Nastran User&rsquo;s Guide</em></a>. 
               </p>
            </li>
            <li>
               <p class="para_item">If the DATABLK keyword is specified and PARAM is not specified, then only data blocks may be located.  If the PARAM keyword is specified and DATABLK is not specified, then only parameters may be located.  If neither DATABLK nor PARAM is specified, then all data blocks and parameters may be located. </p>
            </li>
            <li><a name="ref48267"></a><p class="para_item">The DB keyword is equivalent to DATABLK, and the PARM keyword is equivalent to PARAM. </p>
            </li>
            <li>
               <p class="para_item">If more than one DBLOCATE statement is specified, then the statements will be processed in the order in which they appear.  If a duplicate data block or parameter is found on two or more different DBLOCATE statements, then the last duplicate will be used. </p>
            </li>
            <li>
               <p class="para_item">If the located database is not the primary database, then it is attached for read-only purposes.  In other words, items can only be fetched and not stored on the located database. </p>
            </li>
            <li>
               <p class="para_item">If the RESTART FMS statement is also specified, then located data blocks and parameters are treated as if they exist in the restart version.  In other words, restart equivalences will be made on located items at the beginning of the run and can be subsequently broken as a result of regeneration and/or NDDL dependencies. </p>
            </li>
            <li>
               <p class="para_item">If a data block or parameter is being renamed, then the new name must be defined in the NDDL of the primary database. </p>
            </li>
            <li>
               <p class="para_item">If LOGICAL refers to the primary database and one version is to be copied to another, then the items are equivalenced. </p>
            </li>
            <li><a name="refnGvi5djuli"></a><p class="para_item">If the located database and the primary database have different NDDL schemes and CONVERT is not used, then the following is performed: </p>
               <ul>
                  <li>
                     <p class="para_item">If a qualifier in the NDDL of the located database is not in the NDDL of the primary database, then all of its values are converted to the null value corresponding to its type.  For example, if the qualifier is integer, real, double precision, complex or character, then the value is converted to 0, 0., 0.D0, (0.,0.), or blank, respectively.  If this conversion results in a duplicate data block(s) or parameter(s), then a User Warning Message is printed and the duplicates are not located. </p>
                  </li>
                  <li>
                     <p class="para_item">If a dbset-name in the NDDL of the located database is not in the NDDL of the primary database, then its values will be converted to the PARAM default value in the NDDL of the located database. </p>
                  </li>
               </ul>
            </li>
         </ol>
      </div>
   </body>
</html>
