Popis integrace s Microsoft SharePoint

Pokud vám nestačí systém modul Dokumenty, který obsahuje standardně eWay-CRM, nabízí se možnost využít integraci se systémem SharePoint, kdy se automaticky vytvářejí složky ve vašem SharePointu, do nichž můžete vstupovat přes odkaz v položkách společnosti, příležitosti nebo projekty.

Snadno se dostanete ke složce spojené se společností, příležitostí nebo projektem a tedy k dokumentům, které v danou chvíli potřebujete. V SharePoint pak s nimi pracujete, upravujete, ukládáte, atd.

Obsah

Jak to funguje?

Když se v eWay-CRM vytvoří Společnost, Projekt nebo Příležitost, na SharePointu ve vybraném adresáři vznikne složka. Odkaz na složku se vloží do uživatelského pole na daní položce v eWay-CRM.

Složky jsou rozděleny podle let a měsíců, kdy daná položky vznikla, aby byla struktura v SharePoint přehlednější.

Požadavky

Integrace s Microsoft SharePointem musí splňovat stejné požadavky jako pro fungování serverové eWay-CRM.

Je třeba mít Microsoft 365 účet a tím tedy přístup k SharePoint a Azure.

Pro integraci potřebujete následující eWay-CRM licence (více viz Srovnání plánů):

  • Basic Společnosti a Kontakty pro složky společností
  • Basic Obchod pro složky příležitostí
  • Basic Projekty pro složky projektů

Pro nasazení integrace je potřeba kontaktovat technickou podporu eWay-CRM.

Vygenerování certifikátu pomocí Git

  1. Nainstalujte Git (v CMD příkaz winget install Git.Git), protože s Gitem se nainstaluje i OpenSSL. Pozor WinGet je oficiálně podporován na Windows 10 (verze 1809 a novějších) a Windows 11.
  2. Spusťte Git Bash.

  1. V Git Bash spusťte OpenSSL a vygenerujte CRT certifikát:
openssl req -x509 -newkey rsa:4096 -sha1 -days 365 -nodes -keyout key.pem -out SharePointcertificate.crt

V záhlaví je cesta, kam se certifikát vytvoří, v tomto případě je to složka C:\Users\dcoufal.

  1. Vygenerujte z CRT certifikátu soubor typu PFX:
openssl pkcs12 -export -in SharePointcertificate.crt -inkey key.pem -out SharePointCertificate.pfx -password pass: {pfx_file_password}

kde {pfx_file_password} nahradíte heslem pro certifikát. PFX soubor se musí jmenovat SharePointCertificate.pfx.

