Repository.XFRACAS.ImportXFRACASXML

From ReliaWiki
Revision as of 17:14, 15 May 2014 by Chris Kahn (talk | contribs)
Jump to navigation Jump to search



Synthesis API allows the programmer to import XML files into XFRACAS. The page contains the logic of that importation. All XML files must first be in the XFRACAS format before they can be successfully imported. To view XFRACAS formats refer to the XFRACAS XML Import Documentation business logic contents.


This is different than the importing XML files directly into XFRACAS. If the programmer wishes to import files directly into XFRACAS instead of using Synthesis API, they should view the XFRACAS XML Import Documentation for the steps of that importation.

The ImportXFRACASXML method uploads an import byte array for processing and returns the system ID.

Syntax

  • ImportXFRACASXML( entityID As Integer, ImportType As XFRACASImportType , byteData As Byte(), fileTitle As String, fileDescription As String) As Integer

Parameters:

entityID:The ID of the entity to import into.
ImportType: The type of XFRACAS Import to utilize, specified as XFRACASImportType.
byteData: The byte array of the XML to import.
fileTitle: The file title of the XML file byte array to import.
fileDescription: A description of the XML to import.

Usage Example

Code Block

' Declare a new repository connection class. 
Private WithEvents MyRepository As New Repository
' Connect to the desired Synthesis repository. 
DimSuccessAs Boolean=False
Success = MyRepository.ConnectToSQLRepository("SQLServerPath", "SQLDatabaseName")
' Get the list of XFRACAS Entities in the current project in the connected repository. 
Dim ListOfXFRACASEntities() As NameIdPair
ListOfXFRACASEntities = MyRepository.GetAllXFRACASEntities()
' Search the Entities for the desired Entity name, to find the Entity ID 
Dim DesiredEntityID As Integer
       For Each Entity As NameIdPair In ListOfXFRACASEntities()
           If Entity.Name = "DesiredEntityName"
              DesiredEntityID = Entity.ID
              Exit For
           End If
       Next
' Define an serializable XML Object. 
Dim xmlObject As Object = Nothing
' populate the xmlObject with values to import 
' Define the byte array. 
DimbyteArray As Byte() = Nothing
' Serialize the xmlObject into the byteArray. 
Dim SerializeSuccess As Boolean
 SerializeSuccess = MyRepository.SerializeXMLObjectToByteArray(byteArray, xmlObject)
' Import the XML byte array into the entity desired.  In this example, we assume the XML object type describes an Incident. 
Dim ImportXMLSystemID As Integer
ImportXMLSystemID = MyRepository.ImportXFRACASXML(DesiredEntityID, XFRACASImportType.Incident, byteArray, "XMLFileTitle", "XMLFileDescription")


Reformatted Usage Example

Declare a new repository connection class.

       Private WithEvents MyRepository As New Repository

Connect to the desired Synthesis repository.

       Dim Success As Boolean = False
       Success = MyRepository.ConnectToSQLRepository("SQLServerPath", "SQLDatabaseName")

Get the list of XFRACAS Entities in the current project in the connected repository.

       Dim ListOfXFRACASEntities() As NameIdPair
       ListOfXFRACASEntities = MyRepository.GetAllXFRACASEntities()

Search the Entities for the desired Entity name, to find the Entity ID

       Dim DesiredEntityID As Integer
       For Each Entity As NameIdPair In ListOfXFRACASEntities()
           If Entity.Name = "DesiredEntityName"
              DesiredEntityID = Entity.ID
              Exit For
           End If
       Next

Define an serializable XML Object.

       Dim xmlObject As Object = Nothing
       'populate the xmlObject with values to import

Define the byte array.

       Dim byteArray As Byte() = Nothing

Serialize the xmlObject into the byteArray.

       Dim SerializeSuccess As Boolean
       SerializeSuccess = MyRepository.SerializeXMLObjectToByteArray(byteArray, xmlObject)

Import the XML byte array into the entity desired. In this example, we assume the XML object type describes an Incident.

       Dim ImportXMLSystemID As Integer
       ImportXMLSystemID = MyRepository.ImportXFRACASXML(DesiredEntityID, XFRACASImportType.Incident, byteArray, "XMLFileTitle", "XMLFileDescription")