Installation Instructions¶
Preparations¶
- Check that the requirements are met.
Installation¶
-
Add
addon-acd
as a dependency in your solution'spyproject.toml
file.If you run this on-premise with Lime CRM server version 2020.2 or later: Copy and run the below poetry command to add the python dependency to the solution.
poetry add addon-acd
A Restart of the Lime CRM server is required afterwards.
-
Build and deploy your solution.
- In the VBA editor of the Desktop Client, run
lip.Install "acd"
. - Download the LIP package for the provider that this installation is made against. The LIP packages can be downloaded from the latest release in this internal Lime Technologies link.
- In the VBA editor of the Desktop Client, run
lip.InstallFromZip
and pick the LIP package that you downloaded in the previous step. - Enter LISA and make sure that there is no extra, unnecessary blank option in the newly created option fields. If there is, delete it and make sure that the idstring for the deleted option is not set on any records in the Lime CRM database. If so, update all those records and instead set the idstring for the new default option (the one with
key = "empty"
). - In Lisa create a user
acd@lime
with at least Read, Write and Update permissions for the configured company limetype (needed for automatic updates). - Configure the add-on in Lime Admin and add Application config.
- Follow these instructions to install ACD for desktop client.
- Perform additional provider specific steps.
Desktop Client¶
The desktop app uses the same configuration as the web client but the following steps are required to enable the desktop version.
- Add LBS apps
addon_acd
andaddon_acd_modal
to your Actionpad apps folder. -
Use the following example in your
GeneralExplorerHandler
to highjack the new company command in Lime CRM (adjustcompany
if you are using another limetype):Private Sub m_Explorer_BeforeCommand(ByVal Command As CommandEnum, ByVal Parameter As Variant, Cancel As Boolean) On Error GoTo ErrorHandler If Not ActiveExplorer is Nothing Then If ActiveExplorer.Class.Name = "company" Then If Command = lkCommandNew Then Cancel = True Call AO_ACD.OpenDialog End If End If End If Exit Sub ErrorHandler: Call LC_UI.ShowError("GeneralExplorerHandler.m_Explorer_BeforeCommand") End Sub
-
Add following code to the comany actionpad to enable the status app on the company inpsector:
<div data-app="{app: 'addon_acd', config:{}}"></div>
Provider Specific Steps¶
Dun & Bradstreet Business Contacts¶
Use Both ACD and OBO¶
If OBO will be used along side with ACD, make sure to read how ID fields are handled here and follow the instructions below.
It is recommended to have separate ID fields for ACD and OBO. Let's call them acd_id
and obo_id
in this example. The trick is to make them collaborate with eachother so that you in OBO can update companies bought from ACD and vice versa.
- Since you already have some IDs in the
obo_id
field, these need to be copied into theacd_id
field. - Follow the steps for migrating from OBO to ACD, but this time do the ID fixing on the fresh
acd_id
field and let theobo_id
field be as it was. - Set
SQL for update
on both ID fields (obo_id
andacd_id
) in LISA according to instructions below. Remember to update field names in the example code to your actual field names.
obo_id¶
This is depending on from which Dun & Bradstreet database Swedish companies are bought. There are two options in the OBO GUI: "Sweden" and "Sweden [PARAD]". Using "Sweden" will give you a prefix 112:
and using "Sweden [PARAD]" will not give a country prefix at all. In order to be able to transform the ACD ID to a suitable ID for OBO, you must therefore decide if it should be without country prefix or with 112:
as prefix.
For using prefix 112:
for Swedish customers in OBO:
CASE
WHEN [company].[parid] = '' AND [company].[acd_id] <> ''
THEN
REPLACE([company].[acd_id], N'1:', N'112:')
ELSE [company].[parid]
END
For not using any prefix at all for Swedish customers in OBO:
CASE
WHEN [company].[parid] = '' AND [company].[acd_id] <> ''
THEN
REPLACE([company].[acd_id], N'1:', N'')
ELSE [company].[parid]
END
acd_id¶
CASE
WHEN [company].[acd_id] = '' AND [company].[parid] <> ''
THEN
CASE
WHEN CHARINDEX(':', [company].[parid]) > 0
THEN REPLACE([company].[parid], N'112:', N'1:')
ELSE N'1:' + [company].[parid]
END
ELSE [company].[acd_id]
END
Migrate From OBO to ACD¶
This is valid if OBO is no longer going to be used in the Lime CRM solution.
Since the country prefix might not be present at all (if you only have had access to Swedish companies through OBO, that could be the case) or it might be 112
instead of 1
for Sweden, you must migrate all IDs to match the ACD format. This means:
- If no country prefixes: Update the existing ID field to be equal to
"1:" + <existing id>
. - If country prefix for Sweden is
112
: For all records where the ID starts with"112:"
, replace"112:"
with"1:"
.