MXPA05005857A - Metodo, sistema y aparato para descubrir y conectarse a fuentes de datos. - Google Patents

Metodo, sistema y aparato para descubrir y conectarse a fuentes de datos.

Info

Publication number
MXPA05005857A
MXPA05005857A MXPA05005857A MXPA05005857A MXPA05005857A MX PA05005857 A MXPA05005857 A MX PA05005857A MX PA05005857 A MXPA05005857 A MX PA05005857A MX PA05005857 A MXPA05005857 A MX PA05005857A MX PA05005857 A MXPA05005857 A MX PA05005857A
Authority
MX
Mexico
Prior art keywords
data
connection
report
store
data source
Prior art date
Application number
MXPA05005857A
Other languages
English (en)
Inventor
Levin Ira
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of MXPA05005857A publication Critical patent/MXPA05005857A/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Hardware Redundancy (AREA)

Abstract

Se proporcionan un metodo, sistema y aparato para descubrir conectarse a fuentes de datos. Se proporciona un sistema que incluye una computadora servidor que opera para mantener un almacen centralmente manejado de definiciones de conexion de datos. Tambien se proporciona una computadora cliente, que incluye un programa de aplicacion capaz de consumir datos de una fuente de datos. Cuando se recibe una solicitud por la aplicacion para conectarse a una fuente de datos, una lista de fuentes disponibles es recuperada de la computadora servidor. Si una de las fuentes de datos en la lista es seleccionada, un archivo de conexion de datos es recuperado y utilizado para conectarse a la fuente de datos. Si se abre un reporte por la aplicacion que incluye una referencia a una fuente de datos, el almacen es utilizado para confirmar la conexion a la fuente de datos.

Description

