US20140007261A1 - Business application search - Google Patents

Business application search Download PDF

Info

Publication number
US20140007261A1
US20140007261A1 US14/017,205 US201314017205A US2014007261A1 US 20140007261 A1 US20140007261 A1 US 20140007261A1 US 201314017205 A US201314017205 A US 201314017205A US 2014007261 A1 US2014007261 A1 US 2014007261A1
Authority
US
United States
Prior art keywords
search
application
web
user
search results
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US14/017,205
Inventor
Prabhat Pandey
Sachin Jindal
Neelkamal Tyagi
Sutirtha Saha
Imran Basha
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
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
Priority to US14/017,205 priority Critical patent/US20140007261A1/en
Publication of US20140007261A1 publication Critical patent/US20140007261A1/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BASHA, IMRAN, JINDAL, SACHIN, PANDEY, PRABHAT, SAHA, SUTIRTHA, TYAGI, NEELKAMAL
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/24Querying
    • G06F16/245Query processing
    • 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/24Querying
    • G06F16/248Presentation of query results

Definitions

  • a method of searching data on a computer system includes accepting a search query, searching multiple data stores on the computer systems for data related to the search query wherein the data can be in a variety of formats from a variety of applications and displaying search results wherein the search results comprise data related to the search query.
  • the search may only retrieve data that the user has permission to view.
  • a user interface is disclosed that enables the method.
  • FIG. 1 is a block diagram of a computing system that may operate in accordance with the claims;
  • FIG. 2 is an illustration of the software architecture of the business search application
  • FIG. 3 is an illustration of the elements of the business search elements.
  • FIG. 4 is an illustration of the steps of a method of searching for data.
  • FIG. 1 illustrates an example of a suitable computing system environment 100 on which a system for the steps of the claimed method and apparatus may be implemented.
  • the computing system environment 100 is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the method of apparatus of the claims. Neither should the computing environment 100 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment 100 .
  • the steps of the claimed method and apparatus are operational with numerous other general purpose or special purpose computing system environments or configurations.
  • Examples of well known computing systems, environments, and/or configurations that may be suitable for use with the methods or apparatus of the claims include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
  • the methods and apparatus may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network.
  • program modules may be located in both local and remote computer storage media including memory storage devices.
  • an exemplary system for implementing the steps of the claimed method and apparatus includes a general purpose computing device in the form of a computer 110 .
  • Components of computer 110 may include, but are not limited to, a processing unit 120 , a system memory 130 , and a system bus 121 that couples various system components including the system memory to the processing unit 120 .
  • the system bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
  • such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus, and the Peripheral Component Interconnect-Express (PCI-E).
  • ISA Industry Standard Architecture
  • MCA Micro Channel Architecture
  • EISA Enhanced ISA
  • VESA Video Electronics Standards Association
  • PCI Peripheral Component Interconnect
  • PCI-E Peripheral Component Interconnect-Express
  • Computer 110 typically includes a variety of computer readable media.
  • Computer readable media can be any available media that can be accessed by computer 110 and includes both volatile and nonvolatile media, removable and non-removable media.
  • Computer readable media may comprise computer storage media and communication media.
  • Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by computer 110 .
  • Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
  • modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
  • communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer readable media.
  • the system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132 .
  • ROM read only memory
  • RAM random access memory
  • BIOS basic input/output system
  • RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120 .
  • FIG. 1 illustrates operating system 134 , application programs 135 , other program modules 136 , and program data 137 .
  • the computer 110 may also include other removable/non-removable, volatile/nonvolatile computer storage media.
  • FIG. 1 illustrates a hard disk drive 140 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 151 that reads from or writes to a removable, nonvolatile magnetic disk 152 , and an optical disk drive 155 that reads from or writes to a removable, nonvolatile optical disk 156 such as a CD ROM or other optical media.
  • removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like.
  • the hard disk drive 141 is typically connected to the system bus 121 through a non-removable memory interface such as interface 140
  • magnetic disk drive 151 and optical disk drive 155 are typically connected to the system bus 121 by a removable memory interface, such as interface 150 .
  • hard disk drive 141 is illustrated as storing operating system 144 , application programs 145 , other program modules 146 , and program data 147 . Note that these components can either be the same as or different from operating system 134 , application programs 135 , other program modules 136 , and program data 137 . Operating system 144 , application programs 145 , other program modules 146 , and program data 147 are given different numbers here to illustrate that, at a minimum, they are different copies.
  • a user may enter commands and information into the computer 20 through input devices such as a keyboard 162 and pointing device 161 , commonly referred to as a mouse, trackball or touch pad.
  • Other input devices may include a microphone, joystick, game pad, satellite dish, scanner, or the like.
  • These and other input devices are often connected to the processing unit 120 through a user input interface 160 that is coupled to the system bus, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB).
  • a monitor 191 or other type of display device is also connected to the system bus 121 via an interface, such as a video interface 190 .
  • computers may also include other peripheral output devices such as speakers 197 and printer 196 , which may be connected through an output peripheral interface 190 .
  • the computer 110 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 180 .
  • the remote computer 180 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 110 , although only a memory storage device 181 has been illustrated in FIG. 1 .
  • the logical connections depicted in FIG. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173 , but may also include other networks.
  • LAN local area network
  • WAN wide area network
  • Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.
  • the computer 110 When used in a LAN networking environment, the computer 110 is connected to the LAN 171 through a network interface or adapter 170 .
  • the computer 110 When used in a WAN networking environment, the computer 110 typically includes a modem 172 or other means for establishing communications over the WAN 173 , such as the Internet.
  • the modem 172 which may be internal or external, may be connected to the system bus 121 via the user input interface 160 , or other appropriate mechanism.
  • program modules depicted relative to the computer 110 may be stored in the remote memory storage device.
  • FIG. 1 illustrates remote application programs 185 as residing on memory device 181 . It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
  • FIGS. 2-4 illustrate a method of searching data on one or more computer systems where the computer system has multiple applications which may be business applications.
  • the method may use a catalog of business applications which may contain metadata and an intermediary service to allow the business applications to interact with the search application.
  • the method may be referred to as a Business Data Search (“BDS”) snap-in and the BDS may leverage the functionality of the Business Data Catalog core service which is a part of Microsoft Office SharePoint Server 2007.
  • the Business Data Catalog is a catalog of business applications that enables a Microsoft Office SharePoint Server 2007 to interact with other business applications and display business data on the portal or make it available for other applications consumption.
  • the Business Data Catalog may be used to connect to any backend enterprise application through Web Services or database connections.
  • the Business Data Catalog may include a metadata repository and an object model that provide a unified and simple way to invoke operations and a consistent, object-oriented programming interface for business logic that lives in the various business applications.
  • the metadata repository may use metadata to describe business applications.
  • the metadata may be defined for each physical data source by defining the business entities with which the applications interact and the methods available in the business applications.
  • the metadata model may abstract the underlying physical sources and provide a consistent and simple model for metadata authors working with different kinds of business applications. As metadata is defined in XML, there is not a need to write code to author the metadata.
  • the BDS snap-in uses this functionality of the Business Data Catalog to search for data.
  • the Business Data Catalog helps index Microsoft Dynamics AX 4.0, Microsoft Dynamics CRM 3.0 and other applications. Of course, the method could be applied to a variety of applications.
  • the architecture of the BDS Snap-in has four parts.
  • the primary part of the architecture lies in the SharePoint Server 210 where both the Backend search 220 and Front end presentation logic 230 resides.
  • the presentation logic 230 is primarily implemented as an ASPX page that may be hosted on a website and would be rendered within the Outlook client by virtue of setting it as the homepage of an Outlook folder which the user can create easily.
  • Business Data Catalogue 260 would be used to crawl and index the data present in back-office applications like CRM 3.0 270 and AX 4.0 280 .
  • BDC would directly interface with the CRM database 275 and AX databases 285 to crawl and index the data. Once the data is crawled, it would be authenticated by the Authentication logic 290 before rendering it through the presentation logic 230 .
  • the authentication may happen through Business Connector 287 in case of AX 4.0 and CRM webservice 277 in case of CRM.
  • the Business Data Search snap-in may consist of a three-tiered architecture with the BDS Server 310 in the middle tier connecting the back-office information systems 315 to the client which is a Webpage displayed within Microsoft Outlook 320 where data search is initiated as well as its results are seen.
  • the back office application server is a web hosted application server in an internet environment.
  • the back-office information systems would typically include Microsoft Dynamics AX 4.0 servers 325 , Microsoft Office SharePoint Server 2007 sites 330 or Microsoft Dynamics CRM 3.0 servers 335 .
  • a typical Microsoft Dynamics AX 4.0 server 325 setup consists of the database, Object Server and the Enterprise Portal while the Microsoft Dynamics CRM 3.0 335 setup consists of a CRM Database, CRM Web service and the web client.
  • Microsoft Office SharePoint Server 2007 Business Data Catalog core service 340 is the first component.
  • the metadata powered Business Data Catalog allows crawling of the respective Microsoft Dynamics AX and Microsoft Dynamics CRM databases and indexes them using metadata driven keys into the SharePoint Metadata Database.
  • the second component in the middle tier is the BDS Website 310 .
  • This component may have three subcomponents:
  • the third component is specific to Microsoft Dynamics AX 4.0 and is called Microsoft Dynamics AX 4.0 .NET Business Connector 350 which enables communication to the Microsoft Dynamics AX 4.0 Object Server 325 .
  • Microsoft Outlook 320 in the BDS snap-in architecture.
  • the website is browsed from Microsoft Outlook using a hosted browser controlled from within Outlook and the search results are displayed in a brief and intuitive format.
  • pattern matching and word combinations are provided e.g. when a word or a phrase is in double quotes, BDS snap-in searches it as a single phrase along with other word(s) present in the search edit box. For example when the words Light “and design” are entered for search, then the word Light would be one search keyword and “and design” would be another.
  • the Business Data Search snap-in can be configured to search any number of entities and attributes across Microsoft Dynamics AX 4.0 servers, and Microsoft Dynamics CRM 3.0 servers. This configuration may be customized in the Middle tier by using BDC Meta-data file. This list may be modified at any point by editing the BDC XML meta-data file. The following is a list of the entries and their corresponding fields that should be searched whenever a search is made of an AX 4.0 application.
  • Item ItemId Itemid Item Name ItemName Item Group ItemGroup Purchase Vendor Account OrderAccount Orders Item ItemId Item Name Name Invoice Account InvoiceAccount Status PurchStatus Purchase Type Purchase Type Sales Orders Customer Account CustAccount ItemId Item Description Name Invoice Account InvoiceAccount Status SalesStatus Sales Type Sales Type Sales Customer account CustAccount Quotations Business Relation BusRelAccount Quotation Status QuotationStatus Item ItemId (From Item Name SalesQuotationLine Table) Sales Person Name (From SalesQuotationLine Table) SalesResponsible Projects Customer CustAccount Project ProjId Name Name Type Type Group ProjGroupId Services Customer CustAccount Service Description Description Project ProjId Service Agreement AgreementId Service Responsible responsible Production Item ItemId Orders Item Name Item Status Name ProdStatus Vendors
  • This list can be modified at any point by editing the BDC XML meta-data file.
  • Entity Display Fields Account Account Name Account Number Primary contact Address1: city Main Phone E-mail Website Category Territory Industry Ownership Product Product Name Subject Product Type ID Status Lead Topic Name Company Name Web Site Status reason Business phone Email Opportunity Topic Potential Customer Est. Revenue Est. Close date Description Campaign Name Template Status Reason Created On Campaign Code Campaign Type Description Order Order ID Name Customer Status Reason Total amount description Contact Full Name Parent Customer Address1: City Address1: Phone Business Phone E-mail Contract Contract Name Contract ID Customer Contract Template Status Expiration date Quote Quote ID Name Potential Customer Status reason Total Amount Invoice Invoide ID Name Customer Order Status reason Total Amount Due date Case Title Customer Subject Case Type Status Reason Service Level Case Number Created On Service Activity Subject Service Customers Description Status Reason Resources Scheduled Start Scheduled End Marketing List Name Purpose Description Last used on Competitor Name Website Ticket Symbol Key product
  • the Business Data Search snap-in at its core uses a service called the Business Data Catalog (BDC) that is part of Microsoft Office SharePoint Server 2007.
  • BDC Business Data Catalog
  • the BDC core service is capable of interfacing with multiple back-office information servers using a generic XML based Meta-data model that stores the specific interface details of each of the back-office information server.
  • the Microsoft Office SharePoint Server's Search Crawler uses BDC to access and retrieve data from these back-office information servers and maintains indexes for this data in its repository. This indexed data is later used by the BDS server when it needs to search for specific information in the back-office information servers.
  • the BDSConfig utility shipped with the Business Data Search snap-in internally generates this meta-data based on the parameter values provided to it.
  • this XML Metadata file may be created manually and import it directly into the BDS Server's configuration using the BDSConfig utility.
  • the following variables may be customized in the BDS Server:
  • the following procedure illustrates how an administrator can add an application definition to “Business Data Catalog” manually after the developer writes and tests the metadata.
  • SSP Select Shared Services Provider
  • the Business Data Catalog imports metadata information about an application.
  • the crawling may be set and indexing of the added application may proceed.
  • the search results may be displayed in a tabular form in the middle pane of the Standard Microsoft Outlook user interface and are categorized by their information sources. In every result category, the search results may be paginated.
  • FIG. 4 may illustrate how the method of searching data on a computer system may occur.
  • a search query may be accepted. There are no limits on the query that may be entered.
  • the security rights of a search query creator may be determined and only data may be searched that the search query creator has rights.
  • multiple applications on the computer system may be searched for data related to the search query where the data can be in a variety of formats.
  • the applications that are searched may be selected.
  • the applications may be business applications such as a CRM program, an email program, an accounting program, a supply chain management program, word processing program, ERP application and spreadsheet program.
  • the applications may be remote applications not resident on a single computer.
  • the search may be accomplished using a search application on a server which is accessed using an assigned url.
  • the search application may have a first tier that includes a user interface client application, a second tier that includes a business data search website and a third tier that includes a connection application that connects a business data search application to the plurality of applications.
  • the second tier may include access logic which uses a business data search runtime object model to do the search and get the search results, an authentication layer that authenticates a search requestor with each application to be searched and a presentation layer that presents the search information through the business data search web site.
  • search results may be displayed wherein the search results comprise data related to the search query.
  • the display may include a summary of the found data and the summary may be displayed in an email application.
  • details of the search results may be displayed in any of the applications searched.
  • the search result may be sorted, filtered, limited to a certain time range or otherwise reviewed.
  • a user interface may be used to operate the search application.
  • the user interface may include a first field to accept a search query, a second field to allow a selection of one or more applications to be searched for data related to the search query, and a third field to allow a selection of a type of report to be created and a fourth field to allow a selection of the type of application in which the report is to be displayed.
  • the search application may also be viewed as a plug in for a business computer system where the computer system has a plurality of applications and where the applications are stored remote from a user terminal.
  • the plug in may include a first tier which is a user interface client application, a second tier which includes a business data search website and a third tier which includes a connection application that connects a business data search application to the plurality of applications.
  • a Sales representative receives an email from a customer reporting that certain item in the last delivered shipment was defective. Before taking any action the sales representative decides to do some research about this particular item. She simply uses the Business Data Search snap-in, available from within her Microsoft Outlook window, and searches for this item across her back-office ERP and CRM systems and Microsoft Office SharePoint sites by entering the item name as the search text in Business Data Search snap-in search box. This search retrieves all the relevant matches found in the various systems within her Microsoft Outlook window for her to see. For instance, she can see the latest quality reports for this item stored in a Microsoft Office SharePoint site, past and present Opportunities and Orders present in the ERP system, as well as Customers who have been recently serviced for this item. The search results enable her to get a very good perspective on the overall state of the item in question and make the right decisions before following up with her customer.

