Development Tools for Microsoft Dynamics SL
Collapse the table of content
Expand the table of content

Development Tools for Microsoft Dynamics SL

Dynamics CRM 4.0
 

July 2004

Applies to:
   Microsoft Dynamics SL

Summary: Developers can use various development tools to integrate and customize third-party applications with Microsoft Business Solutions–Solomon. If you are a developer working for a Microsoft Business Solutions independent software vendor (ISV), you can use these tools to integrate an existing application with Solomon or to develop customized applications for vertical markets. (27 printed pages)

Contents

Overview
Introduction to Solomon
Intended Audience
Architecture
Choosing a Tool
Developing a New Application
Customizing Windows
Enabling a Real-Time Integration
Completing a Batch Integration
Understanding the Tools
Customization Manager with VBA
Solomon Tools for Visual Basic
Solomon Object Model
Transaction Import
ODBC Drivers
Business Portal SDK

Overview

This technical article briefly describes architecture, summarizes the features and benefits of each Solomon development tool, and provides guidelines for choosing the right tool for various development tasks. The tools that you can use to develop for Solomon may vary depending on your status as an independent software vendor (ISV) or customer; therefore, you may not have access to all of the tools discussed in this technical article.

Several tools are available for developers to integrate and customize Solomon with third-party applications. These tools include the following:

  • Customization Manager with Microsoft Visual Basic for Applications (VBA)
  • Solomon Object Model
  • Solomon Tools for Visual Basic
  • Transaction Import
  • Open Database Connectivity (ODBC) drivers
  • Microsoft Business Solutions–Solomon Business Portal Software Development Kit (SDK)

MSDN Universal subscribers can obtain these development tools from the Solomon CD or download them from the MSDN subscriber downloads area!.

Introduction to Solomon

Solomon, an edition of Microsoft Business Solutions, is a comprehensive accounting and business management system. Designed for small to mid-sized organizations, the Solomon business management solution meets most common business needs in the areas of finance, project management, payroll, service, distribution, manufacturing, customer relationships, and e-business. Based on Microsoft Windows XP and Microsoft SQL Server™, Solomon integrates with Microsoft Project and Microsoft Business Solutions for Retail Management.

The following list summarizes the business needs that Solomon is designed to meet:

  • Project management
  • Financials
  • Payroll
  • Inventory and order processing
  • Field service
  • Analytics and reporting
  • E-commerce
  • Manufacturing
  • Human resource management

Using the tools described in this article, developers can customize Solomon modules for their customers or write applications that integrate with Solomon. For more information about the functionality of Solomon, visit the Microsoft Business Solutions Web site at http://www.microsoft.com/businesssolutions.

Intended Audience

This technical article is for software engineers developing applications that are designed to work with Solomon. The topics in this article are especially useful to independent software vendors (ISVs), although other developers may also find useful information here. Readers should have basic experience with programming for business applications and using data models.

Different tools require different skill sets. To complete simple integrations, such as importing data from a table or an Excel file, you need experience with Microsoft Office System applications, and experience with VBA is recommended. For many types of customization, experience with automation, project management, and development significantly aids in project completion. For the most complex projects, you need advanced programming skills and knowledge of the networks and operating systems supported by Microsoft Business Solutions. You should be familiar with the business logic implementation of your application and with extensible markup language (XML) coding, XML schemas, Structured Query Language (SQL) programming and procedures. You also should be familiar with scripting languages such as Microsoft Visual Basic Scripting Edition (VBScript).

Architecture

Solomon was designed with an open architecture, which means that there are a number of ways that its applications can be customized and integrated. At a high level, the architecture can be broken down into four basic components: the database layer, the data dictionary layer, the business logic layer, and the user interface layer.

Third-party applications can interact with Solomon at any of these four layers. Most integration should occur at the business logic layer, which ensures valid data and the best performance. Integrating with the database layer is complex and introduces the possibility that data will not be validated; modifying the user interface layer can reduce performance.

In the following diagram, the four layers of architecture are illustrated in the second column (Solomon Architecture). Pointing to each layer in the architecture are tools that you can use to integrate your external application with Solomon or to customize Solomon. These tools are described later in this article.

Click here for larger image.

Figure 1. Solomon architecture

Database Layer

Database-level integration allows direct access to the data and is supported by many development environments. However, this is the most difficult layer for integration because all of the data must be validated. The developer must understand what tables must be populated, what fields are required, and how to ensure that the data is error-free. Tools that can integrate at this layer are Solomon Tools for Visual Basic and Customization Manager with VBA. You also can use ODBC drivers for SQL Server.

