Note

 

This documentation supports the 20.19.02 version of BMC Helix Remedyforce.

To view the latest or an earlier version, select the version from the Product version menu.

Importing data from BMC Client Management by accessing the database


You can import data from BMC Client Management (known before version 12.0 as BMC FootPrints Asset Core) into BMC Remedyforce 2.0 by using the Pentaho Data Integration tool. The Pentaho packages for importing data from BMC Client Management are available on the BMC Communities website. For information about how configuration items (CIs) are imported and relationships are created in BMC Remedyforce CMDB 2.0, see Overview of how data is imported into BMC Remedyforce.

The following topics provide information about the Pentaho package for importing data by accessing the BMC Client Management database. The BMC Remedyforce job files are applicable only if a Microsoft SQL Server data source is used in BMC Client Management.

For information about importing data by using the Representational State Transfer (REST) web API, see Importing data from BMC Client Management by using the REST Web API.

Important

This Pentaho package for importing data by accessing the BMC Client Management database supports BMC Client Management versions 12.0 and later. For information about the BMC Client Management versions that BMC Remedyforce supports, see Supported browsers, mobile devices, and integrations.

Before you begin

Before you can import data from BMC Client Management by accessing the database, you must perform the following tasks:

To import data from BMC Client Management

 

Note

If you are running a combined job, update the KTR files of each job with the required BMC Client Management database and Salesforce organization credentials.

  1. To launch the Pentaho Data Integration tool, perform the following actions:

    1. Navigate to the location where you downloaded and unzipped the Pentaho Data Integration tool.

    2. Navigate to the data-integration folder and double-click the Spoon.bat file.

  2. In Pentaho Spoon, select File > Open, navigate to the folder where you downloaded the Pentaho package, and open the appropriate KJB file.
    For example, to import LAN Endpoint CIs into BMC Remedyforce CMDB, open the TransferAssetCoreLANEndPointinfotoCMDB.kjb file in the LANEndpoint folder.

  3. In the KJB file, right-click the Update BE table with Asset Core <CI type name> information step, select Open referenced object, and then select Transformation.

  4. Enter the information required to access the BMC Client Management database.

     Click here to see the detailed steps.
    1. In the Explorer pane, expand Database connections and double-click BMC Remedyforce FootPrints Asset Core Source.
    2. In the Database Connection window, enter the host name and the BMC Client Management database name, user name, and password.
      The host name is the name of the computer where the BMC Client Management database is installed.

      If Windows authentication is configured on the BMC Client Management database, the user name and password are not required when the logged-on user has access to the BMC Client Management database and runs the job from the Pentaho Data Integration tool that is installed on the BMC Client Management database server.

    3. (Optional) To verify the connection, click Test.
    4. To save your changes and close the window, click OK.
  5. Enter the information required to access your Salesforce organization.

     Click here to see the detailed steps.
    1. Double-click the Upsert into class <CI type name> step.
    2. In the Salesforce Upsert window, enter your Salesforce organization user name and password.
      BMC recommends that you do not change the default API version in the Salesforce Webservice URL.
    3. (Optional) To verify the connection, click Test connection and then click OK.
    4. To save your changes and close the window, click OK.
    5. Double-click the Salesforce Input[CMDB_Class] step and in the Salesforce Input window, repeat step 5b to step 5d.

    Important

    If you have enabled the setting to access your Salesforce organization from limited IP addresses, you must append the security token to your Salesforce organization password.

    For example, if the password for your Salesforce organization is mypassword and your security token is XXXXXXXXX, specify mypasswordXXXXXXXXX in the Password fields.

  6. (Optional) Update the predefined mapping between the BMC Client Management fields and the BMC Remedyforce CMDB.

     Click here to see the detailed steps.
    1. Double-click the Upsert into class <CI type name> step.
    2. In the Salesforce Upsert window, click Edit Mapping.
    3. In the Enter Mapping window, update mappings for fields based on your requirements.
      For information about updating the out-of-the-box mapping, see Field mapping in CMDB 2.0.
    4. To save your settings and close the Enter Mapping window, click OK.
    5. To save your changes and close the Salesforce Upsert window, click OK.

  7. To save the KTR and KJB files, click Save .
  8. In the KJB file tab, click Run this job .
  9. Perform one of the following actions based on the Pentaho version that you are using:

    Pentaho versionAction
    6.1In the Run Options window, click Run.
    6.0In the Execute a job window, click Launch.

    Data is imported into the appropriate CMDB class.

    Transformation status is depicted by using the following icons:

    • — Complete
    •   — Running
    • — Unsuccessful
  10. (Optional) To view logs, in the Execution results section, click the Logging tab.
    All errors are displayed in red.
    For the imported records, the Source field is set to BCM. You can use the Source field to generate reports and also when you enable and configure reconciliation. 

