Referencia para los vínculos de bases de datos externas

Puede usar los siguientes identificadores de Autodesk Navisworks en consultas SQL:

Identificadores de propiedades

%prop("categoría","propiedad")

La propiedad del objeto seleccionado actualmente. La categoría es el nombre de la ficha de la ventana Propiedades (por ejemplo, Elemento o Identificador de propiedad) y la propiedad corresponde al nombre de propiedad que aparecerá en esa ficha (por ejemplo, Valor o Capa).

%intprop("categoría","propiedad")

La propiedad del objeto seleccionado actualmente. Es igual que el identificador anterior, salvo que en lugar de utilizar la categoría y el nombre de propiedad visibles, utiliza los nombres internos de Autodesk Navisworks. La ventaja de utilizar nombres internos es que no dependen de ningún idioma. Es un identificador avanzado adecuado para usuarios familiarizados con la API de Autodesk Navisworks.

Identificadores de archivo y ruta

%sourcepath

Este identificador representa la ruta completa y el nombre de archivo correspondientes al objeto seleccionado actualmente. Incluso si se combina una colección de archivos de modelo en un único archivo NWD, el identificador recuerda la ruta y el nombre de archivo del archivo de modelo original.

%currentpath

Este identificador representa la ruta completa y el nombre de archivo correspondientes al modelo cargado actualmente. Si ha cargado un archivo NWF o NWD que contiene muchos otros modelos, el archivo devolverá la ruta y el nombre de archivo de los NWF/NWD de nivel superior.

Identificadores de manipulación de archivos y rutas

%removeext("texto")

Si el texto proporcionado incluye un nombre de archivo con una extensión, este identificador elimina la extensión.

%removepath("texto")

Si el texto proporcionado incluye una ruta y un nombre de archivo, este identificador elimina las rutas y devuelve sólo el nombre de archivo.

%poppath("texto")

Si el texto proporcionado incluye una extensión, este identificador elimina el nivel superior. Si el texto incluye también un nombre de archivo, se considera de nivel superior y se elimina. Por ejemplo, %poppath(“c:\temp”) pasa a ser c:\ y %popath(c:\temp\readme.txt”) pasa a ser c:\temp.

%pushpath("texto1","texto2")

Si texto1 es una ruta y texto2 es el nombre de un archivo o de una carpeta, texto2 se añadirá a la ruta de texto1. Por ejemplo, %pushpath(“c:\test”,”model.nwd”) pasa a ser c:\test\model.nwd.

Identificadores de manipulación de cadenas

%join("texto","texto")

Este identificador se encarga simplemente de unir dos trozos de texto. Por ejemplo, %join(“c:\”,”model.nwd”) devuelve c:\model.nwd.

Ejemplos de consultas

Los ejemplos siguientes ilustran cómo deben utilizarse los identificadores en consultas SQL.

  • Para seleccionar todas las columnas de la tabla Prueba al mismo tiempo que se solicita que la columna denominada Identificadores de entidad coincida con el par de categoría/propiedad denominado Identificador de entidad/Valor y que la columna Nombre de archivo coincida con el nombre de archivo original del dibujo:

    SELECT * FROM Prueba WHERE "Identificador de entidad" = %prop("Identificador de entidad","Valor") AND “Nombre de archivo” = $removeext(%removepath(%sourcepath));

    En este ejemplo la ruta y la extensión del archivo se diseccionan, de modo que un archivo como c:\model\3rdFloorDucts.dwg daría como resultado 3rdFloorDucts.

  • Para seleccionar dos columnas de la tabla Prueba al mismo tiempo que se solicita que la columna denominada Identificador de entidad coincida con el par de categoría/propiedad denominado Identificador de entidad/Valor:

    SELECT Name,Part FROM Prueba WHERE "Identificador de entidad" = %prop("Identificador de entidad","Valor");

  • Para seleccionar todas las columnas de la tabla Prueba al mismo tiempo que se solicita que la columna denominada Valor esté dentro de un intervalo determinado por los dos pares de categoría/propiedad:

    SELECT * FROM Prueba WHERE Valor BETWEEN %prop("Presión","Mínimo") AND %prop("Presión","Máximo");

Nota: Los identificadores no pueden contener un espacio en blanco entre los paréntesis (a menos que el espacio en blancos esté entre comillas), de modo que %prop("Identificador de entidad","Valor") funcione, pero %prop("Identificador de entidad", "Valor") no.