ReliaSoft API Reference: Difference between revisions

From ReliaWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 7: Line 7:
</div>
</div>


The Synthesis Platform’s ''Application Programming Interface (API)'' enables you to programmatically connect your Synthesis applications and data with other systems and tools used within your organization. The API is written for Visual Basic for Applications (VBA) and .NET applications. This gives you the ability to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, as well as create custom applications for your organization.
The Synthesis Platform’s ''Application Programming Interface'' (API) enables you to programmatically read and write data to Synthesis repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization.  


'''Transfer and synchronize data via XML'''
Implementing the Synthesis API allows you to connect data in Synthesis repositories with the systems and tools used within your organization. It provides the functionality to:


For structured data (such as system hierarchies/BOMs, incidents and work orders) you can use XML files and the API to manage data transfer and synchronization between XFRACAS and variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in BlockSim.
*'''Transfer and synchronize data via XML'''
:Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s [http://xfracas.reliasoft.com/ XFRACAS] and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in [http://blocksim.reliasoft.com/ BlockSim].
*'''Read/write specific data elements'''
:Read or write data to Synthesis resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from Synthesis repositories, as well as load data into the Synthesis Data Warehouse (SDW).  
*'''Obtain calculated results'''
:Read data from published Synthesis models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time.
*'''Analyze data'''
:Use [http://weibull.reliasoft.com/ Weibull++'s] or [http://alta.reliasoft.com/ ALTA’s] analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a Synthesis API license.)


'''Input/output specific data elements and analyses'''


With the Synthesis API, you can read from or write data to Synthesis resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). You can initiate batch data processing and create custom solutions for importing/exporting data from Synthesis repositories, as well as load data into the Synthesis Data Warehouse (SDW).  
==Prerequisites==
The Synthesis API consists of a library file that contains the classes, methods and events that provide access to Synthesis applications. For VBA, you will use the '''SynthesisAPI.tlb''' file; for .NET, you will use the '''SynthesisAPI.dll''' file.


'''Obtain calculated results'''
To access these files, you must have the latest version of the Synthesis Platform installed and activated on your computer. The files are located in the folder where the Synthesis application is installed. By default, this folder is at "C:\Program Files\ReliaSoft\Synthesis 10". (For Version 9, it is "C:\Program Files\ReliaSoft\Synthesis 9".)


You can use the Synthesis API to read data from published Synthesis models and obtain calculated results such as the reliability, probability of failure, BX% life, failure rate and mean time.
If you plan to run API applications on a Windows server, you’ll need to run the Synthesis API Ante Service to allow clients to access the application (the service is not required when running API applications locally). The API Service may be installed on the server or on a different machine. For instructions on how to install and configure the service, see http://www.synthesisplatform.net/synthesis_ap_ante_service.htm.  


==Getting Started==
====Installing the Latest Version of Synthesis====
===Examples===
Choose '''File > Help > Check for Updates''' or download the latest version at http://www.ReliaSoft.com/synthesis/downloads.htm.
Tutorials are available to help you learn the core objects of the Synthesis API and start coding right away. The tutorials include code samples for both VBA and VB.NET. See [[API Tutorials]].
 
Note that for VBA, the bit version (32- vs. 64-bit) of the Synthesis Platform that you've installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See [http://www.reliasoft.com/support/rs20024.htm ReliaSoft KB article RS20024].)
 
====Using the Synthesis API Library Files====
To use the classes, methods and events in the Synthesis API object library, you must reference the library file to a project.
 
To reference the library in VBA:
#Enter the VBA environment by clicking the '''Visual Basic''' command on the Developer tab (If the Developer tab is not visible, see [https://msdn.microsoft.com/en-us/library/bb608625.aspx this Microsoft article]).
#In the VBA environment, choose '''Tools > References'''.
#Click '''Browse''' and find the SynthesisAPI.tlb file on your computer. Click '''OK'''.
 
To reference the library in Visual Studio:
#In the Solution Explorer, right-click the '''References''' node and choose '''Add References'''.  
#In the Reference Manager window, click the '''Browse''' tab and find the SynthesisAPI.dll file on your computer. Click '''OK'''.
 
:In addition, you must copy the following files from the Synthesis installation folder to your target folder (e.g., bin/Debug or bin/Release Folder).  


In addition, sample applications that you can test and tweak yourself are included with the Synthesis Platform installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples10\API. (For Version 9, see C:\Users\Public\Public Documents\ReliaSoft\Examples\API.) The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. To learn how, see this [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx Microsoft article].)
:*licncr.dll
:*licncr.dll.nsign
:*licshr.dll
:*licshr.dll.nsign
:*libeay32.dll
:*msvcp110.dll
:*msvcr110.dll
:*RSLM8nCodeDotNetWrapper.dll
:*utlibr.dll


===Prerequisites===


* Install the latest version of the Synthesis application. Choose '''File > Help > Check for Updates''' or download the latest version at http://www.ReliaSoft.com/synthesis/downloads.htm.
==Getting Started==