Data Dictionary Layer

The data dictionary layer contains all of the resources used to define and create the Solomon data model in SQL Server. These resources are built into Solomon Tools for Visual Basic and include data types, fields, and tables.

Solomon Tools for Visual Basic and Customization Manager with VBA allow integration at the data dictionary layer. This integration is limited to creating new tables and adding new or existing fields to those tables. ISVs cannot add fields to existing tables within the Solomon data model. This method ensures that each customer installing Solomon begins with a clean database.

Business Logic Layer

You can use the business logic layer to take advantage of the internal code that is shipped with Solomon so that you don't need to spend time developing code that already exists.

You can use four tools to access the business logic layer:

  • The Solomon Object Model allows applications that are written in a Component Object Model (COM)-compliant language to automate the Solomon system and applications at the business logic layer. All data is validated as if an end user had entered it.
  • Solomon Tools for Visual Basic allows you to develop your own application and create your own business logic.
  • Customization Manager with VBA allows you to add additional business logic to the standard Solomon application. The standard business logic is supplemented and not replaced.
  • Transaction Import allows you to import data into the Solomon database while still enforcing the application's business logic.

User Interface Layer

The last layer for integration is the user interface. Of course, data can be entered manually into the windows of Solomon. But you can use Transaction Import to integrate data through the user interface and Customization Manager with VBA to customize the user interface. You also can use the Solomon Object Model to integrate at this level by automating the windows.

Integrating at this level enforces attributes like limits on data length, acceptable case for alphabetic characters, and certain formatting requirements.

Choosing a Tool

If you're a developer who is customizing or integrating third-party applications with Microsoft Business Solutions–Solomon, the following tools are available.

Development and Customization   Use these tools to create new applications that are based on Solomon or to customize existing applications to fit specific needs.

Integration   Use these to transfer data from one source to another. The Solomon business logic also can validate the data.

To help you determine which development tools to use, this section describes some common tasks that you may want to complete and defines the tools that are most appropriate for each task.

If you are developing a new application, be sure to read through all of the tasks in this section thoroughly. These tasks provide a summary of the modifications that you can make to Solomon. Each task includes references to the tools that you can use for the task.

For more information about each tool, see Understanding the Tools later in this article.

The following topics are discussed:

Developing a New Application

You can develop a new application that integrates with Solomon to meet the needs of a particular industry or vertical market. In this scenario, you are either starting to build a new application or rewriting an existing application.

Table 1.

For This TaskUse This Tool
Build a new application or rewrite an existing application, and then complete real-time or batch integration to Solomon.Use Microsoft Visual Studio .NET to write the application, and then connect to Solomon using the Solomon Object Model.
Create a rich-client, seamless integration with Solomon.Solomon Tools for Visual Basic
Create a new business component, query page, Web Part, or portal page for the Business Portal to integrate with Solomon.Visual Studio .NET, Rational XDE and its code generator, the Entity Relational Map Generator, and the Entity Association Map Generator to write the application, and then the Business Portal Software Development Kit (SDK) for integration.

Customizing Windows

You can modify the windows in Solomon to meet the specific needs of an industry, vertical market, or individual end user.

Rearranging Fields

You can rearrange the fields in an existing Solomon window, such as the Customer Maintenance window or the Invoice and Memo window. Fields can be rearranged to meet the needs of the customers who use your third-party application and Solomon within a certain industry or vertical market.

Table 2.

For This TaskUse This Tool
Rearrange fields in windows.Customization Manager with Microsoft Visual Basic® for Applications (VBA)

Adding Fields

You can add new fields and store additional data using an existing Solomon window. For example, you might track additional customer attributes in the Customer Maintenance window.

Table 3.

For This TaskUse This Tool
Add new fields.Customization Manager with VBA
Create custom lookups for the new fields.Customization Manager with VBA

Changing the Properties of a Field

You can change the default values for the properties of a field. For example, you might make the field a required field or hide the field from view.

Table 4.

For This TaskUse This Tool
Change the default value of a property.Customization Manager with VBA

Changing the Text Prompts

You can change the field labels on an existing Solomon window to meet the needs of a specific industry or customer. For example, in a medical setting you might change all occurrences of the term Customer to Patient.

Table 5.

For This TaskUse This Tool
Make changes in each window.Customization Manager with VBA

Adding Business Logic