Abstract

A method of searching data on a computer system includes accepting a search query, searching multiple applications on the computer system for data related to the search query wherein the data can be in a variety of formats and displaying search results wherein the search results comprise data related to the search query.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This patent application is a continuation of U.S. patent application Ser. No. 11/771,554 titled “BUSINESS APPLICATION SEARCH” which was filed on Jun. 29, 2007 and is expressly incorporated herein by reference.
  • BACKGROUND
  • This Background is intended to provide the basic context of this patent application and it is not intended to describe a specific problem to be solved.
  • Business users today have a tough time searching data located in multiple back-office information stores as they have to access each of these information stores separately. Related, users can search for the required information only using the search interface offered by each application. Also, some back-office information stores may not even have a global search facility available as part of their client interface, thus, making the task of searching even more arduous. Moreover, after the business user finds all the bits of information through this tedious process, they are still segregated from each other and need to be put together in a summarized form for anyone to be able to analyze them properly. This again may require substantial copy/paste effort from the business users.
  • SUMMARY
  • This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
  • A method of searching data on a computer system includes accepting a search query, searching multiple data stores on the computer systems for data related to the search query wherein the data can be in a variety of formats from a variety of applications and displaying search results wherein the search results comprise data related to the search query. The search may only retrieve data that the user has permission to view. A user interface is disclosed that enables the method.
  • DRAWINGS
  • FIG. 1 is a block diagram of a computing system that may operate in accordance with the claims;
  • FIG. 2 is an illustration of the software architecture of the business search application;
  • FIG. 3 is an illustration of the elements of the business search elements; and
  • FIG. 4 is an illustration of the steps of a method of searching for data.
  • DESCRIPTION
  • Although the following text sets forth a detailed description of numerous different embodiments, it should be understood that the legal scope of the description is defined by the words of the claims set forth at the end of this patent. The detailed description is to be construed as exemplary only and does not describe every possible embodiment since describing every possible embodiment would be impractical, if not impossible. Numerous alternative embodiments could be implemented, using either current technology or technology developed after the filing date of this patent, which would still fall within the scope of the claims.
  • It should also be understood that, unless a term is expressly defined in this patent using the sentence “As used herein, the term ‘______’ is hereby defined to mean . . . ” or a similar sentence, there is no intent to limit the meaning of that term, either expressly or by implication, beyond its plain or ordinary meaning, and such term should not be interpreted to be limited in scope based on any statement made in any section of this patent (other than the language of the claims). To the extent that any term recited in the claims at the end of this patent is referred to in this patent in a manner consistent with a single meaning, that is done for sake of clarity only so as to not confuse the reader, and it is not intended that such claim term by limited, by implication or otherwise, to that single meaning Finally, unless a claim element is defined by reciting the word “means” and a function without the recital of any structure, it is not intended that the scope of any claim element be interpreted based on the application of 35 U.S.C. §112, sixth paragraph.
  • FIG. 1 illustrates an example of a suitable computing system environment 100 on which a system for the steps of the claimed method and apparatus may be implemented. The computing system environment 100 is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the method of apparatus of the claims. Neither should the computing environment 100 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment 100.
  • The steps of the claimed method and apparatus are operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well known computing systems, environments, and/or configurations that may be suitable for use with the methods or apparatus of the claims include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • The steps of the claimed method and apparatus may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The methods and apparatus may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
  • With reference to FIG. 1, an exemplary system for implementing the steps of the claimed method and apparatus includes a general purpose computing device in the form of a computer 110. Components of computer 110 may include, but are not limited to, a processing unit 120, a system memory 130, and a system bus 121 that couples various system components including the system memory to the processing unit 120. The system bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus, and the Peripheral Component Interconnect-Express (PCI-E).
  • Computer 110 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 110 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by computer 110. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer readable media.
  • The system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132. A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements within computer 110, such as during start-up, is typically stored in ROM 131. RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120. By way of example, and not limitation, FIG. 1 illustrates operating system 134, application programs 135, other program modules 136, and program data 137.
  • The computer 110 may also include other removable/non-removable, volatile/nonvolatile computer storage media. By way of example only, FIG. 1 illustrates a hard disk drive 140 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 151 that reads from or writes to a removable, nonvolatile magnetic disk 152, and an optical disk drive 155 that reads from or writes to a removable, nonvolatile optical disk 156 such as a CD ROM or other optical media. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive 141 is typically connected to the system bus 121 through a non-removable memory interface such as interface 140, and magnetic disk drive 151 and optical disk drive 155 are typically connected to the system bus 121 by a removable memory interface, such as interface 150.
  • The drives and their associated computer storage media discussed above and illustrated in FIG. 1, provide storage of computer readable instructions, data structures, program modules and other data for the computer 110. In FIG. 1, for example, hard disk drive 141 is illustrated as storing operating system 144, application programs 145, other program modules 146, and program data 147. Note that these components can either be the same as or different from operating system 134, application programs 135, other program modules 136, and program data 137. Operating system 144, application programs 145, other program modules 146, and program data 147 are given different numbers here to illustrate that, at a minimum, they are different copies. A user may enter commands and information into the computer 20 through input devices such as a keyboard 162 and pointing device 161, commonly referred to as a mouse, trackball or touch pad. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit 120 through a user input interface 160 that is coupled to the system bus, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). A monitor 191 or other type of display device is also connected to the system bus 121 via an interface, such as a video interface 190. In addition to the monitor, computers may also include other peripheral output devices such as speakers 197 and printer 196, which may be connected through an output peripheral interface 190.
  • The computer 110 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 180. The remote computer 180 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 110, although only a memory storage device 181 has been illustrated in FIG. 1. The logical connections depicted in FIG. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173, but may also include other networks. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.
  • When used in a LAN networking environment, the computer 110 is connected to the LAN 171 through a network interface or adapter 170. When used in a WAN networking environment, the computer 110 typically includes a modem 172 or other means for establishing communications over the WAN 173, such as the Internet. The modem 172, which may be internal or external, may be connected to the system bus 121 via the user input interface 160, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer 110, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation, FIG. 1 illustrates remote application programs 185 as residing on memory device 181. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
  • FIGS. 2-4 illustrate a method of searching data on one or more computer systems where the computer system has multiple applications which may be business applications. The method may use a catalog of business applications which may contain metadata and an intermediary service to allow the business applications to interact with the search application.
  • In the Microsoft world of products, the method may be referred to as a Business Data Search (“BDS”) snap-in and the BDS may leverage the functionality of the Business Data Catalog core service which is a part of Microsoft Office SharePoint Server 2007. The Business Data Catalog is a catalog of business applications that enables a Microsoft Office SharePoint Server 2007 to interact with other business applications and display business data on the portal or make it available for other applications consumption. The Business Data Catalog may be used to connect to any backend enterprise application through Web Services or database connections. The Business Data Catalog may include a metadata repository and an object model that provide a unified and simple way to invoke operations and a consistent, object-oriented programming interface for business logic that lives in the various business applications.
  • The metadata repository may use metadata to describe business applications. The metadata may be defined for each physical data source by defining the business entities with which the applications interact and the methods available in the business applications. The metadata model may abstract the underlying physical sources and provide a consistent and simple model for metadata authors working with different kinds of business applications. As metadata is defined in XML, there is not a need to write code to author the metadata. The BDS snap-in uses this functionality of the Business Data Catalog to search for data. The Business Data Catalog helps index Microsoft Dynamics AX 4.0, Microsoft Dynamics CRM 3.0 and other applications. Of course, the method could be applied to a variety of applications.
  • As can be seen from FIG. 2, the architecture of the BDS Snap-in has four parts. The primary part of the architecture lies in the SharePoint Server 210 where both the Backend search 220 and Front end presentation logic 230 resides. On the client machine 240, there is no need to install anything on the Outlook client side 250. The presentation logic 230 is primarily implemented as an ASPX page that may be hosted on a website and would be rendered within the Outlook client by virtue of setting it as the homepage of an Outlook folder which the user can create easily. Business Data Catalogue 260 would be used to crawl and index the data present in back-office applications like CRM 3.0 270 and AX 4.0 280. BDC would directly interface with the CRM database 275 and AX databases 285 to crawl and index the data. Once the data is crawled, it would be authenticated by the Authentication logic 290 before rendering it through the presentation logic 230. The authentication may happen through Business Connector 287 in case of AX 4.0 and CRM webservice 277 in case of CRM.
  • Referring now to FIG. 3, the Business Data Search snap-in may consist of a three-tiered architecture with the BDS Server 310 in the middle tier connecting the back-office information systems 315 to the client which is a Webpage displayed within Microsoft Outlook 320 where data search is initiated as well as its results are seen. In another embodiment, the back office application server is a web hosted application server in an internet environment.
  • The back-office information systems would typically include Microsoft Dynamics AX 4.0 servers 325, Microsoft Office SharePoint Server 2007 sites 330 or Microsoft Dynamics CRM 3.0 servers 335. A typical Microsoft Dynamics AX 4.0 server 325 setup consists of the database, Object Server and the Enterprise Portal while the Microsoft Dynamics CRM 3.0 335 setup consists of a CRM Database, CRM Web service and the web client.
  • These back-office information systems are connected to Microsoft Outlook via a middle tier—which consists of three components. Microsoft Office SharePoint Server 2007 Business Data Catalog core service 340 is the first component. The metadata powered Business Data Catalog allows crawling of the respective Microsoft Dynamics AX and Microsoft Dynamics CRM databases and indexes them using metadata driven keys into the SharePoint Metadata Database.
  • The second component in the middle tier is the BDS Website 310. This component may have three subcomponents:
      • The business data search website 310 uses the business data search runtime object model 340 to perform the search and obtain the search results.
      • The Authentication layer 345 communicates with Microsoft Dynamics AX using the Microsoft Dynamics AX 4.0 .NET Business Connector (via a web-service) 350 or Microsoft Dynamics CRM 335 using Microsoft Dynamics CRM Web services and authenticates the user's rights to the search results and filters accordingly.
      • The Presentation layer presents this information through the BDS Website, which is accessed by a browser control that resides in the user's Microsoft Outlook client 320.
  • The third component is specific to Microsoft Dynamics AX 4.0 and is called Microsoft Dynamics AX 4.0 .NET Business Connector 350 which enables communication to the Microsoft Dynamics AX 4.0 Object Server 325.
  • Finally there is the client, Microsoft Outlook 320, in the BDS snap-in architecture. The website is browsed from Microsoft Outlook using a hosted browser controlled from within Outlook and the search results are displayed in a brief and intuitive format.
  • In one embodiment, only those records are displayed for which the user has sufficient access privileges defined in the back-office information sources.
  • In another embodiment, pattern matching and word combinations are provided e.g. when a word or a phrase is in double quotes, BDS snap-in searches it as a single phrase along with other word(s) present in the search edit box. For example when the words Light “and design” are entered for search, then the word Light would be one search keyword and “and design” would be another.
  • Individual search result records can be opened directly in their respective back-office application clients by double-clicking on them in the Microsoft Outlook middle pane. Microsoft Dynamics CRM 3.0 335 records are opened in the Microsoft CRM web-based client whereas the Microsoft Dynamics AX 4.0 325 records are opened in the Enterprise Portal. In case of Microsoft Office SharePoint Server sites 330 results, the document is launched in its respective Microsoft Office application when its search result is double-clicked in the middle pane.
  • Searchable Entities and Attributes
  • The Business Data Search snap-in can be configured to search any number of entities and attributes across Microsoft Dynamics AX 4.0 servers, and Microsoft Dynamics CRM 3.0 servers. This configuration may be customized in the Middle tier by using BDC Meta-data file. This list may be modified at any point by editing the BDC XML meta-data file. The following is a list of the entries and their corresponding fields that should be searched whenever a search is made of an AX 4.0 application.
  • In Microsoft Dynamics AX 4.0:
  • Searched Fields (Name Searched fields (Name
    Entity as it appears in AX Forms) of field in Table)
    Item ItemId Itemid
    Item Name ItemName
    Item Group ItemGroup
    Purchase Vendor Account OrderAccount
    Orders Item ItemId
    Item Name Name
    Invoice Account InvoiceAccount
    Status PurchStatus
    Purchase Type Purchase Type
    Sales Orders Customer Account CustAccount
    Item ItemId
    Item Description Name
    Invoice Account InvoiceAccount
    Status SalesStatus
    Sales Type Sales Type
    Sales Customer account CustAccount
    Quotations Business Relation BusRelAccount
    Quotation Status QuotationStatus
    Item ItemId (From
    Item Name SalesQuotationLine
    Table)
    Sales Person Name (From
    SalesQuotationLine
    Table)
    SalesResponsible
    Projects Customer CustAccount
    Project ProjId
    Name Name
    Type Type
    Group ProjGroupId
    Services Customer CustAccount
    Service Description Description
    Project ProjId
    Service Agreement AgreementId
    Service Responsible Responsible
    Production Item ItemId
    Orders Item Name Item
    Status Name
    ProdStatus
    Vendors Vendor Account AccountNum
    Name Name
    Vendor Group Name Name(From VendGroup
    Table)
    Customers Customer Account AccountNum
    Name Name
    Customer Group Name Name(From CustGroup
    Table)
    Business Business Account BusRelAccount
    Relations Name Name
    Type BusRelTypeId
    SalesPerson MainContact
    LedgerAccounts Account AccountNum
    AccountName AccountName
    Type AccountPLType
    Fixed Assets Asset Number AssetId
    Name Name
    Asset Group Name AssetGroup
    Type AssetType
    Make Make
    Model Model
    ExchangeRate CurrencyCode CurrencyCode
    Name Txt
  • In Microsoft Dynamics CRM 3.0:
  • This list can be modified at any point by editing the BDC XML meta-data file.
  • Following is the list of entities and their corresponding fields that should be searched whenever a search is made of a CRM 3.0 application:
  • Entity Display Fields
    Account Account Name
    Account Number
    Primary contact
    Address1: city
    Main Phone
    E-mail
    Website
    Category
    Territory
    Industry
    Ownership
    Product Product Name
    Subject
    Product Type
    ID
    Status
    Lead Topic
    Name
    Company Name
    Web Site
    Status reason
    Business phone
    Email
    Opportunity Topic
    Potential Customer
    Est. Revenue
    Est. Close date
    Description
    Campaign Name
    Template
    Status Reason
    Created On
    Campaign Code
    Campaign Type
    Description
    Order Order ID
    Name
    Customer
    Status Reason
    Total amount
    description
    Contact Full Name
    Parent Customer
    Address1: City
    Address1: Phone
    Business Phone
    E-mail
    Contract Contract Name
    Contract ID
    Customer
    Contract Template
    Status
    Expiration date
    Quote Quote ID
    Name
    Potential Customer
    Status reason
    Total Amount
    Invoice Invoide ID
    Name
    Customer
    Order
    Status reason
    Total Amount
    Due date
    Case Title
    Customer
    Subject
    Case Type
    Status Reason
    Service Level
    Case Number
    Created On
    Service Activity Subject
    Service
    Customers
    Description
    Status Reason
    Resources
    Scheduled Start
    Scheduled End
    Marketing List Name
    Purpose
    Description
    Last used on
    Competitor Name
    Website
    Ticket Symbol
    Key product
  • Customizing Business Data Search Snap-In
  • As described above, the Business Data Search snap-in at its core uses a service called the Business Data Catalog (BDC) that is part of Microsoft Office SharePoint Server 2007. The BDC core service is capable of interfacing with multiple back-office information servers using a generic XML based Meta-data model that stores the specific interface details of each of the back-office information server. The Microsoft Office SharePoint Server's Search Crawler uses BDC to access and retrieve data from these back-office information servers and maintains indexes for this data in its repository. This indexed data is later used by the BDS server when it needs to search for specific information in the back-office information servers. The BDSConfig utility shipped with the Business Data Search snap-in internally generates this meta-data based on the parameter values provided to it. However, this XML Metadata file may be created manually and import it directly into the BDS Server's configuration using the BDSConfig utility. The following variables may be customized in the BDS Server:
  • 1. Locations to be Searched;
  • 2. Entities to be searched within each location;
  • 3. Attributes to be searched within each entity; and
  • 4. Relationships between entities.
  • The following procedure illustrates how an administrator can add an application definition to “Business Data Catalog” manually after the developer writes and tests the metadata.
  • To add an application definition to “Business Data Catalog”
  • 1. Open SharePoint Central Administration.
  • 2. Navigate to the Operations page.
  • 3. In the Topology and Services section of the Operations page, click Create or Configure this Farm's Core Services.
  • 4. Select Shared Services Provider (SSP).
  • 5. In the Business Data Catalog Management section, click Add Application to open the Add Application page.
  • 6. In the Add Application page, browse to the XML file that contains the metadata for a business application, and click Import.
  • At this point, the Business Data Catalog imports metadata information about an application. Next, through a “search settings and schedule” option, the crawling may be set and indexing of the added application may proceed.
  • The search results may be displayed in a tabular form in the middle pane of the Standard Microsoft Outlook user interface and are categorized by their information sources. In every result category, the search results may be paginated.
  • FIG. 4 may illustrate how the method of searching data on a computer system may occur. As noted previously, there is no requirement of installing a search program on a user computer. At block 410, a search query may be accepted. There are no limits on the query that may be entered. In one embodiment, the security rights of a search query creator may be determined and only data may be searched that the search query creator has rights.
  • At block 420, multiple applications on the computer system may be searched for data related to the search query where the data can be in a variety of formats. In one embodiment, the applications that are searched may be selected. The applications may be business applications such as a CRM program, an email program, an accounting program, a supply chain management program, word processing program, ERP application and spreadsheet program. The applications may be remote applications not resident on a single computer.
  • The search may be accomplished using a search application on a server which is accessed using an assigned url. The search application may have a first tier that includes a user interface client application, a second tier that includes a business data search website and a third tier that includes a connection application that connects a business data search application to the plurality of applications. The second tier may include access logic which uses a business data search runtime object model to do the search and get the search results, an authentication layer that authenticates a search requestor with each application to be searched and a presentation layer that presents the search information through the business data search web site.
  • At block 430, search results may be displayed wherein the search results comprise data related to the search query. The display may include a summary of the found data and the summary may be displayed in an email application. In another embodiment, details of the search results may be displayed in any of the applications searched. The search result may be sorted, filtered, limited to a certain time range or otherwise reviewed.
  • A user interface may be used to operate the search application. The user interface may include a first field to accept a search query, a second field to allow a selection of one or more applications to be searched for data related to the search query, and a third field to allow a selection of a type of report to be created and a fourth field to allow a selection of the type of application in which the report is to be displayed.
  • The search application may also be viewed as a plug in for a business computer system where the computer system has a plurality of applications and where the applications are stored remote from a user terminal. The plug in may include a first tier which is a user interface client application, a second tier which includes a business data search website and a third tier which includes a connection application that connects a business data search application to the plurality of applications.
  • Usage Steps
  • Consider a scenario where a Sales representative receives an email from a customer reporting that certain item in the last delivered shipment was defective. Before taking any action the sales representative decides to do some research about this particular item. She simply uses the Business Data Search snap-in, available from within her Microsoft Outlook window, and searches for this item across her back-office ERP and CRM systems and Microsoft Office SharePoint sites by entering the item name as the search text in Business Data Search snap-in search box. This search retrieves all the relevant matches found in the various systems within her Microsoft Outlook window for her to see. For instance, she can see the latest quality reports for this item stored in a Microsoft Office SharePoint site, past and present Opportunities and Orders present in the ERP system, as well as Customers who have been recently serviced for this item. The search results enable her to get a very good perspective on the overall state of the item in question and make the right decisions before following up with her customer.
  • Although the forgoing text sets forth a detailed description of numerous different embodiments, it should be understood that the scope of the patent is defined by the words of the claims set forth at the end of this patent. The detailed description is to be construed as exemplary only and does not describe every possible embodiment because describing every possible embodiment would be impractical, if not impossible. Numerous alternative embodiments could be implemented, using either current technology or technology developed after the filing date of this patent, which would still fall within the scope of the claims.
  • Thus, many modifications and variations may be made in the techniques and structures described and illustrated herein without departing from the spirit and scope of the present claims. Accordingly, it should be understood that the methods and apparatus described herein are illustrative only and are not limiting upon the scope of the claims.