To schedule jobs to import data

On the BMC Communities website, the Pentaho packages for importing data from external data sources into BMC Remedyforce page contain a Scheduling Files folder. This folder contains a sample batch file that you can use as a base to create your batch files for scheduling data import. For more information about scheduling a job, see http://wiki.Pentaho.com/display/EAI/Kitchen+User+Documentation.

  1. Navigate to the folder where you have extracted the Pentaho package for which you want to schedule import jobs.
  2. Open the Scheduling Files folder and create a copy of the sample batch file, such as SchedulingComputerSystem.bat.
  3. Go to Start > Control Panel > Administrative Tools > TaskScheduler.
  4. In the Task Scheduler window, in the Actions area, click Create Basic Task.
  5. In the Create Basic Task Wizard, type the name and description of the task, and click Next.
  6. Select the appropriate option for starting the task, and click Next.
    For example, you can select Daily or When the computer starts as the option for starting the task.
  7. Configure the additional options for starting the task, and click Next.
    The additional options are displayed based on the option that you selected in step 7. For example, if you select the Daily option for starting the task, you must configure the start date and frequency at which you want to run the batch file.
  8. Select the Start a program radio button, and click Next.
  9. Click Browse to locate the batch file that you have created to schedule the job, and click Next.
  10. Select the Open the Properties dialog for this task when I click Finish check box, and click Finish.

User scenarios for importing data from BMC Client Management


David is a member of the Infrastructure team for Downtown Bank, responsible for managing the laptops for ABC project. He signs up for BMC Remedyforce and expects to use the pre-configured, ITIL based incident and problem management processes for managing CIs. Also, David wants to use the CMDB to represent the physical, logical, and conceptual items and to track the relationships between the different CIs. 

Charlotte, a BMC Remedyforce administrator, helps David to import details of the laptops provided to the team members of ABC project from BMC Client Management to BMC Remedyforce CMDB.

The following table provides user scenarios for importing data from BMC Client Management.

Data to be importedSteps to follow
  • Operating System
  • Processor
  • LAN Endpoint
  1. Run the \CombinedJobs\TransferAdvanced
    AssetCoreinfotoCMDB.kjb
     file.
  2. Go to Remedyforce CMDB and verify whether the entries
    are correct in the Relationships Editor of the following classes:
    • Operating System
    • Processor
    • LAN Endpoint
Operating system details of the laptops
  1. Run the \ComputerSystem\TransferAssetCoreCSinfotoCMDB.kjb file.
  2. Run the \OS\TransferAssetCoreOSinfotoCMDB.kjb file.
  3. Go to Remedyforce CMDB and open the Operating System class.
  4. Verify whether the entries are correct in the Relationships section
    in the Instance Editor of the Operating System class.
Processor details of the laptops
  1. Run the \ComputerSystem\TransferAssetCoreCSinfotoCMDB.kjb file.
  2. Run the \Processor\TransferAssetCoreProcessorinfotoCMDB.kjb file.
  3. Go to Remedyforce CMDB and open the Processor class.
  4. Verify whether the entries are correct in the Relationships
    Editor of the Processor class.