To insert default data into a field as the end user opens a Solomon window or uses the TAB key to move to another field, you can add business logic to that window. However, the business logic of existing Solomon windows cannot be modified.

Table 6.

For This TaskUse This Tool
Make simple business logic additions.Customization Manager with VBA

Enabling Real-Time Integration

Several tools allow integrations in which data is written to and read from Solomon in real time. This means that you can continually update the Solomon databases, as new data is entered into your systems.

Reading Existing Data from Solomon

You manually can update your application's database from the Solomon database on a periodic basis, or you can write code in your application to automate reading from the Solomon database. For example, you might query a list of items for a Web site every time a Web page loads, or you might write code in your application that queries the current list price for an item that is stored in the Solomon database.

Table 7.

For This TaskUse This Tool
Read the data for any application.Open Database Connectivity (ODBC) drivers

Schema Help in Solomon Help identifies the tables that may be read by an application.
Read the data for any application that can start Solomon, open windows, and read the contents of the windows.Solomon Object Model
Read and display data in the Business Portal for any application.Visual Studio .NET, Rational XDE and its code generator, the Query Web Service, result viewers, and the Business Portal Software Development Kit (SDK).

Subscribing to Changes within Solomon Data

You can update your application's database as the Solomon end user makes changes within Solomon. For example, the end user might add or change a customer in the Customer Maintenance window or delete an existing vendor from the Vendor Maintenance window. To keep your data synchronized with the data stored in Solomon, you must create code to update your application's database as these changes occur in Solomon.

Table 8.

For This TaskUse This Tool
Watch for changes to selected records by either watching for user activity in the windows within Solomon or by placing watch triggers on the tables within Solomon.Customization Manager with VBA or Solomon Tools for Visual Basic

Both of these tools allow you to place watch triggers to watch for user interface activity or database activity and to cause other code to run whenever these triggers are fired.
Note   It is possible to place Structured Query Language (SQL) database triggers and access data through ODBC. However, this method is not recommended because you may need to make modifications for each product upgrade.

Writing Simple Data to Solomon

You can update basic setup data within Solomon.

Table 9.

For This TaskUse This Tool
Write to the Solomon database if the setup data is not complex and there is no need for intense data validation.ODBC drivers

Schema Help in Solomon Help describes the tables that your application may write to.
Interact with a Solomon window and not directly with the database.Solomon Object Model
Write data to the database that cannot be written using other tools.Solomon Tools for Visual Basic

Writing Transactions and Master Records to Solomon

You can update data within Solomon and validate the updated data using the Solomon business logic. For example, you might create new transactions within a Solomon module or you might create new master records such as Customers, Vendors, Accounts, or Employees.

Table 10.

For This TaskUse This Tool
Access the Solomon business logic through a COM interface.Solomon Object Model
Interface with a Solomon window directly.Solomon Object Model
Create a new business component, query page, Web Part, or portal page for the Business Portal to integrate with Solomon.Visual Studio .NET, Rational XDE and its code generator, the Entity Relational Map Generator, and the Entity Association Map Generator to write the application, and then the Business Portal Software Development Kit (SDK) for integration.
Note   Using ODBC for this task is not recommended. However, if you must write directly to the database tables using ODBC, information about common transaction and master records is available in Schema Help in Solomon Help.

Writing and Validating System Data

You can update data that requires complex data validation at a system level in Solomon. For example, you might want to access the next document number for a transaction record or update inventory allocations.

Table 11.

For This TaskUse This Tool
Write and validate system data.Solomon Object Model
Note   It is possible to write directly to the database tables using ODBC. However, this method is not recommended because you might need to make modifications for each product upgrade.

Completing a Batch Integration

Batch integrations allow you to import or export large batches of data that is collected over a period of time. Whereas with real-time integrations data is updated continually and automatically on a regular schedule, batch integrations are completed manually as they are needed. Several tools allow integrations in which data is written to and read from Solomon in batches.

Reading Existing Data from Solomon

You periodically can update your application's database based on information within the Solomon database. This can be done on a schedule using a scheduling tool, or can be initiated by the user.

Table 12.

For This TaskUse This Tool
Read the data into any application.ODBC drivers

Schema Help in Solomon Help identifies the tables that may be read by your application.
Place database triggers, and store the data either in temporary tables or in a text file until it is ready to be processed.SQL Server

