Abstract:
A system and method for method facilitating design-time data binding of business object(s) and/or web service(s) is provided. Developer(s) can specify their own class(es) that do not require specific inheritance, interface implementation or default public constructors.The system includes a binding component that generates control information associated with control(s) based, at least in part, upon binding information associated with an entity (e.g., object, business object and/or web service). The system further includes a control generator that generates control(s) of a form associated with the entity based upon the generated by the binding component.The binding component can utilize public property(ies) of the entity (e.g., object, business object and/or web service). The entity can represent a hierarchy of objects that drill down (e.g., endlessly), including circular relationships.At design-time, a user (e.g., developer) can drag the root of an object (e.g., a business object and/or a web service) onto a form. Control(s) associated with the form are created by the system based on a schema of the object.
Abstract:
A synchronization framework is provided for synchronizing data groups between a server and clients that may go off-line. The framework includes a client sync provider component that interfaces to client storage in a storage format independent way, a sync agent component that collects synchronization metadata maintained by the clients and uploads and/or downloads changes to the data groups to and/or from server storage and a server sync provider component that interfaces via sync adapters to server storage independently of storage format. The framework provides default building blocks for building off-line synchronizing applications that behave according to default application synchronization scenarios, and also enables custom building blocks for custom off-line application synchronization scenarios.
Abstract:
A system and method for facilitating lookup control configuration is provided. The system incorporates the persistence of the metadata required to associate a field and a display value of a lookup list, and facilitates creation of a lookup type user interface control. Thus, a user (e.g., developer) can drag a lookup control to a design surface and set the relevant property(ies) on the control. The user can then drag lists of information onto the control to automatically set the properties of the lookup control to display the values of the list. The user can then run their application to see immediate results. Optionally, the user can leverage Smart tags to change the default values set to different values.
Abstract:
A system and method for a reentrant database object wizard is provided. The system provides the ability to compare a currently generated dataset to the objects of the underlying database. Columns and tables that are not common between both the dataset and the database are visually displayed for the user to make a decision on inclusion or exclusion. The system includes a comparison that provides comparison information based upon a comparison of a dataset to an associated database and a display component that displays the comparison information. The system further includes an input component which provides information associated with the user's decision on inclusion and/or exclusion of column(s) and/or table(s) to the system. The system is reentrant thus providing long-term value to the developer over the application development cycle.
Abstract:
A system and method that facilitate data access in a software development environment is provided. The system generates strongly typed objects that encapsulate raw, untyped data access logic and groups together like database commands in a common data access component. The system provides a mapping between database types and common language runtime data types including the impedance mismatch of null representations. The system configures data access component(s) that are employed at design-time to facilitate access to data object(s) by application(s) and allows a user of the configured data access component(s) to improve developer productivity and/or reduce the quantity of runtime errors introduced into code. The data access component can be instanced on multiple forms components and/or with the developer's own class(es). Thus, change(s) to a query and/or interface are accomplished within the data access component and be available to the forms components and/or object(s) that utilize the data access component.
Abstract:
A synchronization framework is provided for synchronizing data groups between a server and clients that may go off-line. The framework includes a client sync provider component that interfaces to client storage in a storage format independent way, a sync agent component that collects synchronization metadata maintained by the clients and uploads and/or downloads changes to the data groups to and/or from server storage and a server sync provider component that interfaces via sync adapters to server storage independently of storage format. The framework provides default building blocks for building off-line synchronizing applications that behave according to default application synchronization scenarios, and also enables custom building blocks for custom off-line application synchronization scenarios.
Abstract:
A system and method for system and method data binding to type(s) of object(s) is provided. The system can be employed in a software application development environment to facilitate data binding to types of entity(ies) rather than instance(s) of the entity(ies). The system includes a binding source component that supports the ability to set its data source to a type, rather then a specific instance. For example, when the data source is changed, the binding source component can evaluate whether the data source (e.g., object) can be instanced and whether the data source (e.g., object) supports necessary designer interface(s). If the type isn't supported by the designer, using reflection, the binding source component can interrogate the public properties of the type. Additionally, the binding source component can analyze complex object(s).
Abstract:
A transport agnostic synchronization protocol is provided for use in the context of loosely coupled clients. The synchronization protocol enables a stateless server freeing the server from maintaining synchronization state of ever scaling clients. A discoverability service is provided for clients to learn about different synchronization services for groups of data that the server provides such that the clients can choose or subscribe to synchronization groups of interest, and the protocol initializes the client with any schema of any data structures to which it subscribed that are unknown. Further, the protocol enables an extensible synchronization anchor model that carries an anchor type between client and server without requiring assumptions about client data structures allowing a wide spectrum of anchor data types and functionality.