Claims (20)

1. A method comprising:
displaying, by a client computer of a user, a user interface of an e-mail client application, the user interface comprising a list of e-mail folders and a search box;
configuring the e-mail client application to connect to a search application hosted by a server computer system, wherein the search application is configured to obtain search results comprising data associated with a plurality of web-based applications and authenticate security rights to the search results;
receiving, by the e-mail client application, user input for selecting to search at least one web-based application of the plurality of web-based applications;
submitting, by the e-mail client application to the search application, a search query entered by the user into the search box; and
displaying, by the email client application in the user interface, search results returned by the search application in response to the search query, the search results comprising data associated with the at least one web-based application, wherein the data associated with the at least one web-based application includes only data to which the user has security rights.
2. The method of claim 1, wherein the search results are displayed in the user interface within a pane that is adjacent to the list of e-mail folders.
3. The method of claim 1, wherein the search results are presented in a webpage hosted by the server computer system which is displayed within the user interface.
4. The method of claim 1, wherein the search results comprise a summary of the data from the one or more web-based applications.
5. The method of claim 1, wherein search results that comprise data associated with multiple web-based applications are categorized by web-based application.
6. The method of claim 1, wherein the plurality of web-based applications comprises business applications that are accessible by the user via a web-browser application of the client computer.
7. The method of claim 1, further comprising:
in response to selection by the user of a search result associated with a respective web-based application, accessing the respective web-based application via a web-browser application of the client computer for allowing the user to access data included in the search result selected by the user.
8. A computer system comprising:
a processor for executing computer-executable instructions; and
memory storing computer-executable instructions for:
displaying a user interface of an e-mail client application, the user interface comprising a list of e-mail folders and a search box;
configuring the e-mail client application to connect to a search application hosted by a server computer system, wherein the search application is configured to obtain search results comprising data associated with a plurality of web-based applications and authenticate security rights to the search results;
receiving, by the e-mail client application, user input for selecting to search at least one web-based application of the plurality of web-based applications;
submitting, by the e-mail client application to the search application, a search query entered by a user of the computer system into the search box; and
displaying, by the email client application in the user interface, search results returned by the search application in response to the search query, the search results comprising data associated with the at least one web-based application, wherein the data associated with the at least one web-based application includes only data to which the user has security rights.
9. The computer system of claim 8, wherein the search results are displayed in the user interface within a pane that is adjacent to the list of e-mail folders.
10. The computer system of claim 8, wherein the search results are presented in a webpage hosted by the server computer system which is displayed within the user interface.
11. The computer system of claim 8, wherein search results that comprise data associated with multiple web-based applications are categorized by web-based application.
12. The computer system of claim 8, wherein the plurality of web-based applications comprises business applications that are accessible by the user via a web-browser application of the computer system.
13. The computer system of claim 8, wherein the memory further stores computer-executable instructions for:
in response to selection by the user of a search result associated with a respective web-based application, accessing the respective web-based application via a web-browser application of the computer system for allowing the user to access data included in the search result selected by the user.
14. A computer-readable storage device storing computer-executable instructions that, when executed by a processor of a computer system, cause the computer system to perform a method comprising:
displaying a user interface of an e-mail client application, the user interface comprising a list of e-mail folders and a search box;
configuring the e-mail client application to connect to a search application hosted by a server computer system, wherein the search application is configured to obtain search results comprising data associated with a plurality of web-based applications and authenticate security rights to the search results;
receiving, by the e-mail client application, user input for selecting to search at least one web-based application of the plurality of web-based applications;
submitting, by the e-mail client application to the search application, a search query entered by a user of the computer system into the search box; and
displaying, by the email client application in the user interface, search results returned by the search application in response to the search query, the search results comprising data associated with the at least one web-based application, wherein the data associated with the at least one web-based application includes only data to which the user has security rights.
15. The computer-readable storage device of claim 14, wherein the search results are displayed in the user interface within a pane that is adjacent to the list of e-mail folders.
16. The computer-readable storage device of claim 14, wherein the search results are presented in a webpage hosted by the server computer system which is displayed within the user interface.
17. The computer-readable storage device of claim 14, wherein the search results comprise a summary of the data from the one or more web-based applications.
18. The computer-readable storage device of claim 14, wherein search results that comprise data associated with multiple web-based applications are categorized by web-based application.
19. The computer-readable storage device of claim 14, wherein the plurality of web-based applications comprises business applications that are accessible by the user via a web-browser application of the client computer.
20. The computer-readable storage device of claim 14, further storing computer-executable instructions for:
in response to selection by the user of a search result associated with a respective web-based application, accessing the respective web-based application via a web-browser application of the computer system for allowing the user to access data included in the search result selected by the user.
US14/017,205 2007-06-29 2013-09-03 Business application search Abandoned US20140007261A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/017,205 US20140007261A1 (en) 2007-06-29 2013-09-03 Business application search

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/771,554 US8533176B2 (en) 2007-06-29 2007-06-29 Business application search
US14/017,205 US20140007261A1 (en) 2007-06-29 2013-09-03 Business application search

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/771,554 Continuation US8533176B2 (en) 2007-06-29 2007-06-29 Business application search