Schema Help in Solomon Help identifies the tables that may be read by your application.
Pull data through the business logic and user interface into a COM-compliant application.Solomon Object Model
Watch for batch activity, such as posting or monthly reports, at the user interface level within Solomon.Customization Manager with VBA
Write data to the database that cannot be written using other tools.Solomon Tools for Visual Basic

Writing Transactions and Master Records to Solomon

A common scenario is the need to pass a large number of transactions and master records to Solomon. To do this, your application must maintain a list of the records to be passed. Then your application must publish the list to a development tool. Finally, the tool must import the data into Solomon.

Table 13.

For This TaskUse This Tool
Complete batch mode integration to write validated data.Transaction Import

This tool either can insert new transactions or master records, or can update existing master records.
Write validated data to Solomon in batch mode through a COM interface to the Solomon business logic.Solomon Object Model
Write data to the database that cannot be written using other tools.Solomon Tools for Visual Basic
Note   Using ODBC for this task is not recommended. But if you need to write directly to the SQL Server tables through ODBC, information about common transaction and master records is available in Schema Help in Solomon Help.

Understanding the Tools

Solomon tools support interconnected business solutions for the back office, front office, and e-business. Solomon allows you to write integrated applications, to move data from existing sources to your applications, and to modify each customer's application to meet specialized needs.

To validate the integrity of data from integrated applications, most of the tools can access Solomon business logic. The business logic restricts or qualifies data as it is transferred to the Solomon database. This ensures that only data that meets your criteria will be committed to the database. Customizing business logic allows you to map and transform data, to define events triggering functionality, to execute commands, to provide feedback to the user or error log, and to accept input from the user. Developers can call existing business logic, write new business logic, or modify existing business logic. Scripting in Microsoft Visual Basic for Applications (VBA) is used to define the logic. (Note that a scripting language called Basic Scripting Language was used instead of VBA in earlier versions of Solomon.)

Customization Manager with VBA

Customization Manager with VBA is a custom development tool to modify the appearance and functionality of existing Solomon applications and of applications that are based on Solomon.

Customization Manager with VBA supports a limited set of customizations. They include inserting, moving, hiding, or adding fields; changing the tab order of the controls in a window; adding or modifying business logic through a scripting language; and integrating with external systems or data.

Advantages of Customization Manager with VBA

The following table lists the advantages that Customization Manager with VBA provides for customizing Solomon applications.

Table 14.

BenefitDescription
SecurityCustomization Manager with VBA provides two important security features. First, you grant users explicit levels of customization permissions. Users will not be able to change window elements that they do not have adequate permissions to change. Second, compiled and uncompiled code is stored in the Solomon database to restrict user access.
VBA and COM foundationsCustomization Manager with VBA uses VBA and COM technologies. This foundation extends custom development, data sharing, and functionality to your other applications.
Flexible customization managementCustomization Manager with VBA provides the ability to copy customizations from one system to another. You can manage libraries of customizations, control deployment, and create packaged customizations to distribute to other sites.

Skills Needed to Use Customization Manager with VBA

Customization Manager with VBA is accessible to end users or people with limited development backgrounds. A graphical environment allows users to make simple changes. Developers who need to make extensive changes or add to the business logic require an intermediate or advanced understanding of the company's databases, scripting languages, and existing business logic.

Capabilities of Customization Manager with VBA

Customization Manager with VBA provides a graphical environment that allows you to modify windows. Customization Manager with VBA allows you to alter the appearance and behavior of an existing Solomon application in any of the following ways.

  • Change cosmetic features such as the colors, fonts, text, the assignment of tool tips, and graphics displayed within a window. A property window lets you select and adjust characteristics of window elements through a graphical interface. You can see the original property values for all controls and which properties can be customized. Fields may be added, modified, moved, set to a default, deleted, or protected. Examples include displaying a report on the screen in the same format and font as the printer will use, and replacing a field name such as Client with something more appropriate for a specific industry, such as Patient. Power users who have less restrictive levels of permissions may add tables and windows.
  • Automate a series of commonly combined or repetitive tasks. For example, with a single keystroke, the warehouse manager might confirm a shipment and recognize revenue. In this case, each function from separate windows would be combined into a single action.
  • Extend functionality by adding features that are not available from a standard version of Solomon. For example, developers might add a wizard to the Customer Maintenance window to assist users in creating and setting up new customer accounts.
  • Control other applications from Solomon. For example, using Microsoft Automation, the Solomon Budget Maintenance window might access the budgeting model of Microsoft Excel to create budget forecasts.
  • Read data that is not stored in Solomon by exchanging data with remote databases and applications. For example, a customer account in the Solomon Customer window might be updated with data from a Microsoft Access database.