:Note that for VBA, the bit version (32- vs. 64-bit) of the Synthesis Platform that you've installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See [http://www.reliasoft.com/support/rs20024.htm ReliaSoft KB article RS20024].)
====Tutorials====
[[API Tutorials|Tutorials]] are available to help you learn the core objects of the Synthesis API and start coding right away. The tutorials include code samples for both VBA and VB.NET.


* Reference the Synthesis API object library. The object library is located in the folder where the Synthesis application is installed. By default, this folder is at "C:\Program Files\ReliaSoft\Synthesis 10". (For Version 9, it is "C:\Program Files\ReliaSoft\Synthesis 9".)  
====Examples====
Sample applications that you can test and tweak yourself are included with the Synthesis Platform installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples10\API. (For Version 9, see C:\Users\Public\Public Documents\ReliaSoft\Examples\API.)
The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See [http://office.microsoft.com/en-us/excel-help/enable-or-disable-macros-in-office-documents-HA010031071.aspx this Microsoft article].)  


:For VBA applications, use the SynthesisAPI.tlb library file. For .NET applications, use SynthesisAPI.dll.


:For help with referencing the library, see this simple [[Referencing_an_Object_Library|How-To Guide]].  
==Object Library ==
The Synthesis API is designed to closely follow the user interface of Synthesis desktop applications. For example, there is a class for every type of Synthesis resource and every type of FMEA record; there’s a class to represent a Weibull++ folio, and a class to represent the analysis settings that you might find in the folio’s control panel.  


==Object Library==
Below is a summary of the core objects in the Synthesis API library. For an alphabetical listing of all classes and enumerations, see [[API Reference Documentation]].  
Below are the core objects in the Synthesis API library. For an alphabetical listing of all classes and enumerations in the object library, see [[API Reference Documentation]].


*The <code>'''[[Repository Class|Repository]]'''</code> object represents the Synthesis repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files.  
*The <code>'''[[Repository Class|Repository]]'''</code> object represents the Synthesis repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files.  


*The following objects represent the Synthesis resources. Instances of each class can be used to store data for an existing or new resource. Note that the <code>cModel</code> class provides the methods for obtaining calculated results from a model, such as reliability, probability of failure, etc.
*The following objects represent the Synthesis resources. Instances of each class can be used to store data for an existing or new resource.
**<code>'''[[CAction Class|cAction]]'''</code>
**<code>'''[[CAction Class|cAction]]'''</code>
**<code>'''[[CCorrectiveTask Class|cCorrectiveTask]]'''</code>
**<code>'''[[CCorrectiveTask Class|cCorrectiveTask]]'''</code>
Line 55: Line 87:
**<code>'''[[CXfmeaControl Class|cXfmeaControl]]'''</code>  
**<code>'''[[CXfmeaControl Class|cXfmeaControl]]'''</code>  


*The following objects build data collections for the SDW: <code>'''[[RawData Class|RawData]]'''</code> represents a single data point, while <code>'''[[RawDataSet Class|RawDataSet]]'''</code> serves as the data container for the RawData objects.
*The following objects build data sets for the Synthesis Data Warehouse (SDW).
**<code>'''[[RawData Class|RawData]]'''</code> represents a single data point.
**<code>'''[[RawDataSet Class|RawDataSet]]'''</code> serves as the data container for <code>RawData</code> objects.


*The <code>'''[[XfmeaItem Class|XfmeaItem]]'''</code> object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration.  
*The <code>'''[[XfmeaItem Class|XfmeaItem]]'''</code> object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration.  
Line 64: Line 98:
**<code>'''[[XfmeaEffect Class|XfmeaEffect]]'''</code>
**<code>'''[[XfmeaEffect Class|XfmeaEffect]]'''</code>
**<code>'''[[XfmeaFailure Class|XfmeaFailure]]'''</code>
**<code>'''[[XfmeaFailure Class|XfmeaFailure]]'''</code>
*The <code>'''[[WeibullDataSet Class|WeibullDataSet]]'''</code> object represents a Weibull++ data sheet for life data analysis. Instances of this class are used define a data set and fit a statistical distribution to the data.
*The <code>'''[[ALTADataSet Class|ALTADataSet]]'''</code> object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data.
*The <code>'''[[WAPlots Class|WAPlots]]'''</code> object represents a plot based on a <code>cModel</code>, <code>WeibullDataSet</code> or <code>ALTADataSet</code> object. Instances of this class are used to display a plot of the analysis results.

Revision as of 00:17, 7 September 2016

APIWiki.png



The Synthesis Platform’s Application Programming Interface (API) enables you to programmatically read and write data to Synthesis repositories, as well as analyze and plot data sets from external sources. It is provided for Visual Basic for Applications (VBA) and .NET applications, allowing you to create automated solutions using popular Microsoft Office applications, such as Excel and PowerPoint, or create custom applications for your organization.

Implementing the Synthesis API allows you to connect data in Synthesis repositories with the systems and tools used within your organization. It provides the functionality to:

  • Transfer and synchronize data via XML
Use XML files to manage structured data (such as system hierarchies/BOMs, incidents and work orders) between ReliaSoft’s XFRACAS and a variety of different PLMs, ERPs, CMMS and other external systems. You can also use XML files to create reliability block diagrams (RBDs) in BlockSim.
  • Read/write specific data elements
Read or write data to Synthesis resources (models, actions, URDs, etc.), system hierarchy items and FMEA records (causes, effects, failures, etc.). Initiate batch data processing and create custom solutions for importing/exporting data from Synthesis repositories, as well as load data into the Synthesis Data Warehouse (SDW).
  • Obtain calculated results
Read data from published Synthesis models and obtain calculated results such as reliability, probability of failure, BX% life, failure rate and mean time.
  • Analyze data
Use Weibull++'s or ALTA’s analysis and plotting engines to analyze data from third-party sources, and incorporate the functionality into your own custom applications. (Requires a Synthesis API license.)


Prerequisites

The Synthesis API consists of a library file that contains the classes, methods and events that provide access to Synthesis applications. For VBA, you will use the SynthesisAPI.tlb file; for .NET, you will use the SynthesisAPI.dll file.

To access these files, you must have the latest version of the Synthesis Platform installed and activated on your computer. The files are located in the folder where the Synthesis application is installed. By default, this folder is at "C:\Program Files\ReliaSoft\Synthesis 10". (For Version 9, it is "C:\Program Files\ReliaSoft\Synthesis 9".)

If you plan to run API applications on a Windows server, you’ll need to run the Synthesis API Ante Service to allow clients to access the application (the service is not required when running API applications locally). The API Service may be installed on the server or on a different machine. For instructions on how to install and configure the service, see http://www.synthesisplatform.net/synthesis_ap_ante_service.htm.

Installing the Latest Version of Synthesis

Choose File > Help > Check for Updates or download the latest version at http://www.ReliaSoft.com/synthesis/downloads.htm.

Note that for VBA, the bit version (32- vs. 64-bit) of the Synthesis Platform that you've installed must match your installed version of Microsoft Office. If they do not match, you may see an error related to ActiveX controls. (See ReliaSoft KB article RS20024.)

Using the Synthesis API Library Files

To use the classes, methods and events in the Synthesis API object library, you must reference the library file to a project.

To reference the library in VBA:

  1. Enter the VBA environment by clicking the Visual Basic command on the Developer tab (If the Developer tab is not visible, see this Microsoft article).
  2. In the VBA environment, choose Tools > References.
  3. Click Browse and find the SynthesisAPI.tlb file on your computer. Click OK.

To reference the library in Visual Studio:

  1. In the Solution Explorer, right-click the References node and choose Add References.
  2. In the Reference Manager window, click the Browse tab and find the SynthesisAPI.dll file on your computer. Click OK.
In addition, you must copy the following files from the Synthesis installation folder to your target folder (e.g., bin/Debug or bin/Release Folder).
  • licncr.dll
  • licncr.dll.nsign
  • licshr.dll
  • licshr.dll.nsign
  • libeay32.dll
  • msvcp110.dll
  • msvcr110.dll
  • RSLM8nCodeDotNetWrapper.dll
  • utlibr.dll


Getting Started

Tutorials

Tutorials are available to help you learn the core objects of the Synthesis API and start coding right away. The tutorials include code samples for both VBA and VB.NET.

Examples

Sample applications that you can test and tweak yourself are included with the Synthesis Platform installation. The files are stored on your computer at C:\Users\Public\Public Documents\ReliaSoft\Examples10\API. (For Version 9, see C:\Users\Public\Public Documents\ReliaSoft\Examples\API.)

The sample applications are available for Excel VBA and VB.NET projects. (To run the Excel examples, macros must be enabled. See this Microsoft article.)


Object Library

The Synthesis API is designed to closely follow the user interface of Synthesis desktop applications. For example, there is a class for every type of Synthesis resource and every type of FMEA record; there’s a class to represent a Weibull++ folio, and a class to represent the analysis settings that you might find in the folio’s control panel.

Below is a summary of the core objects in the Synthesis API library. For an alphabetical listing of all classes and enumerations, see API Reference Documentation.

  • The Repository object represents the Synthesis repository. All other objects use the functions in this class to read or write data to the repository. This class also contains the functions for importing/exporting XML files.
  • The following objects build data sets for the Synthesis Data Warehouse (SDW).
    • RawData represents a single data point.
    • RawDataSet serves as the data container for RawData objects.
  • The XfmeaItem object represents a system hierarchy item. Instances of this class can be used to store data for a system or assembly, as well as build a multi-level system configuration.
  • The WeibullDataSet object represents a Weibull++ data sheet for life data analysis. Instances of this class are used define a data set and fit a statistical distribution to the data.
  • The ALTADataSet object represents an ALTA data sheet for accelerated life testing data analysis. Instances of this class are used to define a data set, and fit a distribution and life-stress relationship to the data.
  • The WAPlots object represents a plot based on a cModel, WeibullDataSet or ALTADataSet object. Instances of this class are used to display a plot of the analysis results.