<< Click to Display Table of Contents >> SnelStart integratie |
![]() ![]() ![]() |
De Logicworks CRM Boekhoud integratie module biedt gebruikers o.a. de mogelijkheid hun SnelStart boekhoudsoftware te integreren met Logicworks CRM. Deze integratie verloopt via de SnelStart!Gateway module.
In dit hoofdstuk wordt beschreven hoe u een integratie met SnelStart realiseert en welke extra mogelijkheden de Boekhoud integratiemodule van Logicworks CRM te bieden heeft.
- Logicworks CRM Boekhoud integratie. Deze module is leverbaar in combinatie met de Logicworks CRM Professional en Enterprise Editie.
- SnelStart!Gateway module. Deze kan gratis worden aangevraagd bij bij SnelStart.
<SnelStart>
<Database.Type>MDB</Database.Type>
<Database.Datasource>C:\Snelstart\Administraties</Database.Datasource>
<Database.Catalog>SnelStart Voorbeeldbedrijf</Database.Catalog>
<Database.SystemDatabase>C:\Program Files\SnelStart\V900\SnelStart.mdw</Database.SystemDatabase>
<Database.Username></Database.Username>
<Database.Password></Database.Password>
<SnelStart.Username>Beheerder</SnelStart.Username>
<SnelStart.Password>12345</SnelStart.Password>
<VestigingsAdres>0</VestigingsAdres>
<CorrespondentieAdres>1</CorrespondentieAdres>
</SnelStart>
Database.Type
In SnelStart kan worden worden gekozen om de gegevens op te slaan in Microsoft SQL Server (MSSQL), Microsoft Access (MDB), LocalDB (LDB) of online (ONLINE). Voer afhankelijk van de gekozen administratie database het juiste databasetype, zoals vermeld tussen de ronde haken, in.
Database.Datasource
Bij gebruik van Microsoft SQL Server dient hier de servernaam opgegeven te worden waar SQL Server is geinstalleerd, bijvoorbeeld: LWSERVER02. Worden de gegevens in SnelStart opgeslagen in Access, dan moet hier de map opgegeven worden waar de acces-database zich bevindt, bijvoorbeeld: c:\snelstart\administraties.
Database.Catalog
De catalog moet de databasenaam bevatten. De exacte naamgeving is te achterhalen via de optie 'Administratie kiezen' in SnelStart. Let op dat bij een Microsoft Access database de bestandsextensie '.MDB' in de naam wordt meegegeven, bijvoorbeeld: 'Snelstart Voorbeeldadministratie.mdb'.
Database.SystemDatabase
Niet alle voor de gegevensuitwisseling vereiste gegevens zijn via de SnelStart!Gateway te achterhalen. In enkele gevallen moet de benodigde informatie daarom direct uit de SnelStart database worden opgevraagd. Bij gebruik van Microsoft Access als SnelStart database moet Logicworks CRM daarom weten waar het beveiligingsbestand (snelstart.mdw) van SnelStart zich bevindt. In de meeste gevallen zal dit bestand zich in de opstartfolder van SnelStart bevinden, bijvoorbeeld: C:\Program Files\SnelStart\V900\SnelStart.mdw.
Database.Username, Database.Password
Niet alle voor de gegevensuitwisseling vereiste gegevens zijn via de SnelStart!Gateway te achterhalen. In enkele gevallen moet de benodigde informatie daarom direct uit de SnelStart database worden opgevraagd. Bij gebruik van Microsoft SQL Server als SnelStart database moet Logicworks CRM het gebruikersnaam en wachtwoord waarmee de SnelStart database kan worden benaderd.
SnelStart.Username
Gebruikersnaam waarmee Logicworks CRM in moet loggen in SnelStart.
SnelStart.Password
Het wachtwoord dat behoort bij de SnelStart gebruikersnaam waarmee wordt ingelogd.
VestigingsAdres
Hier dient aangegeven te worden met welk Logicworks CRM adrestype het vestigingsadres uit SnelStart moet worden gesynchroniseerd.
CorrespondentieAdres
Hier dient aangegeven te worden met welk Logicworks CRM adrestype (addresses.addresstype) het afwijkende correspondentieadres uit SnelStart moet worden gesynchroniseerd.
De gegevensuitwisseling tussen Logicworks CRM en SnelStart vindt plaatst via de SnelStart Relatiecode. In Logicworks CRM wordt deze Relatiecode, afhankelijk van het relatietype, vastgelegd in de velden Debiteurnummer (Klant) en Crediteurnummer (Leverancier). De methode LWCRM.SnelStart.ImportRelaties zorgt ervoor dat zowel de klanten als de leveranciers uit SnelStart worden ingelezen in Logicworks CRM.
Blijkt bij de import dat een SnelStart Relatiecode al voorkomt in Logicworks CRM, dan worden de Logicworks CRM relatiegegevens bijgewerkt. Bestaat deze Relatiecode nog niet, dan wordt een nieuw bedrijf of contactpersoon aangemaakt in Logicworks CRM. Een SnelStart klant/leverancier wordt ingelezen als Bedrijf als het SnelStart-veld Contactpersoon is ingevuld, als het veld leeg is, dan wordt de relatie ingelezen als Contactpersoon. De relatie in het onderstaande schermvoorbeeld zal daarom worden ingelezen als Bedrijf in Logicworks CRM.
Function crmScript()
Call LWCRM.SnelStart.ImportRelaties()
crmScript = True
End Function
Om een relatie op juiste wijze te kunnen synchroniseren met SnelStart is het belangrijk met de Form Designer de velden Debiteur, Debiteurnummer, Crediteur, Crediteurnummer worden toegevoegd aan de Logicworks CRM relatie invoerschermen. Als de velden Debiteurnummer of Crediteurnummer zijn gevuld, dan worden deze gematcht met de Relatiecode in SnelStart, zodat de gegevens kunnen worden geexporteerd naar de juiste Klant of Leverancier. Als in Logicworks CRM een nieuwe Debiteur of Crediteur wordt aangemaakt, dan moet een vinkje worden gezet in deze velden. Tijdens het exporteren naar SnalStart wordt dan automatisch een nieuwe Klant of Leverancier aangemaakt.
Voordat de relatiegegevens worden geexporteerd naar SnelStart wordt zo nodig de callout preSnelStartExportRelatie aangeroepen. Als deze callout is gedefinieerd, dan moet True worden geretourneerd om de synchronisatie door te laten gaan. Wordt False geretourneerd, dan wordt de synchronisatie afgebroken. Wanneer een Logicworks CRM relatie is geexporteerd naar SnelStart , dan wordt (indien gedefinieerd) de callout postSnelStartExportRelatie aangeroepen.
Voorbeeld Account.Form.onUpdate
Function crmScript()
Call LWCRM.SnelStart.ExportAccount( LWCRM.SelectedKeyValues )
crmScript = True
End Function
Voorbeeld Contact.Form.onUpdate
Function crmScript()
Call LWCRM.SnelStart.ExportContact( LWCRM.SelectedKeyValues )
crmScript = True
End Function
Voorbeelden Workflowregel
Function crmScript()
Call LWCRM.SnelStart.ExportAccount( LWCRM.Workflow.KeyValue )
crmScript = True
End Function
Function crmScript()
Call LWCRM.SnelStart.ExportContact( LWCRM.Workflow.KeyValue )
crmScript = True
End Function
Om facturen te kunnen exporteren naar SnelStart is het noodzakelijk dat het productbeheer juist is ingericht. De meeste eenvoudige manier om de producten aan te maken in Logicworks CRM is gebruik te maken van de SnelStart-importfunctie LWCRM.SnelStart.ImportArtikelen. Hiermee worden alle SnelStart-artikelgegevens ingelezen in de Logicworks CRM producten-tabel.
Wanneer een SnelStart-artikel is ingelezen in Logicworks CRM, dan wordt (indien gedefinieerd) de callout postSnelStartImportArtikel aangeroepen.
Function crmScript()
Call LWCRM.SnelStart.ImportArtikelen()
crmScript = True
End Function
6. Genereer journaalposten o.b.v. Logicworks CRM factuur
Facturen kunnen op eenvoudige wijze worden geexporteerd naar SnelStart in de vorm van journaalposten. Hierbij worden per omzetrekening (vastgelegd bij de producten waarop een factuurregel is gebaseerd) een journaalpost aangemaakt in SnelStart. Zodra een factuur is geüpload naar SnelStart wordt de factuur gemarkeerd als zijnde geexporteerd (invoices.UploadedToGeneralLedger). Hiermee wordt voorkomen dat een factuur meerdere keren wordt geüpload naar SnelStart.
Wanneer een factuur is geüpload naar SnelStart, dan wordt (indien gedefinieerd) de callout postCreateJournalEntryFromInvoice aangeroepen.
Om de upload mogelijk te maken moet een Gebruikersmenu-optie worden toegevoegd aan de facturen. In dit script kan de SnelStart-exportfunctie LWCRM.SnelStart.CreateJournalEntryFromInvoice worden aangeroepen. Wordt de menuoptie ook vanuit het detailvenster uitgevoerd, dan moet nog een extra regel 'Call ActiveForm.Load' worden toegevoegd, zodat de venstergegevens na de export worden geactualiseerd.
Voorbeeld
Function crmScript()
dagboekVerkopen = "1300"
defaultOmzetrekening = "8000"
Call LWCRM.SnelStart.CreateJournalEntryFromInvoice( LWCRM.SelectedKeyValues, dagboekVerkopen, defaultOmzetrekening )
Call ActiveForm.Load
crmScript = True
End Function
7. Verwerken factuurbetalingen
Het is mogelijk om in SnelStart geregistreerde factuurbetalingen te verwerken in Logicworks CRM. Wanneer het totaal aan ontvangen betalingen overeenkomt met het factuurbedrag, dan wordt de status van de factuur automatisch op ‘Betaald’ gezet. Het verwerken van factuurbetalingen dient te worden geïnitieerd vanuit een Logicworks CRM script. Dit script kan geautomatiseerd worden uitgevoerd door de Jobserver of handmatig door de gebruiker via een klantspecifieke Contextmenu-optie.
Om een factuurbetaling te kunnen verwerken zijn een drietal gegevens noodzakelijk, namelijk het debiteurnummer, het factuurnummer en de code van het Verkoopboek. Meestal zal het het eenvoudigste zijn om met de Query Builder een query te definieren van alle openstaande facturen en deze af te lopen in het script.
Voorbeeld
Function crmScript()
Const lwcVerkoopBoek = 4
Const adOpenForwardOnly = 0
Const adLockReadOnly = 1
Const adCmdText = 1
Set rstInvoice = CreateObject( "ADODB.Recordset" )
sql = LWCRM.Database.LoadSQLQuery("5000S") & " ORDER BY InvoiceNumber"
rstInvoice.Open sql, LWCRM.Database.Connection, adOpenForwardOnly, adLockReadOnly, adCmdText
Do While Not rstInvoice.Eof
Call LWCRM.SnelStart.ProcessInvoicePayments( rstInvoice.Fields("debtornumber").Value, rstInvoice.Fields("invoicenumber").Value, lwcVerkoopBoek )
rstInvoice.MoveNext
Loop
rstInvoice.Close
crmScript = True
End Function
Omdat de SnelStartGateway niet de mogelijkheid biedt alle gegevens uit te wisselen kan gebruik gemaakt worden van de methode LWCRM.SnelStart.GetFieldValue om gegevens middels een SQL query uit de SnelStart database op te vragen.
Bij de gegevensuitwisseling met SnelStart worden (indien van toepassing) dezelfde veldnamen gebruikt in de tabel Bedrijven (accounts) en Contactpersonen (contacts).
SnelStart |
Logicworks CRM - Bedrijven |
Logicworks CRM - Contactpersonen |
BTW Nummer |
vatnumber |
- |
KvK Nummer |
boardoftrade |
- |
Naam |
name |
contactname (import) | udfbriefadressering (export) |
Relatiecode Leverancier |
isdebtor + debtornumber |
isdebtor + debtornumber |
Relatiecode Klanten |
iscreditor + creditornumber |
iscreditor + creditornumber |
Factuurkorting |
invoicediscountpercentage |
invoicediscountpercentage |
Kredietlimiet |
creditlimit |
creditlimit |
Rekeningnummer |
bankaccount |
bankaccount |
Creditcard nummer |
creditcardnumber |
creditcardnumber |
emailaddress1 |
emailaddress1 |
|
Fax |
fax |
fax |
Krediettermijn |
paymentterms |
paymentterms |
Memo |
description |
description |
Openstaand saldo |
outstandingbalance |
outstandingbalance |
Telefoon |
telephone1 |
telephone1 |
Telefoon mobiel |
mobilephone |
mobilephone |
Website URL |
website |
website |
IBAN |
iban |
iban |
BIC |
bic |
bic |
Bij de gegevensuitwisseling met SnelStart worden (indien van toepassing) de volgende velden uit de Producten-tabel (products) uitgewisseld.
SnelStart |
Logicworks CRM - Producten |
Artikelcode |
productcode |
Leverancier |
supplier |
Voorraadcontrole |
stockitem |
Minimum voorraad |
minimumstock |
Gewenste voorraad |
reorderlevel |
Minimaal bestelaantal |
orderquantity |
Verkoopeenheid |
retailunitid |
Verkoopprijs |
netretailprice |
BTW code |
vatcode |
Omzetrekening - NL |
revenueaccount |
Omzetrekening - Binnen EU |
revenueaccountEU |
Omzetrekening - Buiten EU |
revenueaccountOutsideEU |