Publications (1)

Publication Number Publication Date
US20140007261A1 true US20140007261A1 (en) 2014-01-02

Family

ID=40161812

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/771,554 Active 2028-10-16 US8533176B2 (en) 2007-06-29 2007-06-29 Business application search
US14/017,205 Abandoned US20140007261A1 (en) 2007-06-29 2013-09-03 Business application search

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/771,554 Active 2028-10-16 US8533176B2 (en) 2007-06-29 2007-06-29 Business application search

Country Status (1)

Country Link
US (2) US8533176B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11360828B2 (en) * 2014-07-08 2022-06-14 Able World International Limited Method for combining unified matters in personal workspace and system using the same

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825509B2 (en) * 2009-10-23 2014-09-02 Salesforce.Com, Inc. System, method and computer program product for leveraging a customer relationship management system to send meeting invitations
US8515979B2 (en) * 2010-06-18 2013-08-20 Verizon Patent And Licensing, Inc. Cross application execution service
US9519726B2 (en) * 2011-06-16 2016-12-13 Amit Kumar Surfacing applications based on browsing activity
EP2811431A1 (en) * 2012-01-31 2014-12-10 IPS Co., Ltd. Mobile terminal management server, and mobile terminal management program
US10417649B2 (en) * 2012-09-28 2019-09-17 Oracle International Corporation Business process global searching
US9569536B2 (en) 2013-12-17 2017-02-14 Microsoft Technology Licensing, Llc Identifying similar applications
US10078668B1 (en) * 2014-05-04 2018-09-18 Veritas Technologies Llc Systems and methods for utilizing information-asset metadata aggregated from multiple disparate data-management systems
US10635645B1 (en) 2014-05-04 2020-04-28 Veritas Technologies Llc Systems and methods for maintaining aggregate tables in databases
US11138365B2 (en) 2018-02-02 2021-10-05 International Business Machines Corporation Pagination of data filtered after retrieval thereof from a data source

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020186240A1 (en) * 2000-12-05 2002-12-12 Peter Eisenberger System and method for providing data for decision support
US20030130993A1 (en) * 2001-08-08 2003-07-10 Quiver, Inc. Document categorization engine
US20030148775A1 (en) * 2002-02-07 2003-08-07 Axel Spriestersbach Integrating geographical contextual information into mobile enterprise applications
US6711569B1 (en) * 2001-07-24 2004-03-23 Bright Planet Corporation Method for automatic selection of databases for searching
US20040133564A1 (en) * 2002-09-03 2004-07-08 William Gross Methods and systems for search indexing
US20040255239A1 (en) * 2003-06-13 2004-12-16 Ankur Bhatt Generating electronic reports of data displayed in a computer user interface list view
US20050050028A1 (en) * 2003-06-13 2005-03-03 Anthony Rose Methods and systems for searching content in distributed computing networks
US20060112081A1 (en) * 2004-11-23 2006-05-25 Microsoft Corporation Storing searches in an e-mail folder
US20060277210A1 (en) * 2005-06-06 2006-12-07 Microsoft Corporation Keyword-driven assistance
US20070011147A1 (en) * 2005-06-22 2007-01-11 Affiniti, Inc. Systems and methods for retrieving data
US20070070066A1 (en) * 2005-09-13 2007-03-29 Bakhash E E System and method for providing three-dimensional graphical user interface
US20070088687A1 (en) * 2005-10-18 2007-04-19 Microsoft Corporation Searching based on messages
US20080033954A1 (en) * 2006-08-07 2008-02-07 Brooks David A Method and system for securing application information in system-wide search engines
US20080126551A1 (en) * 2006-07-31 2008-05-29 Christopher Conner CIMOM abstraction layer

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5564043A (en) * 1994-03-24 1996-10-08 At&T Global Information Solutions Launching computer program upon download of data created by program
US6594654B1 (en) * 2000-03-03 2003-07-15 Aly A. Salam Systems and methods for continuously accumulating research information via a computer network
US6900807B1 (en) 2000-03-08 2005-05-31 Accenture Llp System for generating charts in a knowledge management tool
US6353448B1 (en) * 2000-05-16 2002-03-05 Ez Online Network, Inc. Graphic user interface display method
US6523021B1 (en) * 2000-07-31 2003-02-18 Microsoft Corporation Business directory search engine
US7359951B2 (en) 2000-08-08 2008-04-15 Aol Llc, A Delaware Limited Liability Company Displaying search results
TW515955B (en) * 2001-08-30 2003-01-01 Inventec Corp Authorized data reading method and system thereof
US7047502B2 (en) 2001-09-24 2006-05-16 Ask Jeeves, Inc. Methods and apparatus for mouse-over preview of contextually relevant information
US6944610B2 (en) * 2001-10-31 2005-09-13 Bellsouth Intellectual Property Corporation System and method for searching heterogeneous electronic directories
US7177862B2 (en) 2002-03-28 2007-02-13 International Business Machines Corporation Method and structure for federated web service discovery search over multiple registries with result aggregation
US7133867B2 (en) * 2003-02-13 2006-11-07 Sap Aktiengesellschaft Text and attribute searches of data stores that include business objects
US8001088B2 (en) * 2003-04-04 2011-08-16 Avid Technology, Inc. Indexing media files in a distributed, multi-user system for managing and editing digital media
US7007229B2 (en) * 2003-04-11 2006-02-28 Sas Institute Inc. Computer-implemented system and method for web-based data access
US7644065B2 (en) * 2003-08-18 2010-01-05 Sap Aktiengesellschaft Process of performing an index search
US20050149496A1 (en) 2003-12-22 2005-07-07 Verity, Inc. System and method for dynamic context-sensitive federated search of multiple information repositories
US20050216295A1 (en) 2004-02-27 2005-09-29 Abrahamsohn Daniel A A Method of and system for obtaining data from multiple sources and ranking documents based on meta data obtained through collaborative filtering and other matching techniques
WO2005096174A1 (en) 2004-04-02 2005-10-13 Health Communication Network Limited Method, apparatus and computer program for searching multiple information sources
US7487446B2 (en) * 2004-11-10 2009-02-03 Microsoft Corporation Using a word processor with accounting data
US20070112758A1 (en) * 2005-11-14 2007-05-17 Aol Llc Displaying User Feedback for Search Results From People Related to a User
US7716240B2 (en) * 2005-12-29 2010-05-11 Nextlabs, Inc. Techniques and system to deploy policies intelligently
US8024235B2 (en) * 2006-06-21 2011-09-20 Microsoft Corporation Automatic search functionality within business applications
JP2008112250A (en) * 2006-10-30 2008-05-15 Fujitsu Ltd Report management device, report management program and report management method
US20080154994A1 (en) * 2006-12-22 2008-06-26 Sap Ag Managing aged index data for a database

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020186240A1 (en) * 2000-12-05 2002-12-12 Peter Eisenberger System and method for providing data for decision support
US6711569B1 (en) * 2001-07-24 2004-03-23 Bright Planet Corporation Method for automatic selection of databases for searching
US20030130993A1 (en) * 2001-08-08 2003-07-10 Quiver, Inc. Document categorization engine
US20030148775A1 (en) * 2002-02-07 2003-08-07 Axel Spriestersbach Integrating geographical contextual information into mobile enterprise applications
US20040133564A1 (en) * 2002-09-03 2004-07-08 William Gross Methods and systems for search indexing
US20050050028A1 (en) * 2003-06-13 2005-03-03 Anthony Rose Methods and systems for searching content in distributed computing networks
US20040255239A1 (en) * 2003-06-13 2004-12-16 Ankur Bhatt Generating electronic reports of data displayed in a computer user interface list view
US20060112081A1 (en) * 2004-11-23 2006-05-25 Microsoft Corporation Storing searches in an e-mail folder
US20060277210A1 (en) * 2005-06-06 2006-12-07 Microsoft Corporation Keyword-driven assistance
US20070011147A1 (en) * 2005-06-22 2007-01-11 Affiniti, Inc. Systems and methods for retrieving data
US20070070066A1 (en) * 2005-09-13 2007-03-29 Bakhash E E System and method for providing three-dimensional graphical user interface
US20070088687A1 (en) * 2005-10-18 2007-04-19 Microsoft Corporation Searching based on messages
US20080126551A1 (en) * 2006-07-31 2008-05-29 Christopher Conner CIMOM abstraction layer
US20080033954A1 (en) * 2006-08-07 2008-02-07 Brooks David A Method and system for securing application information in system-wide search engines

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11360828B2 (en) * 2014-07-08 2022-06-14 Able World International Limited Method for combining unified matters in personal workspace and system using the same
US20220253344A1 (en) * 2014-07-08 2022-08-11 Able World International Limited Method for combining unified matters in personal workspace and system using the same
US20220253343A1 (en) * 2014-07-08 2022-08-11 Able World International Limited Method for combining unified matters in personal workspace and system using the same
US11599398B2 (en) * 2014-07-08 2023-03-07 Able World International Limited Method for combining unified matters in personal workspace and system using the same
US11656921B2 (en) * 2014-07-08 2023-05-23 Able World International Limited Method for combining unified matters in personal workspace and system using the same