Product details of the laptops
  1. Run the \CombinedJobs\TransferAssetCoreComputer
    SystemAndProductinfotoCMDB.kjb
    file.
  2. Go to Remedyforce CMDB and open the Product class.
  3. Verify whether the entries are correct in the Relationships
    Editor of the Product class.

KJB and KTR files for importing data from BMC Client Management


The Pentaho packages contain job (KJB) and transformation (KTR) files that are created in the Pentaho Data Integration tool. The KJB files (jobs) and KTR files (transformations) store metadata in XML format. A KJB file contains a series of transformations that are run in a sequence. A KTR file contains a single transformation. The KJB (job) files retrieve data from external sources into BMC Remedyforce CMDB.

For information about the KJB and KTR files in the Pentaho packages for BMC Client Management, see KJB files in the Pentaho package and KTR files in the Pentaho package.

KJB files in the Pentaho package

The Pentaho package includes different KJB (job) files for importing different types of CIs, such as computer systems and LAN endpoints, from BMC Client Management. These job files are bundled with related files and provided to you in folders. The folder names correspond to CI types in BMC Remedyforce CMDB.

The following table provides information about the job files that you must run to import specific CI types to BMC Remedyforce CMDB:

Folder name(CI Type)

Job file

Description

Computer System

TransferAssetCoreCSinfo
toCMDB.kjb

Transfers information about the
BMC_ComputerSystem CI type

OS

TransferAssetCoreOSinfo
toCMDB.kjb

Transfers information about the
BMC_OperatingSystem CI type

Processor

TransferAssetCoreProcessor
infotoCMDB.kjb

Transfers information about the
BMC_Processor CI type

LANEndPoints

TransferAssetCoreLANEndPoint
infotoCMDB.kjb

Transfers information about the
BMC_LANEndpoint CI type

Product

TransferAssetCoreProduct
infotoCMDB.kjb

Transfers information about the
BMC_Product CI type.

Note: Depending on the organization size, running the Product job transfers large amounts of data to the Salesforce organization, which might lead to exceeding the organization storage limit.

Combined Jobs

  • TransferAdvancedAssetCoreinfo
    toCMDB.kjb

  • TransferAssetCoreComputerSystem
    AndProductinfotoCMDB.kjb

The Combined Jobs folder contains the following job files:

  • TransferAdvancedAssetCoreinfo
    toCMDB.kjb
    This file transfers information related to the BMC_ComputerSystem, BMC_OperatingSystem, BMC_Processor, and BMC_LANEndpoint CI types.
  • TransferAssetCoreComputerSystem
    AndProductinfotoCMDB.kjb
    This file transfers information related to the BMC_ComputerSystem and BMC_Product CI types.

KTR files in the Pentaho package

All job (KJB) files for importing data from specific CI types contain a series of transformations that are run in a sequence. Each transformation maps to a KTR file that is available, along with the KJB file, in the folder for each CI type. The KTR files contain mapping of the fields in BMC Client Management to the fields in the Remedyforce CMDB.

The following table provides information about the KTR files and the corresponding transformations that the KJB file for each CI type contains:

KTR file

Step

Description

None

Check If Delta Timestamp File Exists

Checks if any time stamp file exists.

The Pentaho package utilizes a time stamp file to determine which records were added or modified since the last time the job was run.

This step is used for incremental import. If a time stamp file does not exist, the Create the initial time stamp file step is run; otherwise, the Update BE table with Asset Core <CI type name> information step.

CreateInitialTimeStampedFile.ktr

Create the initial time stamp file

Creates the time stamp file to record the time of import.

This step is run only if you are importing for the first time or deleted the existing time stamp file.

TransferAssetCore<CI Type>infotoCMDB.ktr

Update BE table with Asset Core <CI type name> Information

Transfers data from BMC Client Management to the Base Element object of the BMC Remedyforce CMDB.

Store<CI Type>InfoTimestamp

Store the current timestamp

If the importing of data is successful, the time of import is saved.