METODO, SISTEMA Y APARATO PARA DESCUBRIR Y CONECTARSE A FUENTES DE DATOS ANTECEDENTES DE LA INVENCIÓN La generación de reportes es una de las tareas realizadas más frecuentemente por usuarios de programas de aplicación de hoja de cálculo. Con el fin de crear un reporte, frecuentemente es necesario el acceso a una fuente de datos localizada en un sistema de computadora externo. Por ejemplo, con el fin de obtener los datos necesarios para un reporte particular, puede ser necesario acceder datos contenidos en una base de datos remota o un cubo de procesamiento analítico en línea ("OLAP"). Con el fin de acceder a tal fuente de datos, una conexión de red debe ser creada para la fuente de los datos. Para crear tal conexión, es necesario conocer la identidad de la computadora servidor y los datos en los que están contenidos, la identidad de la base de datos dentro de la computadora servidor, y frecuentemente otro conocimiento especifico a bases de datos o tecnologías de datos. En muchos casos, sin embargo, el autor de reporte no tiene rápido acceso a esta información. Por lo tanto, puede ser muy difícil para un usuario localizar y conectarse a una fuente de datos. Una vez que un usuario es finalmente capaz de conectarse a una fuente de datos, la información necesaria para conectarse a la fuente de datos puede ser capturada y guardada en un archivo de conexión de datos para uso futuro. Sin embargo, no hay una forma fácil para que un usuario de computadora comparta un archivo de conexión de datos con una multitud de otros usuarios. Por lo tanto, en muchos casos, cada usuario que necesita acceder a la misma fuente de datos debe localizar o crear independientemente la información necesaria para conectarse a su propia fuente de datos. Esto puede ser frustrante y consumidor de tiempo para cada usuario. Cuando una organización tiene un gran número de analistas que necesitan conectarse a la misma fuente de datos, esto puede acusar un gran conflicto de ineficacia. Cuando los reportes son creados con conexiones a fuentes de datos externas, información es típicamente almacenada dentro del reporte que describe la conexión a la fuente de datos. De esta manera, la conexión a la fuente de datos puede ser reestablecida cuando el reporte es subsecuentemente abierto. Sin embargo, si la ubicación de la fuente de datos cambia o la fuente de datos es inhabilitada, el reporte identificará una ubicación incorrecta u otros parámetros (tal como nombres, nombres de tabla, nombres de catálogo, etc.) para la fuente de datos. Cuando el reporte es abierto, un usuario puede estar confundido como por qué la fuente de datos no está disponible. Más aún, si una organización utiliza un gran número de reportes que hagan referencia a una fuente de datos modificada, podría ser difícil rastrear cada uno de los reportes y modificar los reportes para hacer referencia a la nueva ubicación de la fuente de datos. Reportes que conectan la fuente de datos son inútiles hasta que alguien localiza los reportes y actualiza manualmente las referencias a la fuente de datos. El uso de las fuentes de datos externas también puede ser difícil para administradores de sistema. En particular, administradores de sistema actualmente no tienen una forma para definir centralmente conexiones a fuentes de datos confiadas y hacer las conexiones disponibles a usuarios finales. Más aún, no existe una forma fácil para un administrador de sistema para hacer ciertas fuentes de datos accesibles para un grupo de usuarios y no accesibles para otro grupo de usuarios. Es con respecto a estas consideraciones y otras que las varias modalidades de la presente invención han sido hechas.
COMPENDIO DE LA INVENCION De acuerdo con la presente invención, los problemas anteriores y otros son resueltos por un método, sistema, y aparato para descubrir y conectarse a las fuentes de datos. Utilizando los varios aspectos de la invención, rápido acceso puede ser tenido para la información necesaria para conectarse a una fuente de datos, los datos pueden ser fácilmente publicados y compartidos con otros usuarios, pueden ser modificados en una forma que no requiere un cambio a reportes que utilizan la fuente de datos, y las conexiones de fuente de datos pueden ser fácilmente administradas desde una ubicación central.
De acuerdo con un aspecto de la presente invención, se proporcionan un sistema para ayudar en el descubrimiento de fuentes de datos disponibles. El sistema incluye una computadora servidor que opera para mantener un almacén centralmente manejado de definiciones de conexión de datos. Cada una de las definiciones de conexión de datos incluye un archivo de conexión de datos que almacena información de conexión para establecer una conexión a la fuente de datos, tal como una dirección de red y una ubicación de base de datos para la fuente de datos. Cada definición de conexión de datos también incluye una de las propiedades de metadatos que describen la conexión. Por ejemplo, las propiedades pueden incluir un nombre, una descripción de texto, palabras clave buscables, instrucciones para obtener credenciales para la fuente datos, y otra información. Conexiones de datos pueden ser agregadas al almacén sólo por administradores u otros usuarios confiados. De acuerdo con otros aspectos de la invención, el sistema también puede incluir una computadora cliente que incluye un programa de aplicación capaz de consumir datos de una fuente de datos. Por ejemplo, el programa de aplicación puede comprender un programa de aplicación de hoja de cálculo que utiliza datos de una fuente de datos al realizar análisis financiero. El programa de aplicación opera para proporcionar una inferíase de usuario mejorada para localizar conexiones de datos. De acuerdo con este aspecto de la invención, una solicitud puede ser recibida, tal como de un usuario, para crear una conexión a una fuente de datos.
Cuando tal solicitud es recibida, la aplicación es operativa para transmitir una solicitud a la computadora servidor para una lista de fuentes de datos disponibles. En respuesta a recibir una solicitud de la aplicación para una lista de fuentes de datos disponibles, la computadora servidor opera para buscar el almacén para fuentes de datos disponibles. De acuerdo con aspectos de la invención, la búsqueda puede estar limitada a fuentes de datos para las que un usuario del programa de aplicación tiene privilegios seguros o limitados a fuentes de datos que tienen metadatos que se ajustan a términos de filtro proporcionados por el usuario. Cuando una o más fuentes de datos han sido identificadas dentro del almacén, la computadora de servidor responde a la solicitud de la aplicación de cliente con una lista de fuentes de datos que se ajustan. El programa de aplicación además opera para presentar a un usuario la lista de fuentes de datos disponibles. La lista de fuentes de datos puede ser almacenada y filtrada basándose en metadatos asociados con cada fuente. Cuando un usuario proporciona una selección de una de las fuentes de datos para conectarse a ella, el programa de aplicación transmite una solicitud a la computadora servidor para la información de conexión de datos que corresponde a la fuente seleccionada. En respuesta, la computadora servidor regresa el archivo de conexión de datos. Una vez que el archivo de conexión de datos ha sido regresado a la computadora cliente, el programa de aplicación puede utilizar los contenidos del archivo para establecer una conexión a la fuente de datos. Después los datos pueden ser recuperados de la fuente de datos y utilizados en cálculos realizados por el programa de aplicación. Cuando un reporte es guardado por el programa de aplicación, una referencia puede ser guardada dentro del reporte para el archivo de conexión de datos. En particular, un enlace puede ser guardado dentro del reporte para el archivo de conexión de datos localizado en la computadora servidor. El archivo de conexión de datos también puede ser fijado dentro del reporte. Cuando un reporte que incluye una referencia a una fuente de datos es subsecuentemente abierto por el programa de aplicación, una determinación es hecha como sí la referencia es un enlace o un archivo de conexión de datos fijado. Si la referencia es un enlace, una determinación es hecha como si el archivo de conexión identificado por el enlace está contenido en el almacén de conexión de datos centralmente manejado. Si el archivo de conexión no está en el almacén, el reporte es cargado sin establecer una conexión a una fuente de datos. Si el archivo de conexión no está en el almacén, y la información de conexión es guardad en memoria caché en el reporte, después la información de conexión en el reporte es utilizada para abrir una conexión para la fuente de datos. Si el archivo de conexión está en el almacén, el archivo de conexión es copiado del almacén a la computadora cliente. El programa de aplicación después utiliza el archivo de conexión para abrir una conexión a la fuente de datos y utiliza datos de la fuente de datos dentro del reporte. Si la referencia a una fuente de datos en el reporte es determinada para ser un archivo de conexión de datos fijado, una determinación es hecha primero como si el archivo de conexión de datos también existe en el almacén. Si el archivo de conexión de datos está contenido en el almacén, una determinación es hecha como si la información en el archivo de conexión de datos fijado se ajusta a los datos contenidos en el archivo de conexión de datos almacenado en el almacén. Si los datos se ajustan, los contenidos del archivo de conexión de datos fijado son utilizados para abrir una conexión a la fuente de datos. Si el archivo de conexión de datos no está en el almacén, o si los contenidos del archivo de conexión de datos fijado no se ajusta a los contenidos del archivo de conexión de datos en el almacén, una determinación es hecha como si el reporte es confiado. Si el reporte no es confiado, ninguna conexión es hecha para la fuente de datos. Si el reporte es confiado, los contenidos del archivo de conexión de datos fijado son utilizados para abrir una conexión a la fuente de datos. De acuerdo con otros aspectos de la invención, un programa de aplicación puede ser proporcionado para ayudar a administrar los contenidos del almacén. En particular, definiciones de conexión de datos pueden ser agregadas a o removidas del almacén. Las conexiones de datos también pueden ser modificadas para cambiar cualquiera de las propiedades asociadas, que incluyen la ubicación de la fuente de datos referenciada. Permisos también pueden estar asociados con definiciones de conexión de datos para que sólo ciertos grupos de usuarios, o audiencias, son autorizados para ver la conexión de datos y conectarse a la fuente de datos. La invención también puede ser implementada como un procedimiento de computadora, un sistema de cómputo o aparato, o como un artículo de manufactura tal como un producto de programa de computadora o medio legible por computadora. El producto de programa de computadora puede ser un medio de almacenamiento de computadora legible por un sistema de computadora y que codifica un programa de computadora de instrucciones para ejecutar un procedimiento de computadora. El producto de programa de computadora también puede ser una señal propagada en un vehículo legible por un sistema de cómputo y que codifica un programa de computadora de instrucciones para ejecutar un procedimiento de computadora. Estas y varias otras características, así como ventajas, que caracterizan la presente invención, serán parecidas de una lectura de la siguiente descripción detallada y una revisión de los dibujos asociados.
BREVE DESCRIPCION DE LAS VARIAS VISTAS DE LOS DIBUJOS La Figura 1 es un diagrama de red de computadora que ¡lustra un ambiente operativo para modalidades de la invención; La Figura 2 es un diagrama de base de datos que ilustra la estructura y contenido de un almacén centralmente manejado para definiciones de conexión de datos utilizadas por las varias modalidades de la invención; La Figura 3 es un diagrama de arquitectura de sistema de computadora que ¡lustra un sistema de computadora utilizado en y proporcionado por las varias modalidades de la invención; La Figura 4 es un diagrama de flujo que ilustra un método para descubrir una fuente de datos que utiliza un almacén de conexión de datos; y La Figura 5 es un diagrama de flujo que ilustra aspectos de la invención para cargar y utilizar un reporte que incluye una referencia a una fuente de datos.
DESCRIPCION DETALLADA DE LA INVENCION Haciendo referencia ahora a los dibujos, en los que como números de referencia representan elementos similares, varios aspectos de la presente invención serán descritos. En particular, la Figura 1 y la discusión correspondiente son pretendidas para proporcionar una breve descripción general de un ambiente de cómputo adecuado en el que modalidades de la invención pueden ser implementadas. Mientras la invención será descrita en el contexto general de módulos de programa que se ejecutan en conjunto con módulos de programa que corren en un sistema operativo en una computadora personal, aquellos expertos en la técnica reconocerán que la invención también puede ser implementada en combinación con otros tipos de sistemas de computadora y módulos de programa. Generalmente, los módulos de programa incluyen rutinas, programas, componentes, estructuras de datos, y otros tipos de estructuras que realizan tareas particulares o implementan tipos de datos abstractos particulares. Más aún, aquellos expertos en la técnica apreciarán que la invención puede ser practicada con otras configuraciones de sistema de computadora, que incluyen dispositivos portátiles, sistemas de multiprocesador, aparatos electrónicos basados en microprocesador o programables para el consumidor, minicomputadoras, macrocomputadoras, y similares. La invención también puede ser practicada en ambientes de cómputo distribuidos en donde tareas son realizadas por dispositivos de procesamiento remoto que están conectados a través de una red de comunicaciones. En u ambiente de cómputo distribuido, módulos de programa pueden estar localizados tanto en dispositivos de almacenamiento de memoria local y remoto. Como se muestra en la Figura 1, un número de computadoras puede comunicarse a través de una red distribuida 10, tal como Internet. En particular, una computadora 2 puede estar conectada a Internet que incluye una aplicación de creación de reporte 4 y una aplicación de consumo de reporte 6. La aplicación de creación de reporte 4 comprende un programa de aplicación para crear un reporte de datos. Por ejemplo, de acuerdo con una modalidad de la invención, la aplicación de creación de reporte 4 comprende un programa de aplicación de hoja de cálculo, tal como el programa de aplicación de hoja de cálculo de EXCEL de la CORPORACIÓN DE MICROSOFT. Por ejemplo, un reporte de hoja de cálculo puede ser creado utilizando datos de una fuente de datos externa, tal como la fuente de datos 16. Como se describirá en mayor detalle más adelante, la fuente de datos 16 puede comprender cualquier tipo de bases de datos, incluyendo una base de datos relacional o un cubo de OLAP. De acuerdo con aspectos de la invención, la computadora 2 también puede incluir una aplicación de consumo de reporte 6. La aplicación de consumo de reporte 6 también puede comprender un programa de aplicación de hoja de cálculo tal como programa de aplicación de hoja de cálculo de EXCEL de la CORPORACIÓN DE MICROSOFT. Con el fin de consumir datos, la aplicación de consumo de reporte 6 puede cargar un reporte previamente autorizado que incluye una referencia a una fuente de datos externa. Cuando el reporte es ejecutado, los datos serán recibidos de la fuente de datos externa e incluidos en los cálculos financieros que comprenden el reporte. Se debe apreciar, que la aplicación de creación de reporte 4 y la aplicación de consumo de reporte 6 pueden comprender el mismo programa de aplicación o diferentes programas de aplicación. Más aún, se debe apreciar que la aplicación de creación de reporte 4 y aplicación de consumo de reporte 6 pueden comprender cualquier programa que se conecte a una fuente de datos externa.
Como se muestra en la Figura 1, una computadora servidor 12B también se conecta a la red 10. La computadora servidor 12B opera para proporcionar una entrada a la fuente de datos 16. La computadora servidor 12B también opera para recibir y responder a solicitudes para datos almacenados dentro de la fuente de datos 16. Por consiguiente, la computadora servidor 12B puede operar para ejecutar software de base de datos para proporcionar acceso a los datos contenidos en la fuente de datos 16 a través de la red 10. Tal software de base de datos es bien conocido para aquellos expertos en la técnica. Como también se muestra en la Figura 1, la computadora servidor 12A también está conectada a la red 10. Como se describirá con mayor detalle a través de este documento, la computadora servidor 12A opera para mantener un almacén de conexión de datos 14. El almacén de conexión de datos 14 comprende un almacén centralmente manejado de definiciones de conexión de datos. Cada una de las definiciones de conexión de datos dentro del almacén de conexión de datos 14 incluye un archivo de conexión de datos que almacena datos para establecer una conexión a una fuente de datos, tal como la dirección de red y la ubicación de base de datos para la fuente de datos. Por ejemplo, con referencia a la computadora servidor 12B, el almacén de conexión de datos 14 puede almacenar un archivo de conexión de datos que define la dirección de red de la computadora servidor 12B e información adicional necesaria para conectarse a la fuente de datos 16.
De acuerdo con modalidades de la invención, el almacén de conexión de datos 14 también puede almacenar una o más propiedades de metadatos asociadas con cada archivo de conexión de datos. Las propiedades pueden incluir, por ejemplo, un nombre común por el que la conexión de datos puede ser referida, una descripción de texto de la conexión de datos, palabras clave buscables para la conexión de datos, instrucciones para obtener credenciales para acceder a la fuente de datos, y otra información. De acuerdo con otros aspectos de la invención, la computadora servidor 12A puede recibir y responder a solicitudes para archivos de conexión de datos almacenados en el almacén de conexión de datos 14. Por ejemplo, cuando la aplicación de creación de reporte 4 es utilizada para conectarse a una fuente de datos 16, la aplicación de creación de reporte 4 puede solicitar de la computadora servidor 12A todos los archivos de conexión de datos disponibles para conexión. En respuesta a eso, la computadora servidor 12A puede buscar al almacén de conexión de datos 14 para los archivos de conexión de datos disponibles y regresar una lista de estos archivos a la aplicación de creación de reporte 4. De acuerdo con aspectos de la invención, la búsqueda realizada por la computadora servidor 12A del almacén de conexión de datos 14 puede estar limitada a fuentes de datos para las que un usuario de la aplicación 4 tiene privilegios de seguridad. Alternativamente, la búsqueda del almacén de conexión de datos 14 por la computadora de servidor 12A puede estar limitada a fuentes de datos que tienen metadatos asociados con eso que se ajustan a términos de filtro proporcionados por un usuario de la computadora 2. Cuando una o más fuentes de datos han sido identificadas dentro del almacén 14, la computadora servidor 12A responde a la solicitud con una lista de las fuentes de datos que se ajustan. Una vez que la aplicación de creación de reporte 4 recibe la lista de fuentes de datos disponibles, estas fuentes de datos pueden ser presentadas a un usuario de la computadora 2. La lista de fuentes de datos también puede ser almacenada y filtrada basándose en metadatos asociados con cada fuente. Cuando un usuario de la aplicación 4 selecciona una de las fuentes de datos para conectarse a ella, el programa de aplicación 4 transmite una solicitud a la computadora servidor 12A para el archivo de conexión de datos que corresponde a la fuente de datos seleccionada. En respuesta a eso, la computadora servidor 12A recupera del almacén 14 el archivo de conexión de datos apropiado y regresa a la aplicación de creación de reporte 4. Una vez que el archivo de conexión de datos ha sido regresado a la computadora 2, la aplicación 4 puede utilizar los contenidos del archivo de conexión para establecer una conexión a la fuente de datos 16. Después los datos pueden ser recuperados de la fuente de datos y utilizados en cálculos realizados por el programa de aplicación 4. Cuando un reporte es guardado por el programa de aplicación 4, una referencia puede ser guardada dentro del reporte al archivo de conexión de datos. En particular, un enlace puede ser guardado dentro del reporte al archivo de conexión de datos localizados en la computadora de servidor. El archivo de conexión de datos también puede estar fijado dentro del reporte guardado. Cuando un reporte que incluye una referencia a una fuente de datos es subsecuentemente abierto por la aplicación de consumo de reporte 6, la aplicación puede operar para determinar ci la referencia es un enlace o un archivo de conexión de datos fijado. Si la referencia es un enlace a un archivo de conexión de datos, una determinación puede ser hecha por la aplicación 6 como si el archivo de conexión está contenido en el almacén de conexión de datos 14. Si el archivo de conexión de datos no está en el almacén 14, la aplicación de consumo de reporte 6 cargará el reporte sin establecer una conexión a una fuente de datos. Si, sin embargo, el archivo de conexión de datos está localizado en el almacén 14, el archivo de conexión de datos es copiado del almacén por la computadora servidor 12A a la computadora 2. La aplicación 6 después puede utilizar el archivo de conexión para abrir una conexión a la fuente de datos 16 y utiliza datos de la fuente de datos 16 dentro del reporte. Si la referencia a una fuente de datos en un reporte es determinada para estar en un archivo de conexión de datos fijado, una secuencia de operaciones son realizadas con el fin de determinar si el archivo de conexión de datos fijado debe ser utilizado. La secuencia de operaciones es descrita en mayor detalle más adelante con respecto a la Figura 5. Como se muestra en la Figura 1, la computadora 2 también puede incluir una herramienta de administración para conexiones de datos 8. La herramienta de administración 8 permite a un administrador manejar los contenidos del almacén de conexión de datos 14. En particular, el administrador de sistema puede definir nuevas conexiones, modificar propiedades de conexiones existentes, y especificar grupos de usuarios que deberían ser permitidos para ver conexiones disponibles. De esta manera, ciertas conexiones pueden ser expuestas a ciertos grupos de usuarios mientras otras conexiones no. Se debe apreciar que la herramienta de administración 8 puede comprender una aplicación aislada que se ejecuta en la computadora 2 u otro tipo de ejecución de aplicación en la computadora servidor 12A. Por ejemplo, la computadora servidor 12A puede proporcionar interfase de lenguaje de marcación de híper-texto ("HTML") para manejar los contenidos del almacén de conexión de datos 14. Otros tipos de interfases también pueden ser proporcionados para manejar los archivos de conexión de datos almacenados dentro del almacén de conexión de datos 14. Haciendo referencia ahora a la Figura 2, detalles adicionales con respecto a los contenidos del almacén de conexión de datos 14 serán proporcionados. Como se discutió de forma breve anteriormente, el almacén 14 opera para almacenar archivos de conexión de datos 18A-18N. Los archivos de conexión de datos 18A-18N almacenan los datos necesarios para conectarse a una fuente de datos 16. En particular, el archivo de conexión de datos 18A puede almacenar una dirección de red de una computadora de servidor 12B que aloja una fuente de datos 16. Adicionalmente, el archivo de conexión de datos 18A puede almacenar datos adicionales que identifican la fuente de datos particular 16 disponible en esta computadora de servidor. Otra información también puede ser almacenada en el archivo de conexión de datos 18A necesaria con el fin de obtener una conexión a la fuente de datos 16. De acuerdo con las varias modalidades de la invención, propiedades de conexión de datos 20A-20N también son almacenadas que corresponden a cada archivo de conexión de datos 18A-18N. Como se muestra en la Figura 2, las propiedades de conexión de datos 20A definen metadatos para el archivo de conexión de datos 18A. En particular, de acuerdo con una modalidad de la invención presentada aquí, los metadatos incluyen un nombre amistoso 22A de la conexión de datos, una descripción de texto 22B de la conexión de datos, y una o más palabras clave 22C que pueden ser utilizadas por un usuario de la computadora 2 para buscar una conexión específica. Las palabras clave 22C pueden ser filtradas por la computadora servidor 12A cuando se identifican los archivos de conexión de datos que deben ser regresados a la computadora 2. Los metadatos almacenados dentro de las propiedades de conexión de datos 20A también pueden incluir un campo de tipo 22D que identifica la fuente de datos o tipo de proveedor, tal como OLEDB, ODBC, SOAP, etc. Los contenidos del campo de tipo 22D pueden ser utilizados para determinar si un proveedor asociado es soportado. De acuerdo con modalidades de la invención, un campo de recuperación de credencial 22E también puede ser proporcionado dentro de los metadatos para describir el tipo de credenciales necesarias para acceder a la fuente de datos específicos. Por ejemplo, este campo puede almacenar uno de cuatro valores que indican si el usuario debe ser impulsado por credenciales, si no se requieren credenciales para acceder a la fuente de datos, si las credenciales son integradas, tal como a través del uso del protocolo de autorización de red de Kerberos o si las credenciales están almacenadas en otra ubicación. Con respecto a esto, un campo de texto de impulso 22F puede ser utilizado para especificar el texto presentado para ingresar su número de identificación de empleado y nombre de usuario para las credenciales para acceder a una base de datos. Las propiedades de conexión de datos 20A también pueden almacenar un creado por campo 22G que identifica el usuario que creó el archivo de conexión de datos, un modificado por campo 22H que identifica al usuario que modificó por última vez el archivo de conexión de datos y un modificado en archivo 22I que identifica la última fecha en la que el archivo de conexión de datos fue modificado. Las propiedades de conexión de datos 20A también almacenan el enlace de conexión 22J necesario para establecer una conexión con la fuente de datos 16. El enlace de conexión 22J puede ser copiado de los contenidos del archivo de conexión de datos correspondiente. De acuerdo con modalidades de la invención, las propiedades de conexión de datos 20A pueden almacenar un campo de ID de aplicación de servicio de señal individual ("SSO") 22K, campo de nombre de usuario de SSO 22L, y contraseña de SSO 22M. Los contenidos de estos campos son utilizados cuando el valor del campo de recuperación de credencial 22E es establecido para utilizar credenciales almacenadas. Estos campos identifican el servicio de credencial almacenado y el nombre de usuario y contraseña que deben ser utilizados para obtener acceso a la fuente de datos 16. Se debe apreciar que otros tipos de metadatos pueden ser almacenados dentro de las propiedades de conexión de datos 20A y utilizados aquí. Por ejemplo, otros tipos de metadatos pueden incluir campos de Interrupción de Consulta y Tiempo de Vida de Guardar en Memoria caché Datos (no mostrados), que identifican valores que permiten a la computadora servidor superar grupos por comisión para acomodar grupos específicos a una conexión de datos, y un campo de Ubicación (no mostrado) que almacena el nombre de la computadora servidor para bases de datos. Se apreciará que el campo de Ubicación puede ser útil para la administración de conexiones en la computadora servidor. Los metadatos adicionales para describir una consulta (tal como texto de orden, actualizar, insertar, borrar, y seleccionar) también pueden ser almacenados dentro de las propiedades de conexión de datos 20A. Haciendo referencia ahora a la Figura 3, una arquitectura de computadora ilustrativa para una computadora 2 utilizada en las varias modalidades de la invención será descrita. La arquitectura de computadora mostrada en la Figura 3 ilustra una computadora de propósito general convencional, que incluye una unidad de procesamiento central 24 ("CPU"), una memoria de sistema 26, que incluye una memoria de acceso aleatorio 28 ("RAM") y una memoria sólo de lectura ("ROM") 30, y un conductor común de sistema 32 que acopla la memoria al CPU 24. Un sistema de entrada/salida básico que contiene las rutinas básicas que ayudan a transferir información entre elementos dentro de la computadora, tal como durante el arranque, es almacenado en la ROM 30. La computadora 2 además incluye un dispositivo de almacenamiento de masa 34 para almacenar un sistema operativo 36, programas de aplicación, y otros módulos de programa, que serán descritos con mayor detalle más adelante. El dispositivo de almacenamiento de masa 34 está conectado al CPU 24 a través de un controlador de almacenamiento de masa (no mostrado) conectado al conductor común 32. El dispositivo de almacenamiento de masa 34 y sus medios legibles por computadora asociados proporcionan almacenamiento no volátil para la computadora 2. Aunque la descripción de medio legible por computadora contenida aquí se refiere a un dispositivo de almacenamiento de masa, tal como un disco duro o unidad de CD-ROM, se debe apreciar por aquellos expertos en la técnica que medio legible por computadora puede ser cualquier medio disponible que puede ser accedido por la computadora 2. Como ejemplo, y no limitación, medio legible por computadora puede comprender medios de almacenamiento de computadora y medios de comunicación. Medio de almacenamiento de computadora incluye medios volátiles y no volátiles, removibles y no removibles implementados en cualquier método o tecnología para almacenamiento de información tal como instrucciones legibles por computadora, estructuras de datos, módulos de programa u otros datos. Medios de almacenamiento de computadora incluyen, pero no se limitan a, RAM, ROM, EPROM, EEPROM, memoria instantánea u otra tecnología de memoria de estado sólido, discos versátiles digitales ("DVD"), u otro almacenamiento óptico, cassettes magnéticos, cinta magnética, almacenamiento de disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que puede ser utilizado para almacenar la información deseada y que puede ser accedido por la computadora 2. De acuerdo con varias modalidades de la invención, la computadora 2 puede operar en un ambiente en red que utiliza conexiones lógicas a computadoras remotas a través de una red 10, tal como Internet. La computadora 2 puede conectarse a la red 10 a través de una unidad de interfase de red 38 conectada al conductor común 32. Se debe apreciar que la unidad de interfase en red 38 también puede ser utilizada para conectarse a otros tipos de redes y sistemas de computadora remotos. La computadora 2 también puede incluir un controlados de entrada/salida 40 para recibir y procesar entrada de un número de otros dispositivos, que incluyen, un teclado, ratón, o aguja electrónica (no mostrada en la Figura 1). Similarmente, un controlador de entrada/salida 40 puede proporcionar salida a una pantalla de presentación, una impresora, u otro tipo de dispositivo de salida. Como se menciono de forma breve anteriormente, un número de módulos de programa y archivos de datos puede ser almacenado en el dispositivo de almacenamiento de masa 34 y RAM 28 de la computadora 2, que incluye un sistema operativo 36 adecuado para controlar la operación de una computadora personal en red, tal como el sistema operativo de WINDOWS XP de la CORPORACIÓN DE MICROSOFT de Redmond, Washington. El dispositivo de almacenamiento de masa 34 y RAM 28 también puede almacenar uno o más módulos de programa. En particular, el dispositivo de almacenamiento de masa 34 y la RAM 28 pueden almacenar una aplicación de creación de reporte 4 y una aplicación de consumo de reporte 6. De acuerdo con una modalidad de la invención, estas aplicaciones comprenden el programa de aplicación de hoja de cálculo de EXCEL de la CORPORACIÓN DE MICROSOFT. Se deba apreciar, sin embargo, que otros programas de aplicación de otros fabricantes pueden ser utilizados para representar los varios aspectos de la presente invención. Como se muestra en la Figura 3, el dispositivo de almacenamiento de masa 34 también pueden almacenar un reporte 42. En modalidades de la invención descritas aquí, el reporte 42 comprende un archivo de hoja de cálculo que incluye una referencia a una fuente de datos externa a la computadora 2. Al utilizar una referencia a una fuente de datos externa, el reporte 42 puede utilizar datos contenidos dentro de bases de datos externas cuando se realizan diferentes clases de análisis. Como se muestra en la Figura 3, el dispositivo de almacenamiento de masa 34 también puede almacenar una herramienta de administración 8. Como se discutió de forma breve anteriormente, la herramienta de administración 8 puede proporcionar funcionalidad para centralmente manejar los archivos de conexión de datos almacenados en el almacén 14. Los archivos de conexión de datos pueden ser agregados o removidos al almacén que utiliza la herramienta de administración 8. Adicionalmente, los contenidos de archivos de conexión de datos pueden ser modificados y sus metadatos asociados almacenados en las propiedades de conexión de datos 20A también pueden ser cambiados. Adicionalmente, a través del uso de la herramienta de administración 8, un administrador de sistema puede clasificar grupos de gente o individuos autorizados para ver los archivos de conexión de datos particulares. De esta forma los grupos, o audiencias, pueden ser creados para archivos de conexión de datos particulares. Se debe apreciar que las computadoras de servidor 2A y 12B mostradas en la Figura 1 pueden incluir muchos de los componentes convencionales mostrados con respecto a la computadora 2 en la Figura 3. Adicionalmente, la computadora servidor 12A puede incluir una aplicación de portal 46 para recibir y responder a solicitudes para acceder los archivos de conexión de datos almacenados en el almacén 14. La aplicación de portal 46 puede realizar las funciones necesarias para proporcionar archivos de conexión de datos sólo a usuarios autorizados, para filtras búsquedas del almacén de conexión de datos 14, y para recibir y responder de otra forma a solicitudes de la computadora 2 para acceder al almacén 14. Adicionalmente, la aplicación de portal 46 puede proporcionar una interfase de HTML para administrar los contenidos del almacén de conexión de datos 14. Las funciones descritas anteriormente con referencia a la herramienta de administración 8 pueden ser realizadas a través de una interfase basada en web proporcionada por la aplicación de portal 46. De acuerdo con una modalidad de la invención, la aplicación de portal 46 comprende la aplicación de servidor de servicios de PUNTO PARA COMPARTIR WINDOWS de la CORPORACIÓN DE MICROSOFT. Como se muestra en la Figura 3, la computadora de servidor 12B también puede incluir una aplicación de base de datos 44. Como se muestra por aquellos expertos en la técnica, la aplicación de base de datos 44 es operativa para recibir y responder a solicitudes para conexiones a la fuente de datos 16. Se debe apreciar que la computadora de servidor 12B puede incluir otro software convencional tal como el sistema operativo 36 y otros componentes conocidos para aquellos expertos en la técnica. Haciendo referencia a la Figura 4, una rutina ilustrativa 400 será descrita ilustrando un procedimiento para descubrir una fuente de datos que utiliza un almacén de conexión de datos. Se debe apreciar que aunque las modalidades de la invención aquí descritas son presentadas en el contexto de un programa de aplicación de hoja de cálculo, la invención puede ser utilizada con cualquier tipo de programa de aplicación que se conecta a una fuente de datos. Por ejemplo, las modalidades de la invención aquí descritas pueden ser utilizadas dentro de un programa de aplicación de presentación, un programa de aplicación de diseño de dibujo o ayudado por computadora, un programa de aplicación de procesamiento de palabra, o un programa de aplicación de base de datos. Cuando se lee la discusión de las rutinas aquí presentadas, se debe apreciar que las operaciones lógicas de varias modalidades de la presente invención son implementadas (1) como una secuencia de actos implementados por computadora o módulos de programa que corren en un sistema de cómputo y/o (2) como circuitos lógicos de máquina interconectados o módulos de circuito dentro del sistema de cómputo. La implementación es un asunto de elección dependiente de los requerimientos de realización del sistema de cómputo que implementa la invención. Por consiguiente, las operaciones lógicas ilustradas en las Figura 4-5, y alza de las modalidades de la presente invención descritas aquí son denominadas de forma varada como operaciones, dispositivos estructurales, actos o módulos. Se reconocerá por aquellos expertos en la técnica que estas operaciones, dispositivos estructurales, actos y módulos pueden ser implementados en software, en firmware, en lógica digital de propósito especial, y cualquier combinación de ello sin desviarse del espíritu y alcance de la presente invención como se declara dentro de las reivindicaciones anexas a eso. Haciendo referencia ahora a la Figura 4, una rutina ilustrativa 400 será descrita para descubrir fuentes de datos disponibles que utilizan los contenidos del almacén de conexión de datos 14. La rutina 400 comienza en operación 402, en donde la aplicación de creación de reporte 4 recibe una solicitud para conectarse a una fuente de datos. Tal solicitud puede ser recibida programáticamente o de un usuario. En repuesta a tal solicitud, la aplicación de creación de reporte 4 transmite una consulta a la computadora servidor 12A que solicita la identidad de las fuentes de datos disponibles en operación 404. La consulta puede incluir la identidad del usuario de la aplicación de creación de reporte 4 y uno o más términos de filtro proporcionados por el usuario para filtrar los contenidos del almacén de conexión de datos 14. Al utilizar la información proporcionada por la aplicación de creación de reporte 4 en la consulta, la computadora servidor 12A opera para buscar los contenidos del almacén de conexión de datos 14 para archivos de conexión de datos a los que el usuario de la computadora 2 está autorizado para acceder y que se ajusta a cualquiera de los términos de filtro proporcionados por el usuario. Se debe apreciar que los metadatos almacenados dentro de las propiedades de conexión de datos 20A-20N para cada archivo de conexión de datos 18A-18N pueden ser buscados por la computadora servidor 12A para identificar la lista de propiedades de conexión de datos a la que el usuario está autorizado para ver y que se ajusta a cualquiera de los términos de filtro proporcionados por el usuario. Una vez que la lista de archivos de conexión de datos disponibles ha sido determinada por la computadora de servidor 12A, una lista de los archivos es regresada a la aplicación de creación de reporte para ejecutarse en la computadora 2. En operación 406, la aplicación de creación de reporte 4 opera para presentar una lista de las fuentes de datos disponibles al usuario de la computadora 2. El usuario después puede ser impulsado para seleccionar una de las fuentes de datos disponibles de la lista presentada. En operación 408, la aplicación de creación de reporte 4 recibe del usuario la selección de una fuente de datos disponible. En respuesta a recibir tal selección, la aplicación de creación de reporte 4 transmite la identidad del archivo de conexión de datos seleccionado a la computadora servidor 12A en operación 410. En respuesta a recibir la identidad de un archivo de conexión de datos particular, la computadora servidor 12A opera para recuperar el archivo de conexión de datos del almacén de conexión de datos 14 y transmitir el archivo de conexión de datos, que incluye la información necesaria para conectarse a la fuente de datos, a la aplicación de creación de reporte 4. La aplicación de creación de reporte 4 recibe el archivo de conexión de datos de la computadora servidor 12A en operación 412. Una vez que el archivo de conexión de datos ha sido recibido por la computadora 2, los contenidos del archivo de conexión de datos pueden ser utilizados para conectarse a la fuente de datos, tal como la fuente de datos 16, identificada por los datos contenidos dentro del archivo de conexión de datos. Una vez que la conexión ha sido abierta, la aplicación de creación de reporte 4 puede recuperar datos de la fuente de datos y utilizar los datos en el reporte 42. Cuando un usuario de la aplicación de creación de reporte 4 elige guardar el reporte, un enlace al archivo de conexión de datos puede ser guardado dentro del reporte. El enlace al archivo de conexión de datos no contiene los datos necesarios para conectarse a la fuente de datos 16. Más que eso, el enlace al archivo de conexión de datos contiene un enlace a la computadora servidor 12A y la identidad del archivo de conexión de datos almacenado en el almacén de conexión de datos 14. Al utilizar el enlace al archivo de conexión de datos almacenado en el almacén 14 cuando el documento es abierto, el archivo de conexión de datos sólo necesita ser modificado para actualizar todos los reportes a los que hace referencia. Alternativamente, el archivo de conexión de datos puede ser fijado dentro del reporte. El procedimiento de enlace al archivo de conexión de datos o fijar el archivo de conexión de datos dentro del archivo ocurre en la operación 416. Una vez que este procedimiento ha sido realizado, la rutina 400 continúa en la operación 418, en donde termina. Cambiando ahora a la Figura 5, una rutina ilustrativa 500 será descrita para cargar y ejecutar un reporte que incluye una conexión a una fuente de datos. Por ejemplo, este procedimiento puede ser realizado cuando la aplicación de consumo de reporte 6 es utilizada para cargar y ejecutar un reporte 42 que incluye una conexión a la fuente de datos 16. Una vez que un reporte ha identificado y cargado, la rutina 500 comienza en la operación 502, en donde la aplicación de consumo de reporte 6 determina si la referencia a la conexión de datos ha sido fijada dentro del reporte o si un enlace ha sido creado para un archivo de conexión de datos en el almacén 14. Si un enlace ha sido hecho para un archivo de conexión de datos almacenado en el almacén de conexión de datos 14, la rutina 500 continúa a la operación 504. En la operación 504, una solicitud es transmitida de la aplicación de consumo de reporte 6 a la computadora servidor 12A para determinar si el archivo de conexión está contenido dentro del almacén de conexión de datos 14. Si el archivo de conexión de datos conectado dentro del reporte no está contenido dentro del almacén de conexión de datos 14, la rutina 500 continúa de la operación 504 a la operación 505. En la operación 505 la aplicación de consumo de reporte 6 determina si la información en el archivo de conexión está guardada en memoria caché en el reporte. Si la información en el archivo de conexión está guardada en memoria caché en el reporte, la rutina 500 se ramifica de operación 505 a la operación 510 en donde la aplicación de consumo de reporte 6 utiliza la información guardada en memoria caché en el archivo de conexión para establecer una conexión a la fuente de datos 16. Sin embargo, si la información en el archivo de conexión no está guardada en memoria caché en el reporte, la rutina 500 se ramifica de la operación 505 a la operación 506. En la operación 506, ninguna conexión es hecha para una fuente de datos. Sin embargo, si el archivo de conexión de datos conectado en el reporte está contenido en el almacén 14, la rutina 500 se ramifica de la operación 504 a la operación 508. En la operación 508, una solicitud es hecha para el archivo de conexión de datos apropiado de la computadora servidor 12A. Cuando el archivo de conexión de datos es recibido en la aplicación de consumo de reporte 6, es utilizado para crear una conexión a la fuente de datos 16 en la operación 510. Una vez que la conexión con la fuente de datos 16 ha sido establecida y datos pueden ser transmitidos, la consulta contenida dentro del reporte 512 es ejecutada por la aplicación de consumo de reporte 6. De la operación 512, la rutina 500 continúa a la operación 514, en donde termina. Si, en operación 502, se determina que el archivo de conexión de datos está fijado dentro del reporte, la rutina 500 se ramifica de la operación 502 a la operación 516. En la operación 516, la aplicación de consumo de reporte 6 transmite una solicitud a la computadora servidor 12A para determinar si el archivo de conexión fijado está contenido dentro del almacén 14. Si el archivo de conexión de datos fijado está contenido dentro del almacén 14, la rutina 500 se ramifica de la operación 516 a la operación 526. En la operación 526, la aplicación de consumo de reporte 6 determina si la información fijada dentro del reporta ajusta los contenidos del archivo de conexión de datos almacenados en el almacén 14. Si los contenidos del archivo de conexión de datos fijado ajusta los contenidos del archivo de conexión de datos almacenado en el almacén 14, la rutina 500 se ramifica de la operación 526 a la operación 522, en donde la aplicación de consumo de reporte 6 utiliza los contenidos del archivo de conexión de datos fijado para establecer una conexión a la fuente de datos 16. En la operación 524, la consulta contenida en el reporte es ejecutada por la aplicación de consumo de reporte 6. Después la rutina continúa a la operación 514, en donde termina. Si, en la operación 516, se determina que el archivo de conexión fijado no está contenido en el almacén 14, o si en la operación 526 se determina que archivo de conexión de datos fijado no ajusta los datos almacenados en el almacén 14, la rutina 500 continúa a la operación 518. En la operación 518, la aplicación de consumo de reporte 6 determina si el reporte es confiado. Un archivo es confiado si es guardado en una ubicación segura que sólo usuarios altamente privilegiados (tal como derechos administrativos otorgados de administradores o usuarios) tienen permiso para guardar, pero al que otros usuarios menos privilegiados sólo tienen acceso sólo de lectura. Si el reporte no es confiado, la rutina 500 se ramifica a la operación 520, en donde ninguna conexión es hecha para una fuente de datos. Si, sin embargo, el reporte es confiado, la rutina 500 continúa de la operación 518 a la operación 522 en donde la conexión a la fuente de datos 16 es establecida como se mencionó anteriormente en el archivo de conexión de datos fijado y la consulta es ejecutada en la operación 524. De las operaciones 520 y 524, la rutina 500 continúa a la operación 514, en donde termina. Basándose en lo anterior, se debe apreciar que las varias modalidades de la invención incluyen un método, sistema, aparato, y medio legible por computadora para descubrir y conectarse a fuentes de datos. La especificación anterior, ejemplos y datos proporcionan una descripción completa de la fabricación y uso de la composición de la invención. Ya que muchas modalidades de la invención pueden ser hechas sin apartarse del espíritu y alcance de la invención, la invención reside en las reivindicaciones anexadas aquí.