Also Published As

Publication number Publication date
US20090006330A1 (en) 2009-01-01
US8533176B2 (en) 2013-09-10

Similar Documents

Publication Publication Date Title
US8533176B2 (en) Business application search
US10545976B2 (en) Automated presentation of information using infographics
US9965747B2 (en) Case management system
US20190272293A1 (en) Automated creation and delivery of database content
US9606970B2 (en) Web browser device for structured data extraction and sharing via a social network
US7702636B1 (en) Federated system and methods and mechanisms of implementing and using such a system
KR101168705B1 (en) Customized and intellectual symbol, icon internet information searching system utilizing a mobile communication terminal and IP-based information terminal
US20090282062A1 (en) Data protection and management
US20090172024A1 (en) Systems and methods for collecting and analyzing business intelligence data
US20100299326A1 (en) Apparatuses, Methods and Systems For A Forum Ferreting System
US20080244065A1 (en) Chronology display and feature for online presentations and web pages
US20020103737A1 (en) Marketing collateral repository and supporting data management and communication environment
US20120265744A1 (en) Knowledge-based e-catalog procurement system and method
US20070198488A1 (en) Rapid item data entry for physical items in the control of a user in an item data management server
US20070038641A1 (en) Systems and methods for automated application updating
EP2264664A1 (en) Marketing asset exchange
US8095873B2 (en) Promoting content from one content management system to another content management system
US20090198668A1 (en) Apparatus and method for displaying documents relevant to the content of a website
US9594805B2 (en) System and method for aggregating and integrating structured content
US20090199158A1 (en) Apparatus and method for building a component to display documents relevant to the content of a website
Hancock et al. Practical Business Intelligence with SQL Server 2005
Bellinaso et al. ASP. NET Website Programming: Problem-Design-Solution, Visual Basic
US10180975B2 (en) Methods and a computing device for carrying out data collection
US20050120299A1 (en) System and method for creation of a network server application page
US7440934B2 (en) Method and system for decomposing and categorizing organizational information

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034544/0541

Effective date: 20141014

AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PANDEY, PRABHAT;JINDAL, SACHIN;TYAGI, NEELKAMAL;AND OTHERS;REEL/FRAME:036024/0039

Effective date: 20070730

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION