Muis integratie

<< Click to Display Table of Contents >>

Navigation:  Boekhoud integratie >

Muis integratie

Previous pageReturn to chapter overviewNext page

Vanaf 2018 wordt de integratie van Logicworks CRM met online boekhoudsoftware gerealiseerd met behulp van onze online Logicworks Connector www.appligare.com. Met deze grotendeels gestandaardiseerde service is het mogelijk om op eenvoudige wijze met meerdere boekhoudpakketten een integratie te realiseren. In dit hoofdstuk worden de stappen beschreven welke noodzakelijk zijn om een integratie Muis Online van Muis Software te realiseren.

 

 

 

Cloudswitch module activeren

Een eerste stap in het proces is bij Muis Software de Cloudswitch-module te activeren. Hierbij krijgt u tevens een omgevingscode waarmee Logicworks CRM kan koppelen met de Muis administratie.

 

 

Logicworks Connector activeren

Vraag via de Logicworks Support Desk uw gebruikersnaam en wachtwoord aan voor de Logicworks Connector. Maak via Beheer > Gebruikers vervolgens een nieuwe gebruiker 'Logicworks Connector' aan en voer de ontvangen gebruikersnaam en wachtwoord in. Het is niet noodzakelijk verdere autorisaties in te stellen.

 

Aan het Setup onStart script (menuoptie Extra > Setup > tab:Algemeen) moeten de volgende eigenschappen worden toegevoegd. Hierbij moet de {omgevingscode} worden vervangen door de van Muis verkregen omgevingscode.
 

LWCRM.FAPI.AccountingSystem = "muis"

LWCRM.FAPI.AccountCode = "{omgevingscode}"

 

 

Keuzelijsten synchroniseren

Bij de synchronisatie met Muis moet gebruik gemaakt worden van de coderingen welke Muis intern hanteert. Het betreft de volgende keuzelijsten, welke ingevuld moeten worden.

 

Betalingsconditie. Keuzelijst komt voor in de bedrijven, contactpersonen en facturen (veld: paymentterms)

BTW code. Keuzelijst komt voor in de bedrijven, contactpersonen en facturen

Verzamelrekening Debiteuren. Keuzelijst komt voor in de bedrijven en contactpersonen (veld: salescollectaccount)

Tegenrekening Debiteuren. Keuzelijst komt voor in de bedrijven en contactpersonen (veld: salesaccount)

Verkoop dagboek. Keuzelijst komt voor in de bedrijven, contactpersonen en facturen  (veld: salesjournal)

 

Net als bij alle andere keuzelijsten kan ook bij deze lijsten de kolom 'Conversie' worden ingevuld, zie onderstaande afbeelding.  In deze kolom dient de overeenkomstige code uit Muis overgenomen te worden, zodat Logicworks CRM bij de synchronisatie de juiste codes kan doorgeven aan Muis.

 

picklist-paymentterms

 

 

Adrestypes

Bij het synchroniseren van de adressen worden een viertal adrestypes gebruikt: bezoekadres, postadres, factuuradres en afleveradres. Om deze adressen te kunnen synchroniseren is het noodzakelijk in de keuzelijst adrestype aan te geven welke adrestype hiermee correspondeert. We gebruiken hiervoor de kolom conversie in de keuzelijst adrestype en de volgende waarden kunnen gebruikt worden:
 

Bezoekadres: visit

Postadres: postal

Factuuradres: invoice

Afleveradres: delivery

 

 

Workflowregels instellen

Een volgende stap is het instellen van een tweetal Workflowregels voor Bedrijven en Contactpersonen. Zorg dat beide workflowregels worden geactiveerd bij een nieuw record of bij een wijziging in een record.

 

In de onderstaande scripts wordt UploadAccount() aangeroepen, welke zorg draagt voor een correct upload van de debiteur/crediteur-gegevens. Een relatie wordt alleen geupload naar Muis als het veld debiteur-nummer of crediteur-nummer is ingevuld.

 