You might consider using Customization Manager with VBA if your Solomon application requires minor customizations. The customer also can use Customization Manager with VBA to further customize the Solomon application. To manage customizations that your customers complete, you can use Customization Manager with VBA to set access permissions for various types of customization.

Solomon allows multiple customizations on the same application but only one customization at each permission level. The following table summarizes the permission types:

Table 15.

Permission TypeDescription
SelfOnly the user who created the customization can use the customization.
One UserOnly one specified user can use the customization. That user may be the person who created the customization or another user.
All UsersAll users of the system can use the customization.
SupplementalUsers cannot modify the customization after it has been deployed.

In addition to VBA-based customizations, Customization Manager with VBA previously supported a scripting language called Basic Scripting Language (BSL). For new customizations, BSL is not recommended. For existing customizations, VBA customizations and BSL customizations may coexist in one application. However, each customization must be at a different permission level. For example, in a single Solomon application, you could have a BSL customization that allows One User access and a VBA customization that allows All Users access.

If you need to complete extensive customization, add new features, or make significant functional modifications, consider using Solomon Tools for Visual Basic.

Related Tasks

Solomon Tools for Visual Basic

Using the custom development tool Solomon Tools for Visual Basic, you can design and create 32-bit component-based applications that are compatible with Visual Basic and Solomon.

Advantages of Solomon Tools for Visual Basic

The following table lists the advantages that Solomon Tools for Visual Basic provides for creating new Solomon applications or for modifying existing Solomon applications.

Table 16.

BenefitDescription
Familiar development environmentSolomon Tools for Visual Basic uses the Visual Basic development environment. Developers familiar with Visual Basic can take advantage of their existing development expertise.
VBA and COM foundationsSolomon Tools for Visual Basic uses VBA and COM technologies. This foundation extends custom development, data sharing, and functionality to your other applications.
Integrated access to SQL ServerSolomon Tools for Visual Basic includes components that provide an access layer to the SQL Server database application programming interfaces (APIs).
Customization Manager with VBA supportAny application that is created using Solomon Tools for Visual Basic can be modified using Customization Manager with VBA. This means that users can complete their own minor customizations without changing the source code.
Solomon Object Model supportApplications created using Solomon Tools for Visual Basic can be automated using the Solomon Object Model.
SecuritySolomon Tools for Visual Basic provides two important security features. First, customers can change only specific window elements and their properties. Second, the business logic is protected. It is compiled into the application and is not public.

Skills Needed to Use Solomon Tools for Visual Basic

Solomon Tools for Visual Basic supports complex integrations and requires intermediate or advanced development experience. A background with Solomon, database maintenance, Structured Query Language (SQL) commands, and a scripting language is helpful.

Capabilities of Solomon Tools for Visual Basic

Solomon Tools for Visual Basic allows application development in Visual Basic 6.0 Service Pack 5 or in Visual Basic 5.0 Service Pack 3. The resulting applications can have the same look and feel as Solomon. A fully documented API is available to assist with development. Solomon Tools for Visual Basic provides a set of add-ins, custom controls, type libraries, code and class modules, and a template project. Objects specific to Solomon appear on the tool palette along with the standard Visual Basic objects.

Applications developed using Solomon Tools for Visual Basic access the Solomon kernel, a dynamic-link library (DLL) that provides run-time services. The kernel services are referenced as a type library within Visual Basic. By providing access to the kernel, applications developed using Solomon Tools for Visual Basic can be modified (through customization tools including VBA and Customization Manager with VBA) without changing the underlying code source.

The specialized capabilities that Solomon Tools for Visual Basic provides include support for SQL Server database operations and for capabilities specific to Solomon development. Solomon window information automatically is bound to the SQL Server database object. Other utilities include the following:

  • Dictionary Browse automatically sets many of the control's properties by retrieving defaults from the data dictionary. These smart defaults mean developers or users do not have to manually set or know the values ahead of time.
  • Record Maintenance manages a database of SQL Server table names.
  • Field Maintenance manages data field definitions for the tables listed in Record Maintenance.
  • Generate Schema constructs table creation files that build SQL Server data tables and definition files for Visual Basic projects.

