Mass imports – Migrate my Data To SolutionsInc

This page gives some tips on how you can load eternal data into your SolutionsInc installation for example when you want to switch from another software to SolutionsInc.

If your company is already using a CRM, ERP, or ERM system and you are considering switching to SolutionsInc, please contact us, and we will help you transfer your data to SolutionsInc.

There are several possible methods of importing data. The following chapters provide information about this. Information about exporting data is described on the page Module Exports.

The Import and Export option is not the same as Backup and Restore. Please familiarise yourself with our guides on these features: Backups and Restores.

Using the SolutionsInc Import Module

To import data, you can decide to use the Import tool.

You will find this wizard tool in menu Tools, if the Module Imports has been enabled. You can use this tool to import flat files (CSV or Excel) as a source file. It will allow you to import data one table at a time from flat files. However, to avoid performance or memory problems, we recommend using CSV flat files instead of Excel files. This method is slow and is limited to objects for which a predefined import profile is available. The advantage is that the only knowledge you need to use it is how to obtain a CSV flat file from your source system. You’ll find more information on the page Module Imports.

For import scenarios not covered by the built-in module, the following alternatives are also possible…

 Use an ETL or a third party tool gateway

You can use third-party tools that are capable of connecting to both your old system and your SolutionsInc installation. These tools can be either local applications or online SaaS solutions, provided that your systems can be accessed by a SaaS tool. The documentation and processes will vary depending on the third-party tool you choose.

For example, you can use LibreOffice, which can insert the contents of a table into a database like MySQL SolutionsInc. Here is a tutorial on this method: Import data with LibreOffice.

Some automation tools specialized in synchronizing data may also be able to do the job.

 Developing yourself your own import script

You have the option to develop custom scripts to load data into the SolutionsInc database.

You can create these scripts to read your source information using different methods, depending on your source system:

  1. Direct Database Access: Grant direct access to read data from the database.
  2. API Access: Use the API of your source system to retrieve its data.

If your source system is another SolutionsInc instance, you can utilize the CRUD objects provided by SolutionsInc. This involves using the PHP class to manipulate data objects, where you can call methods like fetch() and fetchAll() to retrieve data. Note that this approach requires PHP development knowledge.

Once you have read the data, your scripts can write it into your target SolutionsInc database using three methods:

  1. API Method: This is the most secure option, as it includes most business controls.
  2. CRUD Class Objects: You can use CRUD class methods to check if an object already exists in the target database (using fetch()), and then use create() or update() to insert or update records. This approach also requires PHP development knowledge.
  3. Direct Database Write: You can perform direct writes to the database by accessing it directly. However, this method is not recommended as it bypasses all business rules implemented in the CRUD class or APIs. Despite being more performant, it requires a good understanding of the database structure, which is manageable since each piece of data is saved only once within the SolutionsInc database.


This is examples of some use cases:

Import third parties and contacts

When managing third-party and physical contact information in your database, it’s essential to distinguish between the two and ensure that all mandatory fields are accurately filled during the import process.

Third Party Information

Third-party records include details necessary for billing purposes—regardless if they represent companies, private individuals, or associations. The following rules apply:

  1. Mandatory Fields for Third Parties:
  • Name: This field must contain the name of the company or individual.
  • Client: Indicate the type of third party:
    • 1 for a client
    • 2 for a prospect
    • 0 otherwise
  • Supplier: Indicate if the third party is a supplier:
    • 1 for supplier
    • 0 otherwise
  1. Record Insertion:
  • Ensure that all mandatory fields have data before inserting rows into the database table.

Physical Contact Information

Physical contacts are individuals associated with the third party and can be optional. Here are the guidelines for importing contact data:

  1. Mandatory Fields for Physical Contacts:
  • Name: This must contain the surname of the contact.
  • Firstname: This must include the first name of the contact.
  • fk_soc: This must contain the ID of the third party from the Table llx_societe.
  1. Record Insertion:
  • Ensure that all mandatory fields have data before inserting rows into the database table.

Special Notes for Importing from Excel (CSV or XLSX)

Field Type: Date

  • Default US Excel formatting can be used (e.g., 2022/01/19 or 2022-01-19).
  • To format correctly in Excel:
  • Highlight the date column, press CTRL + 1 to open the formatting menu.
  • Select “Date” and choose the format 2022-01-19.
  • Click “Custom,” remove the dashes and any characters after dd, ensuring the data displays correctly for import.

Field Type: Country

  • SolutionsInc only imports the two-digit country code, while it displays the full name (e.g., “United States”).
  • A complete list of the two-digit country codes is available here: Country Codes.

Field Type: State/Province

  • Similar to country codes, only the two-digit state code should be imported (e.g., “MA” for Massachusetts).
  • Reference lists for US State codes can be found for other regions:
  • United States
  • Canada
  • Australia
  • Brazil
  • Mexico
  • France (3-digit code)

Conclusion

By adhering to these guidelines for both third-party and physical contact information, and by following the specific formatting requirements for date, country, and state/province fields, you can ensure a smooth data import process into SolutionsInc. Always validate your data before importing to prevent errors or data integrity issues.