Proces integrace

  1. Pokud již máte vygenerovaný certifikát z postupu výše, můžete postupovat podle následujících kroků.
  2. V Azure (https://portal.azure.com/) otevřete aplikaci Microsoft Entra ID.

  1. V levém menu zvolte záložku App registrations. Nahoře klikněte na New registration.

  1. Otevře se formulář, do kterého stačí vyplnit pouze název aplikace. Je třeba zvolit, aby aplikace byla Single tenant. Po vyplnění potvrdí vytvoření registrace tlačítkem Register.

  1. Po dokončení registrace aplikace by se měl otevřít detail aplikace, nebo se na něj lze prokliknout opět ze záložky App registrations.
  2. V detailu aplikace je třeba v levém panelu překliknout do záložky Certificates & secrets a v ní zvolit záložku Certificates, kde je vidět tlačítko Upload certificate.

  1. Po kliknutí na tlačítko se zobrazí formulář, kde je třeba nahrát vygenerovaný .CRT certifikát.
  2. Jako poslední se musí aplikaci přiřadit práva na přístup do API SharePointu, to se dělá opět v detailu aplikace v záložce API permissions z levého menu pomocí tlačítka Add a permission.

  1. Po kliknutí na tlačítko Add a permission se otevře nabídka, ve které musíte najít SharePoint a v něm Application permissions. V těchto právech zvolte Sites.ReadWrite.All a následně uložte tlačítkem Add permissions.

  1. Na závěr je třeba, aby práva v záložce API permissions potvrdil administrátor, aby byla označena jako Granted.

  1. V eWay-CRM Centru pro správu vytvořte nová vlastní pole typu Odkaz - URL v modulech Společnosti, Projekty a Příležitosti. Tato pole budou použita pro ukládání odkazů na vygenerované složky SharePointu. Pole je třeba mít ve formuláři daného modulu, abyste ho mohli vidět při každém otevření detailu položky.

  1. Následující kroky je třeba provést technickou podporou eWay-CRM: Stáhněte si konektor a vyplňte konfigurační soubor konektoru (viz dále).
  2. Nahrajte konektor a dříve vygenerovaný certifikát .pfx (SharePointCertificate.pfx) do adresáře klienta Apps\SharePointConnector. Pokud tato složka neexistuje, je třeba ji vytvořit a musí být pojmenována SharePointConnector.
  3. V eWay-CRM je třeba vytvořit API uživatele, který bude mít oprávnění k modulům Společnosti, Příležitosti a Projekty. Minimální oprávnění je vidět a upravovat moduly a samozřejmě vlastní pole, která byla pro konektory vytvořena. 
  4. Nahrajte spouštěcí soubor konektoru SharePointTriggers.xml do adresáře Triggers\ webové služby. V soubory SharePointTriggers.xml je třeba všude sprváně zadat uživatelské jméno API uživatele, který se pro propojení s SharePointem používá (stejný uživatel jako v konfiguračním souboru - viz popis níže): <AccessToken ApiUser="username" />

Konfigurace nastavení

Aplikace podporuje tyto konfigurační hodnoty v SharePointConnector.exe.config:

<generalConfig
   certPfxFilePassword="" - stejné heslo ({pfx_file_password}), jaké se použilo v posledním kroku při generování certifikátu
tenantId="" - k nalezení v Azure, viz obrázek níže
appId="" - k nalezení v Azure, viz obrázek níže
language="cs" - nastavení jazyka pro správné ukládání do složek; podporované hodnoty jsou cs, en, sk, pokud je hodnota ponechána prázdná, bere se jako en
companyFolder="" - URL adresa složky v SharePointu, kam se mají vkládat nové složky pro společnost. Složku je třeba vytvořit ručně ve sdílené složce SharePointu.
projectFolder=""                       - URL adresa složky v SharePointu, kam se mají vkládat nové složky pro projekt. Složku je třeba vytvořit ručně ve sdílené složce SharePointu.
leadFolder=""                         - URL adresa složky v SharePointu, kam se mají vkládat nové složky pro příležitost. Složku je třeba vytvořit ručně ve sdílené složce SharePointu.
sortByYear="true"  - Určí se, zda se má vytvářet struktura složek podle roků a měsíců, či nikoli
companySharepointFolderNameTemplate="" - Název složky společnosti, podporované hodnoty jsou $name$ (jméno společnosti), $hid$ (číslo společnosti) a $guid$ (databázové ID společnosti); příklad použití: $name$
projectSharepointFolderNameTemplate="" - Název složky projektu, podporované hodnoty jsou $name$ (jméno projektu), $hid$ (číslo projektu) a $guid$ (databázové ID projektu); příklad použití: $name$ - $guid$
leadSharepointFolderNameTemplate="" - Název složky příležitosti, podporované hodnoty jsou $name$ (jméno příležitosti), $hid$ (číslo příležitosti) a $guid$ (databázové ID příležitosti); příklad použití: $name$ - $hid$
/>
<eWayCRMConnection
url="" - URL webové služby eWay-CRM
userName=""     - Uživatelské jméno API uživatele v eWay-CRM
companyUrlField="" - Databázový název uživatelského pole pro odkaz na složku společnosti
projectUrlField="" - Databázový název uživatelského pole pro odkaz na složku projektu
leadUrlField=""   - Databázový název uživatelského pole pro odkaz na složku příležitosti/>

V sekci Overview v Azure je možné nalézt jak tenantId (Directory (tenant) ID), tak i appId (Application (client) ID):