Developers can access Solomon API functions such as messaging functions, transaction commit and rollback, multicurrency management, and SQL Server database input/output (I/O). You can use the Transact SQL programming language of SQL Server for advanced operations that run exclusively on the Microsoft SQL Server™ 2000 Desktop Engine (MSDE 2000). You may develop your own SQL Server stored procedures. These procedures, along with any of the existing Solomon stored procedures, can be referenced in your applications. Other SQL Server capabilities that you can use in your customizations include forward and backward record navigation through the Solomon toolbar, field validation, and automated transaction rollback.

Keep in mind that Solomon Tools for Visual Basic is designed for significant customizations, adding new features, or making extensive functional modifications. If you or your users require only minor customization to your Solomon application, consider using Customization Manager with VBA instead.

Related Tasks

Solomon Object Model

The Solomon Object Model allows any Solomon window created with Solomon Tools for Visual Basic to be an object. Any COM-compliant application or programming tool may use the Solomon Object Model to integrate with any window in Solomon or to pass information to Solomon applications.

Advantages of the Solomon Object Model

The following table lists the advantages that the Solomon Object Model provides as a foundation for customizations and inter-application communications.

Table 17.

BenefitDescription
Duplicates user's actionsAny action that the user can complete can be programmatically duplicated through the Solomon Object Model.
Accessible through multiple languages and development environmentsYou can access the Solomon Object Model through any COM-compliant programming language. Either use a Solomon development tool (such as Solomon Tools for Visual Basic), or develop code in a common language like C# or C++. With this flexibility, you can work within your existing development expertise.
VBA customizationEmbedded VBA allows you to create customizations, such as accessing other applications, completing enhanced calculations, or completing table lookups. The Solomon Object Model supports Microsoft Automation from any internal or external COM-compliant tool. You can attach custom applications and specific business logic to any object in any window.

Skills Needed to Use the Solomon Object Model

To use the Solomon Object Model, intermediate or expert developer experience with Visual Basic or VBA is required. It is also helpful for developers to have COM programming experience. Solomon documentation is oriented for Visual Basic developers, and developers familiar with other languages should be able to translate the documentation into terms and concepts applicable to their own expertise.

Capabilities of the Solomon Object Model

The Solomon Object Model provides flexible architecture, allowing Solomon to incorporate a larger overall solution that uses components from multiple applications. The Solomon Object Model is implemented within Solomon Tools for Visual Basic architecture. It is also built into Solomon itself.

The Solomon Object Model is a generalized capability, inherited by any application that is developed with Solomon Tools for Visual Basic. The Solomon Object Model is not data-centric and does not provide direct access to Solomon data structures. Instead, it allows any Solomon window or custom window to be automated from any COM-compliant programming language, including the languages in Microsoft Visual Studio or Visual Studio .NET. The Solomon Object Model allows other applications that support VBA, such as the Microsoft Office System, to access and be accessed by Solomon windows. In addition, your application can incorporate business logic that you create using Customization Manager with VBA.

The Solomon Object Model only supports the ability to use Microsoft Automation; it is not a customization tool or an end-user tool. The Solomon Object Model is designed to programmatically replicate user actions and to issue commands. In a sense, the client application of the Solomon Object Model is simply an automated user.

Developers who are familiar with Visual Basic and other standard programming languages will recognize the Solomon Object Model's compliance to industry standards. The Solomon Object Model is based on the Solomon user interface, and many developers with COM and Solomon experience may already be familiar with many aspects of the model.

In Visual Basic, the Solomon Application Browser provides development support that lists the names of specific controls and properties in Solomon. After you load the appropriate Solomon object references in Visual Studio, you may use Solomon objects and data types in a project. The Developer's Guide to the Solomon Object Model fully documents the Solomon Object Model.

Related Tasks

Transaction Import

Transaction Import is an integration tool to transfer data and transactions from an external file into any Solomon window. Your company's existing business logic can validate imported data.

Advantages of Transaction Import

The following table lists the advantages that Transaction Import provides for importing data and transactions.

Table 18.

BenefitDescription
Standard with all Solomon installationsTransaction Import is inherent to all Solomon applications and provided in the standard System Manager module. Both developers and customers have access to the tool. The standard graphical interface provides a consistent means of defining data transfers.
Transaction integrityTransaction Import uses existing business logic rules to validate data. This provides transaction integrity because the same rules can be applied equally to all new data.

Skills Needed to Use Transaction Import

Transaction Import is intended for end users or people with limited development backgrounds. The graphical interface simplifies transferring data.

Developers who need to modify the business logic require an intermediate or advanced understanding of the company's databases, scripting languages, and existing business logic.

Capabilities of Transaction Import