The following table provides information about the steps that are included in the TransferAssetCore<CIType>infotoCMDB.ktr file (Update BE Table With Asset Core <CI type name> Information transformation). The Pentaho package runs these steps to transfer data from BMC Client Management into BMC Remedyforce CMDB. You can view these steps only when you open the KTR file in the Pentaho Data Integration tool.

Step

Description

Delta timestamp

Reads the saved time stamp.

Asset Core input

An SQL query that fetches information from BMC Client Management based on the stored time stamp.

Transform Asset Core variables

Facilitates JavaScript transformations, such as appending or trimming fields.

Update BE table with Asset Core <CI type name> information

Accepts the destination of the data, the credentials for the Salesforce organization where you want to save the imported data.

Salesforce Input[CMDB_Class]

Accepts the access details of the Salesforce organization to fetch the BMC Remedyforce CMDB classes details.

Success rows

Stores the rows that are imported successfully.

Failure rows

Stores the rows that are not imported, error code, error description, and error fields.


Troubleshooting

Mappings cannot be updated from the Salesforce Upsert window

In the Salesforce Upsert window, the drop-down fields listed in the Module field column in the Fields area might not display any values. In this case, you must update the mapping between the data from BMC Client Management and BMC Remedyforce CMDB by using the Edit Mapping option.

Data that is imported from BMC Client Management is corrupted

The job (KJB) files in the Pentaho package send a REST web API request to the BMC Client Management server to initiate the export of data to a .csv file. Each job file contains the list of BMC Client Management fields that are available by default in the .csv file.

If the data imported from BMC Client Management is corrupted or the import does not complete successfully, the .csv file that contains the data exported by BMC Client Management might have been modified. You might have added, deleted, or changed the order of fields in the .csv file. To resolve this issue, you must update the Pentaho jobs and map the fields and the order in which they are listed to the .csv file.

Perform the following actions to fix the corrupted data that is imported from BMC Client Management:

  1. Navigate to the location where you downloaded and unzipped the Pentaho Data Integration tool.
  2. To launch the Pentaho Data Integration tool, navigate to the data-integration folder.
  3. Double-click the Spoon.bat file and open the job (KJB) file that corresponds to the .csv file that you have updated.
    For example, if you have updated fields in the .csv file for computer system CIs, open the TransferAssetCoreCSinfotoCMDB.kjb file.
  4. In the job (KJB) file, right-click the Import Records in Remedyforce CMDB step, and select Open Referenced Object > Transformation.
  5. In the transformation (KTR) file that is opened, double-click the CSV file input step.
  6. In the CSV Input window, map the fields and the order in which they are listed to the .csv file that contains data from the BMC Client Management server.
  7. You can right-click a field and select an option such as Move up and Insert before this row.
  8. To save your changes, click OK.
  9. To save the KTR and KJB files, click .

Troubleshooting common issues when importing data

The following table describes the troubleshooting tips that you can use to resolve common issues that you might face when importing data.

 Error or issueApplies to the Pentaho package forDescription or procedure
Viewing logs of the import jobsAll

Log files are created in the folder where you have saved the KJB files. Success and failure rows files are also created in the same folder.

If a failure occurs, the error code and its description are provided in the failure row file. You can also use the failure row file to import data to Salesforce.

Not all records are importedAllDelete the delta time stamp file of the job that you ran, and run the job again.
Import failsAllIf you have upgraded to BMC Remedyforce Winter 17 (20.17.01), either you use the latest Pentaho packages updated on the BMC Communities or map a value to the Source field of the Base Element object. Also, ensure that you have Edit permission on the Source field of the Base Element object.
An "out of memory" error occursAll

While importing a large number of records, if you get the OutofMemoryError or Java heap size error message, increase the heap size in the Spoon.bat file.

  1. Navigate to the location where you downloaded and unzipped the Pentaho Data Integration tool.
  2. Navigate to the data-integration folder.
  3. Right-click the Spoon.bat file, and select Edit.
  4. Locate the following line and replace 512 with a higher value:
    If "%PENTAHO_DI_JAVA_OPTIONS%"==""
    set PENTAHO_DI_JAVA_OPTIONS=
    "-Xmx512m" "-XX:MaxPermSize=256m"
  5. Click Save.
  6. Relaunch the Spoon.bat file and rerun the job file.