Claims (20)

REIVINDICACIONES
1.- Un método para descubrir y conectarse a una fuente de datos, el método comprende: recibir una solicitud para conectarse a una fuente de datos; en respuesta a la solicitud, identificar una o más fuentes de datos disponibles de los contenidos de un almacén de conexión de datos centralmente manejado, y regresar las identidades de las fuentes de datos disponibles en respuesta a la solicitud; recibir la selección de una de las fuentes de datos disponibles; y en respuesta a la selección, regresar el archivo de conexión de datos que tiene datos almacenados en él para establecer una conexión a la fuente de datos seleccionada.
2.- El método de acuerdo con la reivindicación 1, en donde la solicitud para conectarse a una fuente de datos comprende uno o más términos de filtro y en donde la identificación de una o más fuentes de datos disponibles comprende identificar una o más fuentes de datos incluidas en un almacén de conexión de datos centralmente manejado que se ajusta a los términos de filtro.
3.- El método de acuerdo con la reivindicación 2, en donde la identificación de una o más fuentes de datos disponibles comprende identificar una o más fuentes de datos incluidas en un almacén de conexión de datos centralmente manejado que un usuario que transmite la solicitud está autorizado para acceder.
4.- Un medio legible por computadora que tiene instrucciones ejecutables por computadora almacenadas en el que, cuando son ejecutadas por una computadora, causarán que la computadora realice el método de la reivindicación 1.
5.- Un aparato controlado por computadora capaz de realizar el método de la reivindicación 1.
6.- Un método para descubrir y conectarse a una fuente de datos, el método comprende: recibir una solicitud para conectarse a una fuente de datos; en respuesta a la solicitud, transmitir una solicitud a un almacén de conexión de datos centralmente manejado para una lista de las fuentes de datos disponibles; recibir la lista de fuentes de datos disponibles del almacén de conexión de datos centralmente manejado y presentar la lista; recibir la selección de una de las fuentes de datos disponibles de la lista presentada; transmitir la identidad de la fuente de datos seleccionada al almacén de conexión de datos centralmente manejado; en respuesta a transmitir la identidad de la fuente de datos seleccionada, recibir del almacén un archivo de conexión de datos que tiene datos almacenados en él para establecer una conexión a la fuente de datos seleccionada; y utilizar los datos almacenados en el archivo de conexión de datos para establecer una conexión a la fuente de datos seleccionada.
7. - El método de acuerdo con la reivindicación 6, en donde la solicitud para conectarse a una fuente de datos comprende una solicitud para conectarse a una fuente de datos para obtener datos para usarse en un reporte, y en donde el método además comprende almacenar un enlace en el reporte al archivo de conexión almacenado en el almacén de conexión de datos centralmente manejado.
8. - El método de acuerdo con la reivindicación 7, que además comprende: recibir una solicitud para abrir el reporte; en respuesta a la solicitud, determinar si el archivo de conexión identificado por el enlace está contenido en el almacén de conexión de datos centralmente manejado; en respuesta a determinar que el archivo de conexión identificado por el enlace no está en el almacén de conexión de datos centralmente manejado, cargar el reporte sin establecer una conexión a la fuente de datos; y en respuesta a determinar que el archivo de conexión identificado por el enlace no está en el almacén de conexión de datos centralmente manejado y los datos en el archivo de conexión son guardados en memoria caché en el reporte, entonces utilizar los datos en el archivo de conexión para establecer una conexión a la fuente de datos.
9. - El método de acuerdo con la reivindicación 8, que además comprende: en respuesta a determinar que el archivo de conexión identificado por el enlace está en el almacén de conexión de datos centralmente manejado, copiar el archivo de conexión del almacén de conexión de datos centralmente manejado, utilizar los datos almacenados en el archivo de conexión de datos para establecer una conexión a la fuente de datos seleccionada, y ejecutar el reporte.
10.- El método de acuerdo con la reivindicación 6, en donde la solicitud para conectarse a una fuente de datos comprende una solicitud para conectarse a una fuente de datos para obtener datos para usarse en un reporte, y en donde el método además comprende fijar el archivo de conexión en el reporte.
11.- El método de acuerdo con la reivindicación 10, que además comprende: recibir una solicitud para abrir el reporte; en respuesta a la solicitud, determinar si el archivo de conexión fijado en el reporte está contenido en el almacén de conexión de datos centralmente manejado; en respuesta a determinar que el archivo de conexión fijado está en el almacén de conexión de datos centralmente manejado, utilizar los datos almacenados en el archivo de conexión de datos fijado para establecer una conexión a la fuente de datos seleccionada, y ejecutar el reporte.
12. - El método de acuerdo con la reivindicación 11, que además comprende: en respuesta a determinar que el archivo de conexión fijado no está en el almacén de conexión de datos centralmente manejado, determinar si el reporte es confiado; en respuesta a determinar que el reporte es confiado, utilizar los datos almacenados en el archivo de conexión de datos fijados para establecer una conexión a la fuente de datos seleccionada, y ejecutar el reporte; y en respuesta a determinar que el reporte no es confiado, cargar el reporte sin establecer una conexión a la fuente de datos.
13. - Un medio legible por computadora que tiene instrucciones ejecutables por computadora almacenadas las cuales, cuando son ejecutadas por una computadora, causarán que la computadora realice el método de la reivindicación 6.
14. - Un aparato controlado por computadora capaz de realizar el método de la reivindicación 6.
15. - Un sistema para proporcionar el descubrimiento de fuentes de datos, el sistema comprende una computadora servidor que opera para mantener un almacén centralmente manejado para definiciones de conexión de datos, las definiciones de conexión de datos comprenden un archivo de conexión de datos que tiene datos almacenados en él para establecer una conexión a una fuente de datos y metadatos que describen una o más propiedades para la fuente de datos.
16.- El sistema de acuerdo con la reivindicación 15, que además comprende una computadora cliente que opera para ejecutar un programa de aplicación para consumir datos de la fuente de datos, el programa de aplicación además opera para recibir una solicitud de usuario para conectarse a una fuente de datos, para pedir a la computadora servidor una lista de fuentes de datos disponibles en respuesta a la solicitud, para presentar a un usuario la lista de fuentes de datos, y para recibir de un usuario la selección de una de las fuentes de datos de la lista.
17.- El sistema de acuerdo con la reivindicación 16, en donde el programa de aplicación además opera para transmitir la identidad de la fuente de datos seleccionada a la computadora servidor, para recibir de la computadora servidor el archivo de conexión de datos para la fuente de datos, y para conectarse a la fuente de datos que utiliza los datos almacenados en el archivo de conexión de datos.
18. - El sistema de acuerdo con la reivindicación 17, en donde la computadora servidor además opera para recibir una solicitud de la computadora cliente para la lista de fuentes de datos disponibles y para determinar la lista de fuentes de datos disponibles del almacén centralmente manejado basándose en privilegios de seguridad asociados con un usuario del programa de aplicación.
19. - El sistema de acuerdo con la reivindicación 18, en donde la computadora servidor además opera para determinar la lista de fuentes de datos disponibles del almacén centralmente manejado basándose en uno o más términos de filtro proporcionados con la petición a la computadora servidor para una lista de fuentes de datos disponibles.
20.- El sistema de acuerdo con la reivindicación 19, en donde la computadora cliente además opera para ejecutar un programa de aplicación para manejar los contenidos del almacén centralmente manejado localizado en la computadora servidor.
MXPA05005857A 2004-06-01 2005-06-01 Metodo, sistema y aparato para descubrir y conectarse a fuentes de datos. MXPA05005857A (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/858,190 US7558799B2 (en) 2004-06-01 2004-06-01 Method, system, and apparatus for discovering and connecting to data sources

Publications (1)

Publication Number Publication Date
MXPA05005857A true MXPA05005857A (es) 2005-12-05

Family

ID=35169765

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA05005857A MXPA05005857A (es) 2004-06-01 2005-06-01 Metodo, sistema y aparato para descubrir y conectarse a fuentes de datos.

Country Status (17)

Country Link
US (1) US7558799B2 (es)
EP (1) EP1612699A1 (es)
JP (1) JP4726545B2 (es)
KR (1) KR101117817B1 (es)
CN (1) CN100437576C (es)
AU (1) AU2005202279B2 (es)
BR (1) BRPI0501960A (es)
CA (1) CA2508928C (es)
IL (1) IL168652A (es)
MX (1) MXPA05005857A (es)
MY (1) MY142583A (es)
NO (1) NO334809B1 (es)
NZ (1) NZ540419A (es)
RU (1) RU2387003C2 (es)
SG (1) SG117625A1 (es)
TW (1) TWI364677B (es)
ZA (1) ZA200504160B (es)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003058483A1 (en) 2002-01-08 2003-07-17 Seven Networks, Inc. Connection architecture for a mobile network
US8468126B2 (en) 2005-08-01 2013-06-18 Seven Networks, Inc. Publishing data in an information community
US7853563B2 (en) 2005-08-01 2010-12-14 Seven Networks, Inc. Universal data aggregation
US7917468B2 (en) * 2005-08-01 2011-03-29 Seven Networks, Inc. Linking of personal information management data
US8275840B2 (en) 2004-09-02 2012-09-25 At&T Intellectual Property I, L.P. Automated messaging tool
US8010082B2 (en) 2004-10-20 2011-08-30 Seven Networks, Inc. Flexible billing architecture
US7441271B2 (en) 2004-10-20 2008-10-21 Seven Networks Method and apparatus for intercepting events in a communication system
US7706781B2 (en) 2004-11-22 2010-04-27 Seven Networks International Oy Data security in a mobile e-mail service
FI117152B (fi) 2004-12-03 2006-06-30 Seven Networks Internat Oy Sähköpostiasetusten käyttöönotto matkaviestimelle
US7752633B1 (en) 2005-03-14 2010-07-06 Seven Networks, Inc. Cross-platform event engine
US7796742B1 (en) 2005-04-21 2010-09-14 Seven Networks, Inc. Systems and methods for simplified provisioning
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
WO2006136660A1 (en) 2005-06-21 2006-12-28 Seven Networks International Oy Maintaining an ip connection in a mobile network
US20070027841A1 (en) * 2005-07-26 2007-02-01 Williams Michael G Messaging middleware dynamic, continuous search and response agent system
US8069166B2 (en) 2005-08-01 2011-11-29 Seven Networks, Inc. Managing user-to-user contact with inferred presence information
US7769395B2 (en) 2006-06-20 2010-08-03 Seven Networks, Inc. Location-based operations and messaging
US7602471B2 (en) * 2006-05-17 2009-10-13 Taiwan Semiconductor Manufacturing Company, Ltd. Apparatus and method for particle monitoring in immersion lithography
KR100813982B1 (ko) * 2006-08-01 2008-03-14 삼성전자주식회사 모바일 단말기와 근거리 서버간의 콘텐츠 공유 방법
US7930197B2 (en) * 2006-09-28 2011-04-19 Microsoft Corporation Personal data mining
US20080091733A1 (en) * 2006-10-16 2008-04-17 Scott Shelton Reusable data query language statements
US20080243823A1 (en) * 2007-03-28 2008-10-02 Elumindata, Inc. System and method for automatically generating information within an eletronic document
US8693494B2 (en) 2007-06-01 2014-04-08 Seven Networks, Inc. Polling
US8805425B2 (en) 2007-06-01 2014-08-12 Seven Networks, Inc. Integrated messaging
FR2922750B1 (fr) * 2007-10-31 2010-10-29 Tekka Implant dentaire a connecteur tronconique femelle
US8364181B2 (en) 2007-12-10 2013-01-29 Seven Networks, Inc. Electronic-mail filtering for mobile devices
US9002828B2 (en) 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
US8793305B2 (en) 2007-12-13 2014-07-29 Seven Networks, Inc. Content delivery to a mobile device from a content service
US8107921B2 (en) 2008-01-11 2012-01-31 Seven Networks, Inc. Mobile virtual network operator
US8862657B2 (en) 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20090193338A1 (en) 2008-01-28 2009-07-30 Trevor Fiatal Reducing network and battery consumption during content delivery and playback
US9189478B2 (en) 2008-04-03 2015-11-17 Elumindata, Inc. System and method for collecting data from an electronic document and storing the data in a dynamically organized data structure
US8787947B2 (en) 2008-06-18 2014-07-22 Seven Networks, Inc. Application discovery on mobile devices
US8078158B2 (en) 2008-06-26 2011-12-13 Seven Networks, Inc. Provisioning applications for a mobile device
US8037062B2 (en) 2008-07-22 2011-10-11 Elumindata, Inc. System and method for automatically selecting a data source for providing data related to a query
US8041712B2 (en) * 2008-07-22 2011-10-18 Elumindata Inc. System and method for automatically selecting a data source for providing data related to a query
US20100023501A1 (en) * 2008-07-22 2010-01-28 Elumindata, Inc. System and method for automatically selecting a data source for providing data related to a query
US8176042B2 (en) 2008-07-22 2012-05-08 Elumindata, Inc. System and method for automatically linking data sources for providing data related to a query
US8909759B2 (en) 2008-10-10 2014-12-09 Seven Networks, Inc. Bandwidth measurement
CN101729491B (zh) * 2008-10-17 2014-04-16 华为技术有限公司 一种增强基于脚本业务的应用可靠性的方法、装置和***
US8429118B2 (en) * 2009-10-23 2013-04-23 Microsoft Corporation Embedding and retrieving data in an application file format
US9208141B2 (en) * 2010-02-05 2015-12-08 Oracle International Corporation Generating and displaying active reports
US8483375B2 (en) * 2010-03-19 2013-07-09 Avaya, Inc. System and method for joining conference calls
US9043731B2 (en) 2010-03-30 2015-05-26 Seven Networks, Inc. 3D mobile user interface with configurable workspace management
GB2495066B (en) 2010-07-26 2013-12-18 Seven Networks Inc Mobile application traffic optimization
CA2806527A1 (en) 2010-07-26 2012-02-09 Seven Networks, Inc. Mobile network traffic coordination across multiple applications
US8838783B2 (en) 2010-07-26 2014-09-16 Seven Networks, Inc. Distributed caching for resource and mobile network traffic management
CA2806548C (en) 2010-07-26 2015-03-31 Seven Networks, Inc. Distributed implementation of dynamic wireless traffic policy
US9330196B2 (en) 2010-11-01 2016-05-03 Seven Networks, Llc Wireless traffic management system cache optimization using http headers
US8204953B2 (en) 2010-11-01 2012-06-19 Seven Networks, Inc. Distributed system for cache defeat detection and caching of content addressed by identifiers intended to defeat cache
EP2635973A4 (en) 2010-11-01 2014-01-15 Seven Networks Inc TO THE BEHAVIOR OF A MOBILE APPLICATION AND INTERMEDIATE STORAGE TAILORED TO NETWORK CONDITIONS
US8843153B2 (en) 2010-11-01 2014-09-23 Seven Networks, Inc. Mobile traffic categorization and policy for network use optimization while preserving user experience
WO2012060995A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US8484314B2 (en) 2010-11-01 2013-07-09 Seven Networks, Inc. Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US9060032B2 (en) 2010-11-01 2015-06-16 Seven Networks, Inc. Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
WO2012060997A2 (en) 2010-11-01 2012-05-10 Michael Luna Application and network-based long poll request detection and cacheability assessment therefor
WO2012061430A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed management of keep-alive message signaling for mobile network resource conservation and optimization
US20120266220A1 (en) * 2010-11-17 2012-10-18 Sequent Software Inc. System and Method for Controlling Access to a Third-Party Application with Passwords Stored in a Secure Element
WO2012071384A2 (en) 2010-11-22 2012-05-31 Michael Luna Optimization of resource polling intervals to satisfy mobile device requests
CA2798523C (en) 2010-11-22 2015-02-24 Seven Networks, Inc. Aligning data transfer to optimize connections established for transmission over a wireless network
US9898454B2 (en) 2010-12-14 2018-02-20 Microsoft Technology Licensing, Llc Using text messages to interact with spreadsheets
US9811516B2 (en) * 2010-12-14 2017-11-07 Microsoft Technology Licensing, Llc Location aware spreadsheet actions
WO2012094675A2 (en) 2011-01-07 2012-07-12 Seven Networks, Inc. System and method for reduction of mobile network traffic used for domain name system (dns) queries
US9129234B2 (en) 2011-01-24 2015-09-08 Microsoft Technology Licensing, Llc Representation of people in a spreadsheet
GB2517815A (en) 2011-04-19 2015-03-04 Seven Networks Inc Shared resource and virtual resource management in a networked environment
WO2012149434A2 (en) 2011-04-27 2012-11-01 Seven Networks, Inc. Detecting and preserving state for satisfying application requests in a distributed proxy and cache system
WO2012149221A2 (en) 2011-04-27 2012-11-01 Seven Networks, Inc. System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief
WO2013015995A1 (en) 2011-07-27 2013-01-31 Seven Networks, Inc. Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network
US8990675B2 (en) * 2011-10-04 2015-03-24 Microsoft Technology Licensing, Llc Automatic relationship detection for spreadsheet data items
EP2789137A4 (en) 2011-12-06 2015-12-02 Seven Networks Inc SYSTEM OF REDUNDANTLY CLUSTERED MACHINES FOR PROVIDING TILTING MECHANISMS IN MOBILE TRAFFIC MANAGEMENT AND NETWORK RESOURCE PRESERVATION
US8934414B2 (en) 2011-12-06 2015-01-13 Seven Networks, Inc. Cellular or WiFi mobile traffic optimization based on public or private network destination
US9277443B2 (en) 2011-12-07 2016-03-01 Seven Networks, Llc Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol
WO2013086455A1 (en) 2011-12-07 2013-06-13 Seven Networks, Inc. Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation
US8861354B2 (en) 2011-12-14 2014-10-14 Seven Networks, Inc. Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization
WO2013090834A1 (en) 2011-12-14 2013-06-20 Seven Networks, Inc. Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic
EP2792188B1 (en) 2011-12-14 2019-03-20 Seven Networks, LLC Mobile network reporting and usage analytics system and method using aggregation of data in a distributed traffic optimization system
US9721039B2 (en) * 2011-12-16 2017-08-01 Palo Alto Research Center Incorporated Generating a relationship visualization for nonhomogeneous entities
WO2013103988A1 (en) 2012-01-05 2013-07-11 Seven Networks, Inc. Detection and management of user interactions with foreground applications on a mobile device in distributed caching
WO2013116856A1 (en) 2012-02-02 2013-08-08 Seven Networks, Inc. Dynamic categorization of applications for network access in a mobile network
WO2013116852A1 (en) 2012-02-03 2013-08-08 Seven Networks, Inc. User as an end point for profiling and optimizing the delivery of content and data in a wireless network
US8812695B2 (en) 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
US10263899B2 (en) 2012-04-10 2019-04-16 Seven Networks, Llc Enhanced customer service for mobile carriers using real-time and historical mobile application and traffic or optimization data associated with mobile devices in a mobile network
WO2014011216A1 (en) 2012-07-13 2014-01-16 Seven Networks, Inc. Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications
US9161258B2 (en) 2012-10-24 2015-10-13 Seven Networks, Llc Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion
US20140177497A1 (en) 2012-12-20 2014-06-26 Seven Networks, Inc. Management of mobile device radio state promotion and demotion
US9271238B2 (en) 2013-01-23 2016-02-23 Seven Networks, Llc Application or context aware fast dormancy
US8874761B2 (en) 2013-01-25 2014-10-28 Seven Networks, Inc. Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US8750123B1 (en) 2013-03-11 2014-06-10 Seven Networks, Inc. Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network
US9065765B2 (en) 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
CN103530422A (zh) * 2013-11-01 2014-01-22 北京金山顶尖科技股份有限公司 软件***生成油气储量报告的方法
US10210246B2 (en) 2014-09-26 2019-02-19 Oracle International Corporation Techniques for similarity analysis and data enrichment using knowledge sources
US10891272B2 (en) 2014-09-26 2021-01-12 Oracle International Corporation Declarative language and visualization system for recommended data transformations and repairs
US10296192B2 (en) * 2014-09-26 2019-05-21 Oracle International Corporation Dynamic visual profiling and visualization of high volume datasets and real-time smart sampling and statistical profiling of extremely large datasets
US20170115864A1 (en) * 2015-10-24 2017-04-27 Oracle International Corporation Visual form designer
US11182402B2 (en) * 2016-12-07 2021-11-23 Google Llc Systems and methods for standardizing interfaces for third party integration
US10885056B2 (en) 2017-09-29 2021-01-05 Oracle International Corporation Data standardization techniques
US10936599B2 (en) 2017-09-29 2021-03-02 Oracle International Corporation Adaptive recommendations
US10848940B2 (en) * 2018-01-04 2020-11-24 Honeywell International Inc. Methods and systems for vehicle based internet of things
CN111190916A (zh) * 2018-10-25 2020-05-22 北京数安鑫云信息技术有限公司 一种可视化业务数据操作***及方法
US10938933B2 (en) * 2019-05-14 2021-03-02 International Business Machines Corporation Managing dynamic configuration-based database connections using a proxy datasource
US10599487B1 (en) * 2019-06-11 2020-03-24 Noble Systems Corporation Adaptable data source connection strings
CN110543498B (zh) * 2019-08-20 2022-02-18 武汉稀云科技有限公司 一种基于事件触发的多方数据关联查询方法和装置
WO2022192961A1 (en) * 2021-03-19 2022-09-22 Portfolio4 Pty Ltd Data management
DE102021209319A1 (de) * 2021-08-25 2023-03-02 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Vermitteln von Datenanforderungen an ein oder mehrere Datenquellen und zur Verarbeitung von angeforderten Daten einer oder mehrerer Datenquellen in einer Anwendung

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5559888A (en) * 1994-02-15 1996-09-24 Lucent Technologies Inc. Secure information retrieval service (SIRS)
US5999711A (en) * 1994-07-18 1999-12-07 Microsoft Corporation Method and system for providing certificates holding authentication and authorization information for users/machines
US5953012A (en) * 1994-12-13 1999-09-14 Microsoft Corporation Method and system for connecting to, browsing, and accessing computer network resources
US6026429A (en) 1995-06-07 2000-02-15 America Online, Inc. Seamless integration of internet resources
KR100538547B1 (ko) * 1995-12-30 2006-02-28 타임라인 인코퍼레이티드 복수의소스능력을가진데이터검색방법및장치
US5893107A (en) * 1996-07-01 1999-04-06 Microsoft Corporation Method and system for uniformly accessing multiple directory services
US6061692A (en) * 1997-11-04 2000-05-09 Microsoft Corporation System and method for administering a meta database as an integral component of an information server
US6286047B1 (en) * 1998-09-10 2001-09-04 Hewlett-Packard Company Method and system for automatic discovery of network services
US6327608B1 (en) * 1998-09-25 2001-12-04 Microsoft Corporation Server administration tool using remote file browser
US6356901B1 (en) * 1998-12-16 2002-03-12 Microsoft Corporation Method and apparatus for import, transform and export of data
US6539383B2 (en) * 1999-11-08 2003-03-25 International Business Machines Corporation Communication and interaction objects for connecting an application to a database management system
US6615231B1 (en) * 1999-12-15 2003-09-02 Microsoft Corporation System and method for directing requests to specific processing
US7107284B1 (en) * 1999-12-28 2006-09-12 Ncr Corporation Method of generating user customized document incorporating at least a portion of discovery information recorded in the system of record database in data warehouse environment
DE10031006A1 (de) 2000-06-30 2002-01-17 Bingooo Ag Verfahren zum Suchen und Wiedergeben von Informationen
AU2002228739A1 (en) * 2000-10-27 2002-05-06 Entigen Corporation Integrating heterogeneous data and tools
DE10056519A1 (de) 2000-11-15 2002-05-29 Interway Informationssysteme G Meta-Standortinformationsdienst
US6971059B1 (en) * 2000-11-28 2005-11-29 Agilent Technologies, Inc. Chromatographic or spectroscopic reports with hyperlinks to allow direct access to external references
US20030074358A1 (en) * 2001-09-24 2003-04-17 Siamak Sarbaz Integration, management and processing of network data from disparate sources
US7015911B2 (en) * 2002-03-29 2006-03-21 Sas Institute Inc. Computer-implemented system and method for report generation
US6886009B2 (en) * 2002-07-31 2005-04-26 International Business Machines Corporation Query routing based on feature learning of data sources
US8521875B2 (en) * 2003-09-04 2013-08-27 Oracle America, Inc. Identity for data sources

Also Published As

Publication number Publication date
AU2005202279B2 (en) 2010-09-16
US20050278307A1 (en) 2005-12-15
KR101117817B1 (ko) 2012-03-22
SG117625A1 (en) 2005-12-29
CA2508928A1 (en) 2005-12-01
AU2005202279A1 (en) 2005-12-15
BRPI0501960A (pt) 2006-01-24
MY142583A (en) 2010-12-15
RU2387003C2 (ru) 2010-04-20
NO20052610L (no) 2005-12-02
KR20060046366A (ko) 2006-05-17
CA2508928C (en) 2014-09-09
ZA200504160B (en) 2007-03-28
NZ540419A (en) 2006-11-30
NO20052610D0 (no) 2005-05-31
RU2005116631A (ru) 2006-11-20
NO334809B1 (no) 2014-06-02
TWI364677B (en) 2012-05-21
IL168652A (en) 2010-06-30
US7558799B2 (en) 2009-07-07
CN1728149A (zh) 2006-02-01
TW200609779A (en) 2006-03-16
EP1612699A1 (en) 2006-01-04
CN100437576C (zh) 2008-11-26
JP2005346717A (ja) 2005-12-15
JP4726545B2 (ja) 2011-07-20

Similar Documents

Publication Publication Date Title
CA2508928C (en) Method, system, and apparatus for discovering and connecting to data sources
EP2118786B1 (en) Integrating enterprise search systems with custom access control application programming interfaces
US8112459B2 (en) Creating a logical table from multiple differently formatted physical tables having different access methods
US7752207B2 (en) Crawlable applications
US7421458B1 (en) Querying, versioning, and dynamic deployment of database objects
US7836019B2 (en) System and method for tracking documents in an on-demand service
US7996380B2 (en) Method and apparatus for processing metadata
CN101568919B (zh) 具有分布式存储的联网计算机***中的单个数据视图
US7533136B2 (en) Efficient implementation of multiple work areas in a file system like repository that supports file versioning
JP4671332B2 (ja) ユーザ識別情報を変換するファイルサーバ
US20050289342A1 (en) Column relevant data security label
US20050289354A1 (en) System and method for applying a file system security model to a query system
EP2800013B1 (en) Integration database framework
US20090319494A1 (en) Field mapping for data stream output
WO2008150617A1 (en) Automatically targeting and filtering shared network resources
WO2008089233A1 (en) Associating security trimmers with documents in an enterprise search system
US7577663B2 (en) Distributed database systems and methods
JP5431475B2 (ja) 検索システム、及び検索空間マップサーバ装置、並びにプログラム
US20090319471A1 (en) Field mapping for data stream output
US20090138523A1 (en) Content engine asynchronous upgrade framework
Naik Accessing data from multiple heterogeneous distributed database systems

Legal Events

Date Code Title Description
FG Grant or registration