Voor de derde parameter saveResult (standaardwaarde = false) kan aangegeven worden of een uitgebreid verslag van de synchronisatie moet worden vastgelegd in de Activiteiten-log. Mochten zich echter problemen voordoen bij de integratie, dan is het verstandig om tijdelijk true als parameterwaarde door te geven, zodat extra informatie voorhanden is om het probleem op te lossen.

 

Workflowregel actiescript Contactpersonen

Function crmScript

 Const otContact = 1

 Call LWCRM.FAPI.UploadAccount( otContact, LWCRM.Workflow.KeyValue, [saveResult] )

 crmScript = true

End Function  

 

 

Workflowregel actiescript Bedrijven

Function crmScript

 Const otAccount = 2

 Call LWCRM.FAPI.UploadAccount( otAccount, LWCRM.Workflow.KeyValue, [saveResult] )

 crmScript = true

End Function  

 

 

Menuopties aanmaken

Voor het uploaden van de facturen naar de Muis administratie zal het in de regel niet verstandig zijn een Workflowregel te schrijven. De menuoptie geeft gebruikers de mogelijkheid de facturen op zelf te bepalen momenten te uploaden naar Muis.

 

Het is mogelijk een PDF-versie van de factuur te uploaden naar Muis. Geef in dat geval het veld templateId van het sjabloon door waarmee de PDF kan worden gegenereerd.

Normaal gesproken wordt in de factuur gekeken welke Verkoopdagboek (salesJournal) is gebruikt. Is dit veld niet gevuld, dan wordt deze bepaald a.d.h.v. de debiteur. Het is echter ook mogelijk zelf een Verkoopdagboek code mee te geven bij de functie-aanroep. In dat geval wordt dit dagboek gehanteerd in de journaalposten.

In sommige gevallen is het niet mogelijk een uniek debiteurnummer te bepalen voor de factuur. In die gevallen kan een debiteurnummer worden meegegeven, welke automatisch als debiteurnummer zal worden gebruikt in de journaalposten.

 

Gebruikers menuoptie Facturen: Upload factuur

Function crmScript()

 Const templateId = "00000"

 invoiceId = Split( LWCRM.SelectedKeyvalues, ",")

 For i = 0 To UBound(invoiceId)

   Call LWCRM.FAPI.UploadSalesInvoice( invoiceId(i), [templateId], [salesJournal], [debtorNumber] )

 Next

 crmScript = true

End Function

 

 

Naast het genereren van journaalposten voor facturen is de mogelijkheid aanwezig factuurbetalingen te verwerken met de functie LWCRM.FAPI.ProcessInvoiceStatus().

Door als tweede parameter true te gebruiken wordt bij de verwerking van de betalingen een uitgebreid verslag weggeschreven in de Activiteiten van de betreffende factuur.
 

Gebruikers menuoptie Facturen: Betalingen verwerken

Function crmScript()

 Const lwcPaid = 3

 Set rstInvoice = CreateObject( "ADODB.Recordset" )

 sql = "SELECT invoiceid, invoicenumber FROM invoices WHERE status <> " & lwcPaid

 rstInvoice.Open sql, LWCRM.Database.Connection, 0, 1, 1

 Do While Not rstInvoice.EOF

   Call lwcrm.showuserinfo("Verwerken betalingen factuur: " & rstInvoice.Fields("invoicenumber").Value)

   Call LWCRM.FAPI.ProcessInvoiceStatus( rstInvoice.Fields("invoiceid").Value, false )

   rstInvoice.MoveNext

 Loop

 rstInvoice.Close

 crmScript = true

End Function

 

 

Callout opties

Wanneer erg veel customizations zijn uitgevoerd in de CRM database, kan het voorkomen dat de standaard debiteur/crediteur-koppeling de upload-gegevens niet allemaal vult met de gewenste gegevens. In deze situatie is het mogelijk via de callouts PreUploadDebtorData()  en PreUploadCreditorData() de te uploaden gegevens aan te passen voordat deze daadwerkelijk worden geüpload.

 

De te uploaden gegevens bevinden zich in LWCRM.Webservices.httpContentBody.

Ook is het mogelijk de action 'POST" of 'PUT' te overschrijven, deze actie ligt vast in LWCRM.Webservices.httpAction.