A "too many script statements" error occursAllWhen you run an import, if you receive "Too many script statements" as an onscreen Apex error message or in an email, reduce the batch size by 10 in the Batch Size field in the Settings section on the Salesforce Upsert window.
Records are not being to your CMDB.AllRaise a case with Salesforce to create a custom index on the Assembly ID field of the Base Element object.
Importing users by using the failure rows file for LDAPLDAP server

A failure row file is a text file that is saved in the folder where you have saved your KJB files. Perform the necessary steps to remove the error provided for the failure rows in the failure rows file, and then import the data by using the following steps.

The following Pentaho packages provide a transformation file in the FailureRowsInput folder. You can use this transformation file for importing users from the failure rows file to the Salesforce organization.

To import data from the failure rows file

  1. Double-click and open the FailureRowsInput folder.
  2. Double-click and open the LDAP_FAILURE_ROWS_
    <YYYYMMDDHHMMSS>
    file.
    Where YYYYMMDDHHMMSS is the time stamp of the file.
    The first line in the file displays the header row and from the second line onward details of the failed import are displayed. 
  3. For each failed import record:
    1. Read the information under the headings Error Description, Error Fields, and Error Codes.
    2. Resolve the error.
  4. Open the FailureLDAP transformation file with the Spoon batch file of the Pentaho Data Integration tool.
  5. Double-click the Salesforce Upsert step, and enter your Salesforce organization username and password in the Connection section.
  6. (Optional) To verify the connection, click Test connection.
  7. Click OK.
  8. To save the FailureLDAP transformation file, click .
  9. Click .
  10. In the Execute a transformation window, click Launch.
Failed in writeToSalesForce: java.lang.IllegalArgumentException: The char '0x0' after 'Print' is not a valid XML characterAllSome unicode characters that cannot be parsed by the XML parser are present in any of the mapped fields. Either delete these characters in data or delete the mapping of such fields.
Unable to query SalesforceAllCheck your Salesforce organization credentials in the Salesforce Upsert and Salesforce Input(CMDB_Classes) steps.
The job does not appear in Atrium Integrator.BMC Atrium CMDBEnsure that you have saved your KTR and KJB files in a folder in Atrium Integrator.
Error setting value #2 [ARDelta_1 Integer] on prepared statement (Integer)BMC Atrium CMDBThis error is generated if multiple records are created in the BMC Remedy AR System NGIE:Delta form for the running transformation. Delete the additional ARDelta entries that are created for the error transformation file by deleting the records. To find the duplicate records for a transformation file, open the NGIE:Delta form in BMC Remedy AR System. In the TransName field, enter the transformation file name, and click Search.
Did not find Remedy Application Service password for server<server name> in UDM:RAppPassword Form on server <server name>BMC Atrium CMDBCheck your Atrium Server Connection credentials in the ARInput step.
'Oracle Database Server 10g Release 2' is not valid for the type xsd: <data type >BMC Atrium CMDBCheck the data type of the mapped fields in the Salesforce Upsert step.
Duplicate LAN Endpoint entries are created in BMC Remedyforce CMDB.BMC Client Management

In BMC Remedyforce Summer 15 Patch 1 and earlier versions, when you imported LAN Endpoint data from BMC Client Management, duplicate LAN endpoint entries might have been created in BMC Remedyforce CMDB. This duplicate data was created because of the following factors:

  • In BMC Client Management, a LAN endpoint could periodically obtain multiple IP addresses using DHCP.
  • In BMC Remedyforce Summer 15 and earlier, the Network Interface IP address was used as the unique source identifier for LAN endpoints imported from BMC Client Management.