Transaction Import allows you to import transactions into any Solomon window from comma- or tab-delimited text files. A Transaction Import window provides the interface for users to define the transfer. Alternatively, repetitive transactions may be saved as templates and reused. The transfer reads each line of data from the source file, optionally validates the data, and then sends the data to the target Solomon window. After the target window successfully accepts the data, the Solomon database saves the transaction.

Business logic can validate the data, filter it or apply test criteria, before or during the import process. If you validate during the transfer, missing data may be filled in or transactions may be filtered. If you validate after the transfer, the business logic will check the data as if the data had been entered manually. An error log will track any data that violates a rule and list why the data is invalid and also the line number of the invalid data in the source file. By following existing rules, Transaction Import ensures conformity to all data requirements. These data requirements might include customizations that you or another user has implemented.

Transaction Import can be used in one of two ways:

  • Transaction Import may be scheduled to run, or not to run, automatically using the Solomon Application Server. This method allows routine and automatic import processes, such as for overnight processing for customers in different time zones. The tool can be launched from a batch or system script file. You can create macros to incorporate the import automatically as part of another process.
  • Transaction Import also may be launched explicitly as an independent application. This method allows you to import data on a one-time or infrequent basis. In this case, you might watch the database as it is updated. A log file will provide a list of errors encountered during the transfer.

Transaction Import is used either to convert information from a legacy system or to integrate Solomon with other line-of-business systems. Transaction Import is available in Solomon and in third-party applications that are developed using Solomon Tools for Visual Basic.

Related Tasks

ODBC Drivers

Open Database Connectivity (ODBC) drivers are integration tools used to connect client applications to ODBC-compliant databases. ODBC drivers allow applications to share data by using a common transfer protocol.

ODBC is an industry standard for accessing databases. Database sources may be from different manufacturers and have different data formats, but if the database implements ODBC, information can be imported or exported using other databases or applications. Specifically, ODBC drivers are libraries that implement ODBC API functions. Each driver is specific to a particular database management system.

Advantages of ODBC Drivers

The following table lists advantages that ODBC drivers provide as a foundation for transferring information between ODBC-compliant databases.

Table 19.

BenefitDescription
Industry standardODBC is an industry standard for exchanging information among databases. By complying with these standards, you do not need to learn new technologies or risk being locked into proprietary systems.
Data exchangeData from ODBC-compliant databases can be seamlessly imported or exported between applications. Many database manufacturers support this standard, ensuring that you can integrate with a wide range of systems.

Skills Required to Use ODBC Drivers

Developers who write applications that incorporate access to ODBC-compliant databases must have extensive knowledge of the table structure for the database. (Schema Help in Solomon Help defines the tables and fields of Solomon.) Developers should also have experience writing and maintaining databases. Developers must have an understanding of the ODBC driver interface and API functions.

Capabilities of ODBC Drivers

ODBC drivers control data import or export requests so that the information conforms to the owning system's data formats and structures. Systems require one or more drivers to process ODBC requests. They are generally installed during the respective product's installation and can be managed by the database or by the computer's operating system.

By default, Solomon uses the ODBC drivers installed by SQL Server for desktop workstations. For other databases, each manufacturer's driver capabilities vary, so check the documentation for details.

The drivers read from and write to database tables. Of the data integration options that Solomon provides, programming ODBC drivers is the most technically complex solution. Developers have direct low-level access to the database tables and must be experienced with database development.

For a definition of tables and fields that you can access with ODBC, see Schema Help in Solomon Help. For other data conversion options, see Transaction Import.

Related Tasks

Business Portal SDK

The Business Portal software development kit (SDK) provides development documentation and detailed technical information about the Business Portal business components, query pages, Web Parts, and portal pages. The resources in the SDK help you to produce products that integrate with the Business Portal and to customize Business Portal components. See MSDN Library for more information.

Advantages of the Business Portal SDK

The following table lists the advantages that the Business Portal SDK provides for custom application development.

Table 23.

BenefitDescription
Consolidated source of informationThe information required to integrate with the Business Portal business components, query pages, Web Parts, and portal pages is available in the Business Portal SDK.
Documented changesThe Business Portal SDK provides detailed information about changes between product releases.

Skills Needed to Use the Business Portal SDK

The information in the Business Portal SDK is intended to assist developers who are creating applications that integrate with the Business Portal or who are customizing implementations of the Business Portal. The information is technically detailed, and developers require extensive software development experience, database knowledge, and familiarity with the systems and business requirements for their products.

