This subsection is focused on explaining principles of using General BECS SOAP Service and its sample usage in BECS integration project describing them in two major sections:
1. General BECS SOAP Service principle…
2. How to use General BECS SOAP Service in project…
1.1 General info
Bentley Systems has its own integration platform called BECS, which implements official integration layer between world of Bentley applications and solutions and external world.
BECS is open and very powerful platform used in wide range of industrial areas and business scenarios. To enable any 3rd party system talk to BECS, it has now many ways how to start BECS visual project, from any message in variety Queues, via using message open standards (CCOM, MSDL…) to watch dog on folder and finally via REST or SOAP API call.
General BECS SOAP Service layer was designed as general way how to start integration via SOAP API call for any integration project.
Please do not forget, that BECS is driven by visual projects (called BECS Integration Project). To call any of the BECS integration projects you need to be able to send practically any possible attributes required by specific project. Having said this General BECS SOAP Service has implemented open input in a form of simple XML message with following general structure:
Sender
This parameter is normally checked in BECS Community Service to allow requesting only for proven requestors/ systems (free string).
CreateDate
In this attribute BECS consume date and time stamp, which can be used in later processing in BECS log and trace service.
Section “<ITEMS>”
This section is free section for capturing any project relevant inputs. It can be structured to simple <Item> nodes or consist of complex XML, which can be controlled against any agreed project schema (XSD). Behavior and structure of this section element strictly depends on used BECS Integration Project, so, please contact author of this project for details.
2.1 General intro
Project of Bentley – MuleSoft integration is simple project so using of General BECS SOAP Service is also very simplified. Of course, definitions can vary on project evolution.
Service is using following WSDL definition:
BecsGeneralServiceWSDL.zip (clicking the link automatically downloads the file)
Please be aware, that WSDL EndPoint depends on machine where the service is installed, so it needs to be changed to proper architecture every time!
BECS Integration Project called by General BECS SOAP Service is adapted exactly for requirements of this project. So please use following XML (sample data included!):
UpdatedInput.zip (clicking the link automatically downloads the file)
For calling of General BECS SOAP Service in this project please use following parameter values:
Sender
Use text “MuleSoft” (text is not controlled now by BECS).
CreateDate
Use actual system date and time definition in mask mm:dd:yyyy-hh:mm:ss
Where
Use “WHERE” part of eQL statement for sending filtering criteria
Note: please be aware that syntax needs to be proper with eQL definition and all attributes needs to exist in connected Bentley ALIM system.
Select
Use “SELECT” part of eQL statement for sending requested columns of returned data set.
Note: please be aware that syntax needs to be proper with eQL definition and all attributes needs to exist in connected Bentley ALIM system.
NumberOfRowsLimit
This numeric value drives the limit where BECS will return retrieved set of documents or Error in style “too many rows returned” with request to redefine WHERE filer.
General BECS SOAP Service is designed to return important information of the running project as well as BECS Integration Project specific values in a form of XML and STRING. General return structure is class “ProjectResult” as follows:
is always formatted with XML handling of possible special characters as follows:
is always formatted exactly same as are retrieved from destination Bentley application (consist of special characters if obtained).
General BECS SOAP Service returns following structure as a sample of testing call:
OutputSample.zip (clicking the link automatically downloads the file)