In BMC Remedyforce Summer 15 Patch 1 and later versions, instead of the Network Interface IP address, the MAC address is used as the unique source identifier for the LAN endpoints imported from BMC Client Management, and new duplicate LAN endpoint entries are not created in BMC Remedyforce CMDB.

To resolve this issue, you must install the latest Pentaho package for BMC Client Management released with BMC Remedyforce Summer 15 Patch 1 or later. Also, you must manually delete any existing duplicate LAN endpoint entry on the Remedyforce CMDB. For more information, see Deleting configuration items.

The HTTP Status 404 error is displayed when trying to connect to Salesforce.All

Ensure that your Pentaho transformations connect to https://login.salesforce.com/services/Soap/u/<API version> instead of https://www.salesforce.com/services/Soap/u/<API version>.

Starting from January 1, 2016, Salesforce retired www.salesforce.com as an API endpoint. For more information, see the announcement on BMC Communities website. To view a video demonstration of how to update your Pentaho transformations, see Salesforce API Endpoint Retirement.

BMC Remedyforce has updated the API endpoint in the Pentaho packages that are currently available on the BMC Communities website.

Error connecting to your Salesforce organization when using version 5.4 of the Pentaho Data Integration Tool.All

Check whether the Require TLS 1.1 or higher for HTTPS connections Salesforce critical update is enabled in your organization.

Pentaho Data Integration Tool 5.4 does not support TLS 1.1 and cannot connect to your Salesforce organization if this Salesforce critical update is enabled in the organization.

To resolve this issue, perform one of the following actions:

  • Use version 6.1 of the Pentaho Data Integration Tool to import data from various data sources to BMC Remedyforce.
  • Deactivate the Require TLS 1.1 or higher for HTTPS connections Salesforce critical update in your Salesforce organization.
    For information about when the critical update will be automatically activated, see Salesforce Knowledge Article Number 000232871.

Error running the Pentaho packages.

In some cases, you might also not be able to open the Enter Mapping window by clicking Edit Mapping in the Salesforce Upsert window.

All

In the Pentaho packages provided by BMC Remedyforce, ensure that the API version in the Salesforce Webservice URL field in steps, such as Salesforce Upsert, is supported.

  • In the LDAP Pentaho packages, the default API version in the Salesforce Webservice URL field is 27 (https://login.salesforce.com/services/Soap/u/27).
  • In all other Pentaho packages, the default API version in the Salesforce Webservice URL field is 24 (https://login.salesforce.com/services/Soap/u/24).

In the Salesforce Upsert window, when you click Edit Mapping, the following error message is displayed:

Certain referenced fields were not found!

All

Perform the following steps to resolve this issue:

  1. In the Salesforce Upsert window, click Edit Mapping.
    The Certain referenced fields were not found! error message is displayed.
  2. To open the Enter Mapping window, click OK.
    The tool removes all referenced fields from the existing mappings. The Pentaho package provided by BMC Remedyforce includes only one referenced field, BMCServiceDesk__CMDB_Class__c. The CMDB_Class field is no longer available in the Mappings column.
  3. In the Source fields column, select CMDB_Class and click Add.
    When you move CMDB_Class from the Source field column to the Mappings column, the c in the field name is replaced with r. For example, BMCServiceDesk__CMDB_Class__c is replaced with BMCServiceDesk__CMDB_Class__r.
  4. (Optional) Update mappings for other fields based on your requirements.
    For information about updating the out-of-the-box mapping, see Field mapping in CMDB 2.0.
  5. To save your settings and close the Enter Mapping window, click OK.
  6. In the Salesforce Upsert window, in the Module field column in the Fields area, click BMCServiceDesk__CMDB_Class__r, and replace r with c.

  7. To save your changes and close the Salesforce Upsert window, click OK.

Related topics

Applying models while importing CIs and assets

Scheduling jobs to import data

Troubleshooting common issues when importing data

Troubleshooting issues when importing data from BMC Client Management

Known and corrected issues for Pentaho packages

Was this page helpful? Yes No Submitting... Thank you

Comments