Capabilities of the Business Portal SDK

The Business Portal SDK describes creating and using business entities, entity maps, entity associations, the Query Web Service, Web Parts, portal pages, and using security. The SDK is for developers who use Microsoft Visual Studio .NET, the C# programming language, Rational XDE and its code generator, the Entity Relational Map Generator, and the Entity Association Map Generator for customizations and integrations. Users who are already familiar with the Business Portal development environment will find topics that describe changes from previous versions.

Components of the Business Portal SDK

The SDK includes the following topics:

Table 24.

TopicDetails Documented
Integration BasicsContains basic information that you should know before you begin developing integrations for the Business Portal.
  • Describes the basic types of integrations that you can create with the Business Portal SDK.
  • Introduces the Microsoft Business Framework.
  • Describes the various business components that you will create when developing integrations for the Business Portal.
  • Explains how to install the Business Portal SDK.
  • Describes the sample application included with the Business Portal SDK.
  • Describes the basic development process that you will use as you develop integrations for the Business Portal.
Business EntitiesDescribes how to create entities within business components for your Business Portal integration.
  • Describes entities and how they are used in business components.
  • Explains how to use Rational XDE to create models for entities.
  • Describes how to create a C# project and compile the source code to create a business component.
  • Explains how to create models for more complex entities.
Entity MapsDescribes how to create and use entity maps in your integration.
  • Introduces entity maps and describes how they are used in applications.
  • Explains how to use the Entity Relational Map Generator to create entity maps.
  • Describes some complex mapping scenarios you may need to use.
Entity AssociationsDescribes how the association information for entities is extracted from the UML models and used by the Business Portal.
  • Describes what entity association information is extracted from the UML models, and how it is used in the Business Portal.
  • Explains how to use the Entity Associations Mapping Tool to extract entity association information and package it in a form that can be used by applications.
SecurityDescribes how security features should be implemented in your Business Portal integration.
  • Describes how data permissions are used to provide and control access to data.
  • Explains how to use roles to control access to portions of your integration.
Query Web ServiceProvides an overview of the Query Web Service and explains how it is used in the Business Portal.
  • Describes the properties that can be set for elements in a model that affect how query results are retrieved and displayed in the Business Portal.
  • Explains how the Business Portal uses the Folder subsystem to manage and organize queries.
  • Provides information about the Create a Query wizard and explains the types of query restrictions that can be created with it.
Result ViewersDescribes how to set up and display Query Web Services query results in a result viewer.
  • Provides an overview of the six result viewers that are part of the Microsoft Business Framework.
  • Provides a description of the Primary Publishing List, including implementation details.
  • Provides a description of the Simple List, including implementation details.
  • Provides a description of the Rich List, including implementation details.
  • Provides a description of the Form Viewer, including implementation details.
  • Provides a description of the Card Viewer, including implementation details.
  • Provides a description of the Content Viewer, including implementation details.
Web Part CommunicationDescribes how Web Parts can communicate with each other inside the Business Portal.
  • Describes the primary method of communication for Web Parts provided by Windows SharePoint Services.
  • Describes the method of communication used in earlier versions of the Business Portal.
Portal PagesProvides an overview of the various types of portal pages you can create for your integration.
  • Gives an overview of the layout and content of a center page, including a description of the Web Parts that typically appear on a center page.
  • Provides an overview of the layout and content of an information page.
  • Gives an overview of query pages and explains how to create a query page.
  • Describes how to create back office pages that can access windows in your Great Plains third-party integration.
Web PartsProvides an overview of several Web Parts that can be created and displayed inside the Business Portal.
  • Gives an overview of summary Web Parts and provides guidelines on how to create them.
  • Explains how task Web Parts are used and provides implementation details.
  • Provides an overview of announcement Web Parts, including details on how to create them.
  • Describes how related information Web Parts are used and provides guidelines on how to create them.
Distributing IntegrationsExplains packaging Business Portal integrations for distribution so that they can be installed in other Business Portal installations.
  • Explains what components you need to include with your integration, and how to create package files for installation.
  • Describes a basic technique for installing a Business Portal integration.
  • Explains how you can use the Windows Installer service to install your Business Portal integration.
Online HelpExplains how to provide online help support for your integration.
  • Describes the folder structure used for online help content.
  • Explains the Help window that is used to display help content for the Business Portal.
  • Describes how to add items to the Help menu in the Business Portal.

Related Tasks

Show:
© 2016 Microsoft