FileMaker SnelStart Koppeling
Handleiding
Copyright 2013, Jing Shen Software Broekheurne Ring 515 7544 TN Enschede Tel.: 06 270 38381 www.jingshen-software.com
[email protected]
Inhoud Over de Filemaker SnelStart Koppeling!
3
Functies van de Koppeling! Versies van de Koppeling! Benodigdheden voor de Koppeling!
3 3 4
Installatie van de SnelStart Koppeling!
5
Windows installatie! Mac OSX installatie! Licentie code invoeren!
Gebruik van de SnelStart Koppeling! Algemeen! Beperkingen van de demonstratie versie! De Koppeling in Mac OSX! Het gebruiken van SnelStart Koppeling Functies in Scripts! Controleren of een functie succesvol is uitgevoerd!
Werken met een SnelStart Administratie ! Openen en sluiten van een administratie! Relaties; werken met klanten en leveranciers! Grootboek informatie opvragen! Boekingen lezen uit SnelStart! Boekingen maken in SnelStart!
Script Functie Omschrijvingen! Algemene Functies van de Koppeling! SSA_KoppelingVersie! SSA_GatewayVersie! SSA_LaatsteFoutCode! SSA_LaatsteFoutMelding!
Algemene SnelStart Functies! SSA_Administraties! SSA_AdministratiesFolder! SSA_StartSnelStart! SSA_LandID!
Openen en Sluiten van een Administratie!
5 6 6
7 7 7 7 8 9
10 10 10 11 12 14
17 17 17 17 18 18
19 19 19 20 20
21
SSA_AdministratieOpenen! SSA_AdministratieSluiten!
21 21
Opvragen van Grootboeken!
22
SSA_GrootboekGeldig! SSA_GrootboekOmschrijving! SSA_GrootboekNummersVanGroep! SSA_GrootboekEersteNummerVanGroep ! SSA_GrootboekVolgendNummerVanGroep !
Opvragen van bestaande Factuur nummers! SSA_FactuurEersteNummerVanRelatie! SSA_FactuurVolgendNummerVanRelatie!
Bewerken van Relaties en Relatie-gegevens!
22 22 23 23 24
25 25 25
26 p1
SSA_RelatieLezen! SSA_RelatieVolgendeLezen! SSA_RelatieEigenschapLezen! SSA_RelatieEigenschapSchrijven! SSA_RelatieEigenschapNaam! SSA_RelatieEigenschapCode! SSA_RelatieSchrijven! SSA_RelatieNieuw!
Boekingen lezen en maken! SSA_BoekingEersteGootboekVoorBoeking! SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving! SSA_BoekingVolgendGrootboek! SSA_BoekingSnelStartID! SSA_BoekingLezenMetID! SSA_BoekingDatum! SSA_BoekingRelatieCode! SSA_BoekingFactuurNummer! SSA_BoekingBoekstuk! SSA_BoekingOmschrijving! SSA_BoekingBedrag! SSA_BoekingID! SSA_BoekingLeesEersteRegel! SSA_BoekingLeesVolgendeRegel! SSA_BoekingRegelEigenschapLezen! SSA_BoekingRegelEigenschapNaam! SSA_BoekingRegelEigenschapCode! SSA_BoekingNieuw ! SSA_BoekingRegelToevoegen! SSA_BoekingSluiten! SSA_BoekingVerwijderen!
p2
26 26 27 30 30 31 32 32
33 33 35 35 36 36 36 37 37 38 38 38 39 40 41 41 42 43 43 44 44 45
Over de Filemaker SnelStart Koppeling Functies van de Koppeling De koppeling maakt het mogelijk om vanuit een FileMaker Database rechtstreeks een SnelStart administratie te benaderen en daarin: • klanten en leveranciers op te vragen en aan te maken • boekingen op te vragen en aan te maken • grootboeken op te vragen
Versies van de Koppeling Er zijn twee versies van de Koppeling: één voor Windows en één voor Mac OSX. Alleen de Windows versies hebben toegang tot de SnelStart administraties. De Mac OSX versie bevat weliswaar alle functies van de koppeling, alleen voeren deze functies niets uit. Indien een database zowel in Windows als in Mac OSX wordt gebruikt kan deze Koppeling worden gebruikt om foutmeldingen van FileMaker over missende scripts te voorkomen.
p3
Benodigdheden voor de Koppeling Windows: Windows XP met Service Pack 3 of later Mac: OSX 10.5 of later FileMaker 10 of later (mogelijk werkt de Koppeling ook met eerdere versies, dat is echter niet getest) SnelStart versie 9 of later (mogelijk werkt de Koppeling ook met eerdere versies, dat is echter niet getest) • SnelStart Gateway licentie ! Deze is nodig om de gegevens in en uit de administratie te kunnen halen. Een licentie is aan te vragen bij Snelstart via
[email protected] Vermeld bijvoorbeeld de volgende tekst: • • • •
Geachte medewerker van SnelStart, Kunnen wij een licentiecode ontvangen voor het gebruik van SnelStart!Gateway? Wij zijn gebruiker van SnelStart en willen een koppeling met de FileMaker SnelStart Koppeling van Jing Shen Software, Enschede. Onze gegevens zijn: Bedrijfsnaam: Contactpersoon: Adres: Postcode: Plaats: Telefoonnummer: Faxnummer: E-mail: Website: In afwachting van uw reactie verblijven wij, Met vriendelijke groet,
p4
Installatie van de SnelStart Koppeling Belangrijk: door het installeren van de Koppeling verklaart u zich akkoord met de "Licentie Overeenkomst - FileMaker SnelStart Koppeling" welke werd meegeleverd met de koppeling. Belangrijk: u blijft zelf verantwoordelijk voor de boekingen in SnelStart! De Koppeling kan maar zeer beperkt controleren of een boeking succesvol is verlopen en kan niet controleren of een boeking geldig of zinvol is. Deze verantwoordelijkheid ligt in het geheel bij de gebruiker!
De koppeling is een zogenaamde 'plugin' voor FileMaker en wordt als volgt geïnstalleerd:
Windows installatie Zorg dat FileMaker is afgesloten Windows XP: Kopieer het bestand "JSS SnelStart Koppeling.fmx" naar de volgende folder: C:\Documents and Settings\gebruikers_naam\Local Settings\Application Data\FileMaker\Extensions\ Hierbij is gebruikers_naam de naam waarmee u bent ingelogd. Het kan zijn dat de folder 'Local Settings\Application Data' niet zichtbaar is in de Windows Verkenner als die de inhoud toont van 'C:\Documents and Settings\gebruikers_naam'. Indien dat het geval is klikt u boven in de adresbalk waar op dat moment 'C:\Documents and Settings\gebruikers_naam' staat. Vul die tekst aan met 'Local Settings\Application Data', druk op enter en zoek vervolgens de correcte folder op. Windows Vista: Kopieer het bestand "JSS SnelStart Koppeling.fmx" naar de volgende folder: C:\users\gebruikers_naam\AppData\Local\FileMaker\Extensions\ Hierbij is gebruikers_naam de naam waarmee u bent ingelogd. Het kan zijn dat de folder AppData niet zichtbaar is in de Windows Verkenner als die de inhoud toont van C:\users\gebruikers_naam. Indien dat het geval is klikt u boven in de adresbalk waar op dat moment C:\users\gebruikers_naam staat. Vul die tekst aan met '\AppData', druk op enter en zoek vervolgens de correcte folder op. Zodra FileMaker wordt opgestart wordt ook de koppeling geïnitialiseerd en zal om de licentie gegevens gevraagd worden. Hierna zijn de functies van de SnelStart Koppeling beschikbaar. De installatie kan later worden gecontroleerd door in het hoofdmenu 'Bewerken'-'Voorkeuren' (of 'Edit'Preferences' voor een Engelstalige versie van FileMaker) te kiezen. Kies vervolgens het tabblad 'Plugins'. Indien de installatie goed is verlopen staat de SnelStart Koppeling in deze lijst. Zie de afbeelding op de volgende pagina.
p5
Installatie van de SnelStart Koppeling
Mac OSX installatie • Zorg dat FileMaker is afgesloten • Kopieer het bestand "JSS SnelStart Koppeling.fmplugin" naar de volgende folder: /Users/gebruikers_naam/Library/Application Support/FileMaker/Extensions Hierbij is gebruikers_naam de naam waarmee u bent ingelogd. De Mac OSX Koppeling heeft geen licentie nodig.
Licentie code invoeren Dit is alleen voor toepassing voor de Windows versie. Indien er nog geen licentie gegevens zijn ingevoerd zal de koppeling elke keer bij het opstarten om deze gegevens vragen. Het is ook mogelijk om later deze gegevens op te vragen of in te voeren: Kies in het hoofdmenu 'Bewerken'-'Voorkeuren' (of 'Edit'-Preferences' voor een Engelstalige versie van FileMaker) en activeer vervolgens het tabblad 'Plug-ins'. Kies de SnelStart Koppeling en klik op de knop 'Configureren…'. Vul de naam van de licentiehouder en de licentiecode in die u heeft ontvangen en let op dat hoofdletters en kleine letters precies overeenkomen, kopieer de gegevens bij voor keur met de Windows functies Knippen (CTRL-C) en Plakken (CTRL-V).
Elke keer als dit scherm wordt geopend wordt de huidige licentie status weergegeven, de licentie status in de naam van de SnelStart Koppeling wordt pas aangepast bij het opnieuw opstarten van FileMaker.
p6
Gebruik van de SnelStart Koppeling Algemeen Belangrijk: u blijft zelf verantwoordelijk voor de boekingen in SnelStart! De Koppeling kan maar zeer beperkt controleren of een boeking succesvol is verlopen en kan niet controleren of een boeking geldig of zinvol is. Deze verantwoordelijkheid ligt in het geheel bij de gebruiker! De SnelStart Koppeling maakt het mogelijk om in FileMaker gegevens uit een SnelStart administratie op te vragen, te wijzigen of toe te voegen. Dit gebeurt door functies ter beschikking te stellen die in scripts gebruikt kunnen worden. Een veld in een FileMaker tabel kan dan via een script berekening worden bijgewerkt uit een bepaald gegeven van een SnelStart boekhouding of dat gegeven in SnelStart juist bijwerken. Op deze wijze kunnen relaties, grootboeken en boekingen worden gelezen, bijgewerkt of worden aangemaakt SnelStart moet weliswaar geïnstalleerd zijn op het systeem, het hoeft echter niet geopend te zijn om er in FileMaker mee te kunnen werken. Het gelijktijdig werken met een boekhouding in zowel SnelStart als FileMaker is niet mogelijk. Bekijk naast deze handleiding ook de demonstratie database 'FileMaker Database - Koppeling Voorbeeld.fp7' met de bijbehorende SnelStart administratie 'SnelStart Administratie - Koppeling Voorbeeld.mdb'. In de database worden de meeste functies gedemonstreerd en kunnen vandaar ook simpelweg gekopieerd worden naar een andere database indien gewenst.
Beperkingen van de demonstratie versie Dit is alleen voor toepassing voor de Windows versie. Indien er geen licentie gegevens zijn ingevoerd werkt de koppeling gedurende 30 minuten na het opstarten van FileMaker als een demonstratie versie. Dat wil zeggen dat een aantal functies beperkt zijn: • er kan alleen worden gewerkt in de SnelStart demonstratie administratie: SnelStart Koppeling Demo Administratie. De functie SSA_AdministratieOpenen zal dan ook alleen deze administratie accepteren. • er kunnen maximaal 5 boekingen worden gemaakt in deze administratie. Hierbij zal af en toe een informatie scherm verschijnen dat aangeeft hoeveel tijd er nog resteert als demonstratie versie.
De Koppeling in Mac OSX Indien een FileMaker database zowel in Windows wordt gebruikt als in Mac OSX kan de Mac OSX Koppeling worden gebruikt om te voorkomen dat FileMaker tijdens het gebruik van de database in
OSX foutmeldingen geeft vanwege missende scripts, en worden ook in een FileMaker Database Report geen foutmeldingen gegeven. Deze Koppeling kent weliswaar alle functies maar de meeste functies voeren niets uit en geven ook niets terug. De volgende functies zijn daarop een uitzondering en geven nog wel een waarde terug: • SSA_KoppelingVersie • SSA_GatewayVersie • SSA_GatewayVersie geeft in de Mac OSX Koppeling een andere waarde terug dan de Windows Koppeling, namelijk "NVT" (voor "Niet van Toepassing"). Deze functie kan worden gebruikt om te bepalen of een script wel of niet dient te worden uitgevoerd in de OSX Koppeling: p7
Gebruik van de SnelStart Koppeling
If [SSA_GatewayVersie ≠ "NVT"] ! #Dit is de WIndows Koppeling: open de administratie en doe wat gedaan moet worden End If
Het gebruiken van SnelStart Koppeling Functies in Scripts SnelStart Koppeling functies worden gebruikt in FileMaker Scripts. Dit gebeurt door bij het berekeningen deel in de script-editor 'External Functions' te kiezen. Hier staan alle functies die door FileMaker Plugins worden toegevoegd, onder andere ook die van de SnelStart Koppeling.
De functies staan gegroepeerd per plugin:
p8
Gebruik van de SnelStart Koppeling
De namen van de SnelStart Koppeling functies beginnen allemaal met het voorvoegsel 'SSA_' voor 'SnelStart Administratie'. Hierdoor is later in een script tekst sneller te herkennen dat dit een functie van de SnelStart Koppeling is. Na het voorvoegsel SSA_ volgt eerst een kenmerk over het soort functie bijvoorbeeld SSA_Grootboek voor het werken met grootboeken en SSA_Factuur voor het werken met facturen. De functies met hun parameters staan beschreven in het hoofdstuk 'Script functies omschrijvingen'. Een meer algemene uitleg over hoe in FileMaker met een SnelStart administratie gewerkt kan worden staat in het volgende hoofdstuk.
Controleren of een functie succesvol is uitgevoerd Sommige functies geven zelf een functieresultaat terug dat aangeeft of de functie succesvol is uitgevoerd, bijvoorbeeld functies als SSA_RelatieLezen (dat een klant of leverancier leest uit een SnelStart administratie). Indien het lezen gelukt is geeft een dergelijke functie het getal '1' terug, anders een '0'. Hierdoor is een dergelijke functie direct te gebruiken in een 'if' opdracht. Als voorbeeld: het volgende script leest een klant in met relatie code 3 en vraagt vervolgens het adres op indien het lezen gelukt is: If [SSA_RelatieLezen( 0 ; 3 )] ! Set Field[TabelNaam::VeldNaam; SSA_RelatieEigenschapLezen( 2 )] End If
Andere functies geven zelf al een tekst of een getal, hetgeen een foutcontrole wat lastiger maakt. Alle functies zetten echter een interne foutcode als er iets mis gaat, en deze foutcode kan worden gelezen met de functie SSA_LaatsteFoutCode. Door na een functie aanroep te controleren of deze foutcode '0' is kan worden nagegaan of de aanroep succesvol was. Indien dat niet het geval is kan met de functie SSA_LaatsteFoutMelding meer informatie worden opgehaald over wat er is misgegaan. Het volgende script bijvoorbeeld vraagt de bij SnelStart geregistreerde administraties op en zet een foutmelding in het veld 'TabelNaam::FoutMeldingVeld' als het niet gelukt is: Set Field[TabelNaam::VeldNaam; SSA_Administraties] If [SSA_LaatsteFoutCode ≠ 0] ! Set Field[TabelNaam::FoutMeldingVeld; "Fout: " & SSA_LaatsteFoutMelding] End If
In het hoofdstuk 'Script Functie Omschrijvingen' worden alle functies omschreven inclusief de wijze waarop een fout controle kan worden uitgevoerd. In deze handleiding zijn in veel voorbeeld scripts deze foutcontroles niet getoond om de essentie van het script overzichtelijk te houden.
p9
Werken met een SnelStart Administratie De meeste functies van de koppeling worden afdoende besproken in het hoofdstuk 'Script Functie Omschrijvingen', een aantal onderwerpen wordt hier echter iets meer uitgelegd.
Openen en sluiten van een administratie Om te kunnen werken in een administratie dient deze eerst te worden geopend middels de functie SSA_AdministratieOpenen. Deze functie heeft twee parameters: de folder van de administratie en de naam van de administratie (zie de functie omschrijvingen voor meer informatie). Dat gaat bijvoorbeeld als volgt: If [SSA_AdministratieOpenen(TabelNaam::FolderNaam; TabelNaam::AdministratieNaam )] ! Set Field[TabelNaam::InformatieVeldNaam; "Administratie geopend."] End If Vervolgens kan de administratie bewerkt worden (zoals hierna wordt beschreven) waarna de administratie dient te worden afgesloten: If [SSA_AdministratieSluiten] ! Set Field[TabelNaam:: InformatieVeldNaam; "Administratie gesloten."] End If
Relaties; werken met klanten en leveranciers Relaties kunnen worden aangemaakt en gewijzigd via de koppeling, ze kunnen niet worden verwijderd. Relaties worden indirect bewerkt: eerst wordt de relatie (dat wil zeggen de relatie gegevens) ingelezen uit SnelStart in de SnelStart Koppeling. Vervolgens kunnen de diverse gegevens apart worden ingelezen in een FileMaker tabel. Dit kan niet in één keer aangezien per FileMaker script aanroep maar één gegeven kan worden opgevraagd. Het lezen van relaties:
FileMaker Tabel
! ! !
SnelStart Koppeling
SA_RelatieEigenschapLezen! ! ! !
SnelStart Administratie
SSA_RelatieLezen SSA_RelatieVolgendeLezen SSA_RelatieNieuw
Het bewerken van relaties gaat op dezelfde wijze: eerst worden de gegevens van de relatie bijgewerkt in de SnelStart Koppeling en daarna in één keer weggeschreven naar SnelStart.
p 10
Werken met een SnelStart Administratie
Het bewerken en schrijven van relaties:
FileMaker Tabel
! !
SnelStart Koppeling
SA_RelatieEigenschapSchrijven! !
SnelStart Administratie
SSA_RelatieSchrijven SSA_RelatieVolgendeSchrijven
Zie voor meer informatie over de verschillende functies en voorbeelden van het werken met relaties de paragraaf 'Bewerken van Relaties en Relatie-gegevens' in het hoofdstuk 'Script Functie Omschrijvingen'.
Grootboek informatie opvragen Via de koppeling kan alleen grootboek informatie worden opgevraagd, er kunnen geen grootboeken worden aangemaakt, gewijzigd of verwijderd. Informatie omtrent een enkel grootboek kan worden opgevraagd via de functies SSA_GrootboekGeldig en SSA_GrootboekOmschrijving die respectievelijk nagaan of het grootboek nummer in kwestie bestaat in de geopende administratie en de omschrijving van het grootboek: Set Variable[$GrootboekNummer; 1298] If [SSA_GrootboekGeldig( $GrootboekNummer )] ! Set Field[TabelNaam::VeldNaam; SSA_GrootboekOmschrijving( $GrootboekNummer )] End If Daarnaast kunnen lijsten van grootboeken worden gemaakt op twee manieren die beiden gebruik maken van de grootboek-groepen waarin SnelStart de grootboeken indeelt (deze worden bij de functie omschrijvingen beschreven). De eerste manier is om van een bepaalde grootboek groep een lijst op te halen met daartoe behorende grootboek-nummers: SSA_GrootboekNummersVanGroep Dit levert een een tekst op waarin op elke regel een nummer staat van een grootboek uit deze groep. Set Field[TabelNaam::VeldNaam; SSA_GrootboekNummersVanGroep( 4 )] De tweede manier is om de grootboek nummers van een groep één voor één op te vragen middels twee functies: SSA_GrootboekEersteNummerVanGroep en SSA_GrootboekVolgendNummerVanGroep. Op deze wijze kan bijvoorbeeld ook meteen de omschrijving worden opgehaald: Set Field [TabelNaam::VeldNaam; ""] Set Variable[$GrootboekNr; SSA_GrootboekEersteNummerVanGroep( 4 )] Loop ! Exit Loop If [$GrootboekNr <= 0] ! Set Field [TabelNaam::VeldNaam; TabelNaam::VeldNaam & ! ! $GrootboekNr & ", " & SSA_GrootboekOmschrijving( $GrootboekNr )] ! Set Variable [$GrootboekNr; SSA_GrootboekVolgendNummerVanGroep] End Loop Zie voor meer informatie over de verschillende functies en de betekenis van de parameters de paragraaf 'Opvragen van Grootboeken' in het hoofdstuk 'Script Functie Omschrijvingen'. p 11
Werken met een SnelStart Administratie
Boekingen lezen uit SnelStart Om via de koppeling met boekingen te kunnen werken is het goed om te weten hoe boekingen in SnelStart worden opgeslagen. In SnelStart bestaat een boeking bestaat uit meerdere onderdelen: • één set algemene boeking's gegevens bestaande uit: - de datum - het grootboek (dagboek) van de boeking - het boekstuk - de omschrijving • één of meerdere boeking's regel's elk bestaande uit: - de eventuele relatie code - het eventuele factuurnummer - de omschrijving - grootboek nummer - BTW code - debet bedrag - credit bedrag De basis gegevens van een boeking worden gevormd door de boeking's gegevens en een eerste boeking's regel. In onderstaande afbeelding is een inkoop factuur te zien waarbij de groene lijnen de boeking's gegevens aangeven en de rode lijnen de verschillende boeking's regels. Hier is ook te zien dat de af te dragen BTW als twee aparte boeking's regels worden geboekt.
#1 #2 #3 #4 #5 boeking's regels
p 12
boeking
Werken met een SnelStart Administratie
Het volledig opvragen van alle gegevens van deze factuur bestaat uit het opvragen van de boeking zelf en vervolgens van de betrokken regels (zie voor uitleg over de functies de betrokken hoofdstukken verderop): #zoek de factuur gegevens in het verkoop dagboek: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 0; 2; "20110305")] Loop ! Exit Loop If [ ($GrootboekNr <= 0) or ! ! /* er zijn geen verdere boekingen */ ! ! ! ! (SSA_LaatsteFoutCode ≠ 0) or ! /* er was een fout */ ! ! ! ($GrootboekNr = 1300) ! ! /* verkoop dagboek */ ] ! Set Variable [ $GrootboekNr; Value:SSA_BoekingVolgendGrootboek ] End Loop #Als de factuur declaratie gevonden is wordt de boeking's informatie er van opgehaald If [ SSA_LaatsteFoutCode = 0 ] ! If [ $GrootboekNr= 1300 ] ! ! Set Field [ SnelStartFacturen::Grootboek; $GrootboekNr ] ! ! Set Field [ SnelStartFacturen::SnelStartBoekingsID; SSA_BoekingID ] ! ! Set Field [ SnelStartFacturen::Boekstuk; SSA_BoekingBoekstuk ] ! ! Set Field [ SnelStartFacturen::Datum; SSA_BoekingDatum ] ! ! Set Field [ SnelStartFacturen::Omschrijving; SSA_BoekingOmschrijving ] ! ! Set Field [ SnelStartFacturen::Bedrag; SSA_BoekingBedrag ] ! End If End If Een aantal eigenschappen van de eerste regel worden door de koppeling beschikbaar gesteld via functies als SSA_BoekingBedrag, zie de sectie 'Boekingen lezen en maken' voor meer informatie. Hierna kunnen eventueel de regels één voor één worden ingelezen. In het volgende voorbeeld worden de regels ingelezen en in een portal op de FileMaker layout geplaatst. Het opvragen van de gegevens van de regel gebeurt in een loop met de functie SSA_BoekingRegelEigenschapLezen als basis:
p 13
Werken met een SnelStart Administratie
#Haal alle boekingsregels van de boeking If [ SSA_BoekingLeesEersteRegel ] ! #De regels worden geplaatst in een FileMaker Portal waar records in staan uit de tabel ! SnelStartFactuurBoekingsRegels ! Go to Object [ Object Name: "PortalMetBoekingsRegels" ] ! Loop ! ! #ga naar de laatste portal entree om daar de boekings regel toe te voegen ! ! Go to Portal Row [ Last ] ! ! #lees nu een voor een de regel eigenschappen in ! ! Set Variable [ $Index; Value:0 ] ! ! Loop ! ! ! Set Variable [ $EigenschapNaam; ! ! ! ! ! ! Value:SSA_BoekingRegelEigenschapNaam( $Index ) ] ! ! ! Set Variable [ $EigenschapWaarde; ! ! ! ! ! ! Value:SSA_BoekingRegelEigenschapLezen( $Index ) ] ! ! ! If [ SSA_LaatsteFoutCode ≠ 0 ] ! ! ! ! Set Field [ SnelStartGegevens::LogText; "Er is een fout opgetreden" ] ! ! ! Else ! ! ! ! Set Variable [ $VeldNaam; Value:"SnelStartFactuurBoekingsRegels::" & ! ! ! ! $EigenschapNaam ] ! ! ! ! Set Field By Name [ $VeldNaam; $EigenschapWaarde ] ! ! ! End If ! ! ! Set Variable [ $Index; Value:$Index + 1 ] ! ! ! Exit Loop If [ $Index > 9 ] ! ! End Loop ! ! Exit Loop If [ SSA_BoekingLeesVolgendeRegel ≠ 1 ] ! End Loop End If
Boekingen maken in SnelStart Belangrijk: u blijft zelf verantwoordelijk voor de boekingen in SnelStart! De Koppeling kan maar zeer beperkt controleren of een boeking succesvol is verlopen en kan niet controleren of een boeking geldig of zinvol is. Deze verantwoordelijkheid ligt in het geheel bij de gebruiker! Bij het maken van een boeking worden in het script de gegevens van de boeking (b.v. een factuur) opgegeven waarbij de koppeling boeking's gegevens aanmaakt en de eerste boeking's regel (zie de sectie 'Boekingen lezen' voor meer informatie over de wijze waarop SnelStart boekingen op slaat). Het wordt aanbevolen om na te gaan hoe een boeking er in SnelStart uit ziet alvorens zelf een boeking aan te maken via de koppeling. Dit kan door een soortgelijke boeking handmatig aan te maken in SnelStart en deze een omschrijving als "Test" te geven. Via de koppeling kan dan de boeking worden opgehaald en per regel worden bekeken om te zien hoe een dergelijke boeking gedaan dient te worden. Beide bovenstaande scripts uit de sectie sectie 'Boekingen lezen uit SnelStart' kunnen daarvoor worden gebruikt waarbij in het eerste script de tweede regel wordt vervangen door: Set Variable [$GrootboekNr; BoekingEersteGootboekVoorBoekingMetOmschrijving( "Test" )] In de voorbeeld database kan voor het bestuderen van een boeking het deel van de Boekingen Informatie gebruikt worden. Als voorbeeld wordt de eerder getoonde verkoop factuur genomen van €172,- met twee factuurregels: één van €100,- voor het hoge BTW tarief op grootboek 8001 en één van €50,- voor het lage BTW tarief p 14
Werken met een SnelStart Administratie
op grootboek 8002. Daarnaast worden er twee regels geboekt met de BTW (grootboeken 1601 en 1602 in dit voorbeeld). Een aantal velden wordt uit een tabel gehaald, voor de duidelijkheid zijn echter de bedragen en de grootboek-nummers in het voorbeeld expliciet ingevuld. Ook is een aantal foutdetectie script-stappen weggelaten om de essentie duidelijker te houden. Het factuur bedrag zelf wordt debet geboekt terwijl de regelbedragen op credit worden geboekt, dit houd de boeking in balans. Set Variable [ $BoekingInOrde; Value:0 ] #Maak de boeking en de eerste boekingsregel aan (grootboek 1300 is het Verkoop dagboek) If [ SSA_BoekingNieuw( 1300; EigenFacturen::Datum; EigenFacturen::Boekstuk; 0; ! EigenFacturen::RelatieCode; EigenFacturen::factuurnummer; EigenFacturen::Omschrijving; ! ! 172; 0) ] ! #Nu dat gelukt is kunnen de factuur regels worden ingevoerd ! #Eerst een product voor het hoge BTW bedrag (100 euro) ! Set Variable [ $Dummy; Value:SSA_BoekingRegelToevoegen( 0; ! ! ! EigenFacturen::RelatieCode; EigenFacturen::factuurnummer; 0; ! ! ! "Product onderhevig aan hoge BTW"; 8002; 2; 0; 100) ] ! #Dan een product voor het lage BTW bedrag (50 euro) ! Set Variable [ $Dummy; Value:SSA_BoekingRegelToevoegen( 0; ! ! ! EigenFacturen::RelatieCode; EigenFacturen::factuurnummer; 0; ! ! ! "Product onderhevig aan lage BTW"; 8001; 1; 0; 50) ] ! #Het lage BTW bedrag (BTW code 1 (6%), 3 euro) ! Set Variable [ $Dummy; Value:SSA_BoekingRegelToevoegen( 0 ; ! ! EigenFacturen::RelatieCode; EigenFacturen::factuurnummer; 0; ! ! EigenFacturen::Omschrijving; 1601; 1 ; 0 ; 3) ] ! #Het hoge BTW bedrag (BTW code 2 (19%), 19 euro) ! Set Variable [ $Dummy; Value:SSA_BoekingRegelToevoegen( 0 ; ! ! EigenFacturen::RelatieCode; EigenFacturen::factuurnummer; 0; ! ! EigenFacturen::Omschrijving; 1602; 2 ; 0 ; 19) ] ! #Boeking gedaan, nu kan hij worden afgesloten waarbij we de Boekings ID onthouden ! van SnelStart ! If [ SSA_LaatsteFoutCode = 0 ] ! ! Set Field [ EigenFacturen::SnelStartID; SSA_BoekingSluiten ] ! ! Set Variable [ $BoekingInOrde; Value:EigenFacturen:: SnelStartID > 0 ] ! End If !End If If [ $BoekingInOrde = 0 ] ! Show Custom Dialog [ Title: "Boeking fout"; Message: "Boeking is fout: " & ! ! SSA_LaatsteFoutMelding; Buttons: “OK” ] Else ! Show Custom Dialog [ Title: "Boeking gemaakt"; Message: "De boeking is gemaakt"; ! ! Buttons: “OK” ] End If
p 15
Werken met een SnelStart Administratie
Een eventueel bijbehorende contante betaling wordt als gevolgd geboekt: Set Variable [ $BoekingInOrde; Value:0 ] #Maak de boeking aan in het kasboek If [ SSA_BoekingNieuw( 1000; EigenFacturen::ContantBetaaldDatum; ""; 0; ! ! ! EigenFacturen::RelatieCode; EigenFacturen::factuurnummer; "Factuur betaling"; ! ! ! EigenFacturen::FactuurTotaalBedrag; 0) ] ! #Nu dat gelukt is kan de factuur regel worden ingevoerd ! Set Variable [ $Dummy; Value:SSA_BoekingRegelToevoegen( 0; EigenFacturen::RelatieCode; ! ! ! EigenFacturen::factuurnummer; 0; "Factuur betaling"; 1300; 0; 0; ! ! ! EigenFacturen::FactuurTotaalBedrag) ] ! If [ SSA_LaatsteFoutCode = 0 ] ! ! Set Field [ EigenFacturen::ContantBetaaldSnelStartID; SSA_BoekingSluiten ] ! ! Set Variable [ $BoekingInOrde; Value:EigenFacturen::ContantBetaaldSnelStartID > 0 ] ! End If End If If [ $BoekingInOrde = 0 ] ! Show Custom Dialog [ Title: "Boeking fout"; Message: "Boeking is fout: " & ! ! ! SSA_LaatsteFoutMelding; Buttons: “OK” ] Else ! Show Custom Dialog [ Title: "Boeking gemaakt"; Message: "De betaling is geboekt"; ! ! ! Buttons: “OK” ] End If
p 16
Script Functie Omschrijvingen Algemene Functies van de Koppeling SSA_KoppelingVersie Gebruik: SSA_KoppelingVersie Geeft de versie van de FileMaker Koppeling. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
de versie van de FileMaker Koppeling
Voorbeeld: Set Field[TabelNaam::VeldNaam; "Koppeling versie is :" & SSA_KoppelingVersie] !
SSA_GatewayVersie Gebruik: SSA_GatewayVersie Geeft de versie van de SnelStart GateWay. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
de versie van de SnelStart GateWay
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Field[TabelNaam::VeldNaam; "SnelStart GateWay versie is :" & SSA_GatewayVersie] !
p 17
Algemene Functies van de Koppeling
SSA_LaatsteFoutCode Gebruik: SSA_LaatsteFoutCode Geeft aan of de uitgevoerde functie succesvol is verlopen. Kan bijvoorbeeld worden gebruikt om te controleren of het resultaat geldig is van een functie die een tekst of een getal teruggeeft. Indien er een fout is opgetreden kan met de functie SSA_LaatsteFoutMelding meer informatie worden opgehaald over de aard van de fout. De foutcode blijft door aanroep van deze functie ongewijzigd. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
0:! er is geen fout is opgetreden anders: !de laatste fout code
Voorbeeld: Set Field[TabelNaam::VeldNaam; SSA_Administraties] If [SSA_LaatsteFoutCode ≠ 0] ! Set Field[TabelNaam::FoutMeldingVeld; "Fout: " & SSA_LaatsteFoutMelding] End If !
SSA_LaatsteFoutMelding Gebruik: SSA_LaatsteFoutMelding Geeft na een fout een nadere omschrijving van de aard van de fout. Over het algemeen geeft deze iets meer informatie over de reden waarom een actie niet is gelukt. De foutcode wordt door aanroep van deze functie weer teruggezet op 0. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
de omschrijving van de fout
Voorbeeld: Set Field[TabelNaam::VeldNaam; SSA_Administraties] If [SSA_LaatsteFoutCode ≠ 0] ! Set Field[TabelNaam::FoutMeldingVeld; "Fout: " & SSA_LaatsteFoutMelding] End If !
p 18
Algemene SnelStart Functies SSA_Administraties Gebruik: SSA_Administraties Geeft de administratienamen die geregistreerd staan in SnelStart. De namen worden gegeven zonder de folder en zonder de extensie ('.mdb’). De naam van de folder waar de administraties staan kan worden opgevraagd met SSA_AdministratiesFolder. De namen worden gescheiden door een '¶' waardoor ze direct in een tekst veld geplaatst kunnen worden. Dat tekst veld kan dan bijvoorbeeld worden gebruikt als bron voor een Value List, zoals gedaan in de voorbeeld database. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
de administratienamen
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: !Set Field[TabelNaam::VeldNaam; SSA_Administraties]
SSA_AdministratiesFolder Gebruik: SSA_AdministratiesFolder Geeft de naam van de folder die door SnelStart wordt gebruikt als locatie van de administraties. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
de naam van de folder
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Field[TabelNaam::VeldNaam; SSA_AdministratiesFolder] !
p 19
Algemene SnelStart Functies
SSA_StartSnelStart Gebruik: SSA_StartSnelStart( TeOpenenAdministratie ) Start SnelStart op met de administratie genoemd in "TeOpenenAdministratie”. Deze administratie dient in de folder staan waar SnelStart de administraties verwacht en bijvoorbeeld kan worden verkregen via de script-functie SSA_AdministratiesFolder. Parameter: TeOpenenAdministratie: !
de naam van de te openen administratie, zonder folder naam en zonder extensie. Laat leeg om SnelStart op te starten zonder een specifieke administratie te openen.
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
het opstarten is gelukt er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeelden: If [SSA_StartSnelStart( "Administratie Jansen" )] ! Set Field[TabelNaam::VeldNaam; "SnelStart is opgestart."] Else ! Set Field[TabelNaam::FoutMeldingVeld; "Fout: " & SSA_LaatsteFoutMelding] End If ! SSA_StartSnelStart( "" )
SSA_LandID Gebruik: SSA_LandID( LandAfkorting ) Vraagt de LandID op waaronder het land in SnelStart bekend is. Deze LandID wordt gebruikt om aan te geven in welk land een klant of leverancier zich bevind. Parameter: LandAfkorting: !
de afkorting waaronder het land bekend is, b.v. NL, BE, DE, DK
Resultaat type:!
getal
Resultaat:!
0: ! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een ! functie succesvol is uitgevoerd') anders: !de code van het land
!
Voorbeeld: Set Field[TabelNaam::VeldNaam; SSA_LandID("NL")] !
p 20
Openen en Sluiten van een Administratie
Openen en Sluiten van een Administratie SSA_AdministratieOpenen Gebruik: SSA_AdministratieOpenen( Folder; AdministratieNaam ) Opent de administratie genoemd in "AdministratieNaam” in de folder "Folder" voor gebruik met FileMaker. Een eventuele open administratie wordt eerst gesloten. In de demonstratie versie wordt alleen de naam van de demonstratie administratie geaccepteerd ("SnelStart Koppeling Demo Administratie"). Parameter: Folder!
!
AdministratieNaam: !
de folder waar de administratie staat. Dient de drive, het pad en een afsluitende '\' te bevatten. Een tabel-veld kan direct als parameter worden meegegeven. de naam van de te openen administratie, zonder folder naam en zonder extensie.
Opmerking:!
de tekst afhandeling van FileMaker vereist dat als er rechtstreeks een tekst wordt meegegeven als parameter voor de folder (dus niet via een tabel-veld) de laatste '\' als '\\' wordt geschreven zoals in het voorbeeld.
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
het opstarten is gelukt er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeelden: If [SSA_AdministratieOpenen("c:\test\\"; "Administratie Jansen" )] ! Set Field[TabelNaam::VeldNaam; "Administratie geopend."] End If !
SSA_AdministratieSluiten Gebruik: SSA_AdministratieSluiten Sluit de op dit moment geopende administratie. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
het sluiten is gelukt er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: If [SSA_AdministratieSluiten] ! Set Field[TabelNaam::VeldNaam; "Administratie gesloten."] End If p 21
Openen en Sluiten van een Administratie
Opvragen van Grootboeken SSA_GrootboekGeldig Gebruik: SSA_GrootboekGeldig( GrootboekNummer ) Gaat na of een bepaald grootboek bestaat in de administratie. Er dient een administratie open te zijn. Parameter:!
het grootboek nummer
Resultaat type:!
getal
Resultaat:! ! !
1:! 0:! -1:! ! !
het grootboek bestaat het grootboek bestaat niet er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable[$GrootboekNummer; 1298] Set Variable[$GrootboekGeldig; SSA_GrootboekGeldig( $GrootboekNummer )] Set Field[TabelNaam::GrootboekStatus; ! Case ($GrootboekGeldig = 1; "Grootboek bestaat"; ! ! $GrootboekGeldig = 0; "Grootboek bestaat niet"; ! ! $GrootboekGeldig = -1; "Er is een fout opgetreden"; ! ! )] If [$GrootboekGeldig = 1] ! Set Field[TabelNaam::VeldNaam; SSA_GrootboekOmschrijving( $GrootboekNummer )] End If !
SSA_GrootboekOmschrijving Gebruik: SSA_GrootboekOmschrijving( GrootboekNummer ) Vraagt de omschrijving van een bepaald grootboek op in de administratie. Er dient een administratie open te zijn. Parameter:!
het grootboek nummer
Resultaat type:!
tekst
Resultaat:!
de omschrijving
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie SSA_BestaatGrootboek hierboven
p 22
Openen en Sluiten van een Administratie
SSA_GrootboekNummersVanGroep Gebruik: SSA_GrootboekNummersVanGroep( GroepNr ) In SnelStart worden grootboeken ingedeeld in groepen. Met behulp van deze functie kunnen de grootboek-nummers worden opgevraagd die tot een bepaalde grootboek-groep behoren. De nummers worden gescheiden door een '¶' waardoor ze bijvoorbeeld direct in een tekst veld geplaatst kunnen worden. Dat tekst veld kan dan bijvoorbeeld worden gebruikt als bron voor een Value List. Er dient een administratie open te zijn. Zie 'Het opvragen van grootboek informatie' voor meer informatie over de twee methoden die er zijn om grootboek nummers op te halen. Parameter:! ! ! ! !
Het nummer van de grootboek groep. SnelStart kent de volgende groepen met de bijbehorende groep nummers: Kas = 1; Bank = 2; Giro = 3; Verkoop = 4; Inkoop = 5; Memoriaal = 7; Balans = 8 Groep 6 wordt niet expliciet benoemd maar lijkt de overige grootboeken te bevatten. Andere waarden worden door de plugin ook geaccepteerd om toekomstige wijzigingen vanuit SnelStart te accommoderen.
Resultaat type:!
tekst
Resultaat:!
de grootboek nummers behorend tot de groep
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Field[TabelNaam::VeldNaam; SSA_GrootboekNummersVanGroep( 4 )] !
SSA_GrootboekEersteNummerVanGroep Gebruik: SSA_GrootboekEersteNummerVanGroep( GroepNr ) Haalt het eerste grootboek nummer dat behoort tot een bepaalde grootboek groep. Hierna kan elk volgend nummer van de groep worden opgehaald via de functie SSA_GrootboekVolgendNummerVanGroep. Er dient een administratie open te zijn. Zie 'Het opvragen van grootboek informatie' voor meer informatie over de twee methoden die er zijn om grootboek nummers op te halen. Parameter:!
het nummer van de grootboek groep (zie de omschrijving bij SSA_GrootboekNummersVanGroep).
Resultaat type:!
getal
Resultaat:!
-1:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een ! functie succesvol is uitgevoerd') 0:! deze groep heeft geen grootboeken anders:!het eerste grootboek nummer van deze groep
! !
p 23
Openen en Sluiten van een Administratie
Voorbeeld: Set Field [TabelNaam::VeldNaam; ""] Set Variable[$GrootboekNr; SSA_GrootboekEersteNummerVanGroep( 4 )] Loop ! Exit Loop If [$GrootboekNr <= 0] ! Set Field [TabelNaam::VeldNaam; TabelNaam::VeldNaam & ! ! $GrootboekNr & ", " & SSA_GrootboekOmschrijving( $GrootboekNr )] ! Set Variable [$GrootboekNr; SSA_GrootboekVolgendNummerVanGroep] End Loop !
SSA_GrootboekVolgendNummerVanGroep Gebruik: SSA_GrootboekVolgendNummerVanGroep Haalt het volgende grootboek op na een aanroep van SSA_EersteGrootboekNummerVanGroep. Er dient een administratie open te zijn. Parameter:!
Geen
Resultaat type:!
getal
Resultaat:!
-1:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een ! functie succesvol is uitgevoerd') 0:! deze groep heeft geen verdere grootboeken anders:!het volgende grootboek nummer van deze groep
! !
Voorbeeld: zie het voorbeeld bij SSA_GrootboekEersteNummerVanGroep.
p 24
Opvragen van bestaande Factuur nummers SSA_FactuurEersteNummerVanRelatie Gebruik: SSA_FactuurEersteNummerVanRelatie( RelatieSoort ; RelatieCode ) Haalt het eerste factuurnummer van een klant- of leverancier-relatie met een bepaalde relatiecode. Hierna kan elk volgend nummer van de groep worden opgehaald via de functie SSA_VolgendFactuurNummerVanRelatie. Er dient een administratie open te zijn. Parameters:! !
RelatieSoort: ! !
0: ! 1: !
voor een klant-relatie voor een leverancier-relatie
!
RelatieCode: !
de betreffende relatiecode
Resultaat type:!
tekst
Resultaat:! !
Het eerste factuur nummer. Leeg indien er geen factuurnummers zijn.
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Field [TabelNaam::VeldNaam; ""] Set Variable[$FactuurNr; SSA_FactuurEersteNummerVanRelatie( 0; 4 )] Loop ! Exit Loop If [($FactuurNr = "") or (SSA_LaatsteFoutCode ≠ 0)] ! Set Field [TabelNaam::VeldNaam; TabelNaam::VeldNaam & $FactuurNr] ! Set Variable [$FactuurNr; SSA_FactuurVolgendNummerVanRelatie] End Loop !
SSA_FactuurVolgendNummerVanRelatie Gebruik: SSA_FactuurVolgendNummerVanRelatie Haalt het volgende factuurnummer op na een aanroep van SSA_EersteFactuurNummerVanRelatie. Parameter:!
Geen
Resultaat type:!
tekst
Resultaat:! !
Het volgende factuur nummer. Leeg indien er geen verdere factuurnummers zijn.
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij SSA_FactuurEersteNummerVanRelatie. p 25
Bewerken van Relaties en Relatie-gegevens SSA_RelatieLezen Gebruik: SSA_RelatieLezen( RelatieSoort ; RelatieCode ) Leest de relatie informatie met de betreffende relatiecode uit de SnelStart administratie en plaatst deze in de Filemaker Plugin relatie gegevens. Hierna kunnen de verschillende gegevens van de relatie worden opgevraagd via SSA_RelatieEigenschapLezen( EigenschapCode ) of een volgende relatie worden opgevraagd via SSA_RelatieVolgendeLezen. Parameter:! !
RelatieSoort: ! !
0: ! 1: !
!
RelatieCode: ! !
de betreffende relatiecode Gebruik 0 om de eerste klant of leverancier in de administratie op te vragen (de Plugin zoekt dan tot relatie code 500 voor de eerste geldige relatie)
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
voor een klant-relatie voor een leverancier-relatie
de relatie succesvol is ingelezen er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$KlantIngelezen; SSA_RelatieLezen( 0 ; 1 )] !
SSA_RelatieVolgendeLezen Gebruik: SSA_RelatieVolgendeLezen Leest de volgende relatie uit de administratie in de Filemaker Plugin relatie gegevens nadat eerder de functie SSA_RelatieLezen( RelatieSoort ; RelatieCode ) is gebruikt. Hierna kunnen de verschillende gegevens van de relatie worden opgevraagd via SSA_RelatieEigenschapLezen( EigenschapCode ) of een volgende relatie worden opgevraagd via SSA_RelatieVolgendeLezen. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! ! -1:!
!
de relatie succesvol is ingelezen er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd') er zijn geen verdere relaties meer
Voorbeeld: Set Variable [$KlantIngelezen; SSA_RelatieLezen( 0 ;1 )] Set Variable [$VolgendeKlantIngelezen; SSA_RelatieVolgendeLezen] ! p 26
Bewerken van Relaties en Relatie-gegevens
SSA_RelatieEigenschapLezen Gebruik: SSA_RelatieEigenschapLezen( EigenschapCode ) Vraagt een eigenschap als naam, adres, woonplaats e.d. op van de relatie die is ingelezen met SSA_RelatieLezen( RelatieSoort ; RelatieCode ) of SSA_RelatieVolgendeLezen. De eigenschappen worden opgevraagd middels een eigenschap-code om het opvragen in een loop te vergemakkelijken. Afhankelijk van de versie van SnelStart worden mogelijk niet alle eigenschappen getoond in de administratie in SnelStart. Zie de SnelStart Help voor een verdere toelichting omtrent de betekenis van de eigenschappen. Parameter:!
de eigenschap code zoals genoemd in de volgende tabellen. De tabellen geven ook aan wat voor soort FileMaker resultaat wordt teruggeven en in welke versie van de SnelStart-Plugin de eigenschap opgevraagd kan worden.
Resultaat:!
de eigenschap
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld van het opvragen het adres van de klant met relatie code 3: If [SSA_RelatieLezen( 0 ; 3 )] ! Set Field[TabelNaam::VeldNaam; SSA_RelatieEigenschapLezen( 2 )] End If ! Een voorbeeld van een loop is te vinden bij de beschrijving van de functie SSA_RelatieEigenschapNaam. Eigenschap code tabellen:
Gemeenschappelijke Klant en Leverancier eigenschappen Code
Omschrijving
Resultaat Type
0
RelatieCode
getal
1
Naam
tekst
2
VestigingAdres
tekst
3
VestigingAdresPostcode
tekst
4
VestigingAdresPlaats
tekst
5
VestigingAdresLandID
getal
6
VestigingAdresContactpersoon
tekst
7
Telefoon
tekst
8
TelefoonMobiel
tekst
9
Fax
tekst
Opmerking
zie SSA_LandID
p 27
Bewerken van Relaties en Relatie-gegevens
Gemeenschappelijke Klant en Leverancier eigenschappen Code
Omschrijving
Resultaat Type
10
Email
tekst
11
WebSiteUrl
tekst
12
Memo
tekst
13
CorrespondentieAdresAfwijkend
getal
14
CorrespondentieAdres
tekst
15
CorrespondentieAdresPostcode
tekst
16
CorrespondentieAdresPlaats
tekst
17
CorrespondentieAdresLandID
getal
18
CorrespondentieAdresContactpersoon
tekst
19
RekeningnummerBank
getal
20
RekeningnummerNaamHouder
tekst
21
RekeningnummerPlaatsHouder
tekst
22
CreditCardNummer
tekst
23
BtwNummer
tekst
24
KvkNummer
getal
25
Krediettermijn
getal
26
OpenstaandSaldo
getal
Opmerking
zie noot 1
zie SSA_LandID
zie noot 2
kan alleen gelezen worden
noot 1) De correspondentie adres gegevens worden door SnelStart alleen gebruikt indien CorrespondentieAdresAfwijkend 1 is. Indien CorrespondentieAdresAfwijkend 0 is worden de VestigingAdres gegevens gebruikt. noot 2) Voor klanten kan het bankrekening nummer zowel 9 als 10 cijferig zijn, voor leveranciers uitsluitend 9 cijferig of 10 cijferig tot een maximum van 2.147.483.647 De Koppeling en de SnelStart GateWay voeren geen controle uit op de geldigheid van het nummer.
p 28
Bewerken van Relaties en Relatie-gegevens
Specifieke Klant eigenschappen Code
27
Omschrijving
Incasseren
Resultaat Type
Opmerking
getal
Automatisch incasseren: 0: nee 1: ja Type van aanmanen: 0: nee 1: onderneming 2: consument
28
Aanmanen
getal
29
KredietLimiet
getal
30
FactuurKorting
getal
percentage
31
ElektronischFactureren
getal
0: nee, 1: ja
32
RelatieCodeFactuurNaar
getal
Relatie code voor de factuur
Specifieke Leverancier eigenschappen Code
Omschrijving
Resultaat Type
27
BestelbedragMinimum
getal
28
Debiteurennummer
getal
29
Bankieren
getal
Opmerking
p 29
Bewerken van Relaties en Relatie-gegevens
SSA_RelatieEigenschapSchrijven Gebruik: SSA_RelatieEigenschapSchrijven( EigenschapCode; EigenschapWaarde ) Werkt de klant gegevens van de Plugin relatie bij waarbij de eigenschap met code EigenschapCode de waarde EigenschapWaarde wordt toegekend. Nadat alle gegevens bijgewerkt zijn kan de klant naar SnelStart worden geschreven middels SSA_RelatieSchrijven. Voordat een eigenschap kan worden bijgewerkt dient er eerst een klant uit SnelStart te worden ingelezen via SSA_RelatieLezen, SSA_RelatieVolgendeLezen of een nieuwe klant te worden aangemaakt via SSA_RelatieNieuw. Parameters: EigenschapCode!
EigenschapWaarde!
de eigenschap code zoals genoemd in de tabellen bij SSA_RelatieEigenschapLezen. De beschikbaarheid van de eigenschap per Plugin versie is identiek aan die van SSA_RelatieEigenschapLezen. de nieuwe waarde voor de eigenschap.
Resultaat type:!
getal
Resultaat:! !
1:! de eigenschap is succesvol geschreven 0:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$KlantIngelezen; SSA_RelatieLezen( 0 ; 2 )] Set Variable [$KlantBijgewerkt; SSA_RelatieEigenschapSchrijven(2, "Het Nieuwe Adres"] !
SSA_RelatieEigenschapNaam Gebruik: SSA_RelatieEigenschapNaam( RelatieSoort ; EigenschapCode ) Geeft de naam van de eigenschap met de code EigenschapCode zoals genoemd in de tabel bij SSA_RelatieEigenschapLezen. Indien in de FileMaker tabel de veldnamen dezelfde naam hebben kan deze functie gebruikt worden om de klant gegevens via een loop bij te werken door gebruik te maken van FileMaker script functie Set Field By Name. Parameter:! !
RelatieSoort: ! !
0: ! 1: !
voor een klant-relatie voor een leverancier-relatie
!
EigenschapCode: !
de code van de eigenschap
Resultaat type:!
tekst
Resultaat:!
de naam van de eigenschap
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
p 30
Bewerken van Relaties en Relatie-gegevens
Voorbeeld om in een tabel genaamd SnelStartKlanten de velden bij te werken. De velden hebben dezelfde namen als in de tabel: Set Variable[$Code; Value:0] Loop ! Set Variable[$EigenschapNaam; Value: SSA_RelatieEigenschapNaam( 0 ; $Code )] ! Set Variable[$EigenschapWaarde; Value: SSA_RelatieEigenschapLezen( $Code )] ! Set Variable[$VeldNaam; Value: "SnelStartKlanten::" & $EigenschapNaam] ! Set Field By Name[$VeldNaam, $EigenschapWaarde]; ! Set Variable[$Code; Value: $Code + 1] ! Exit Loop if[$Code > 32] End Loop !
SSA_RelatieEigenschapCode Gebruik: SSA_RelatieEigenschapCode( RelatieSoort ; EigenschapNaam ) Geeft de EigenschapCode van de eigenschap met de naam EigenschapNaam zoals genoemd in de tabel bij SSA_RelatieEigenschapLezen. Parameter:! !
RelatieSoort: ! !
0: ! 1: !
voor een klant-relatie voor een leverancier-relatie
!
EigenschapNaam:!
de naam van de eigenschap
Resultaat type:!
getal
Resultaat:!
de EigenschapCode
Resultaat in geval van een fout:!
een negatief getal
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld om een Plugin klant bij te werken uit een tabel genaamd SnelStartKlanten. Dit script kan als een ScriptTrigger worden uitgevoerd bij elk veld met een klant eigenschap. De velden hebben dezelfde namen als in de tabel: Set Variable[$VeldNaam; Value: Get( ActiveFieldName )] Set Variable[$EigenschapCode; Value: SSA_RelatieEigenschapCode( 0 ; $VeldNaam )] Set Variable[$EigenschapWaarde; Value: Get( ActiveFieldContents )] Set Variable[$FunctieResultaat; SSA_RelatieEigenschapSchrijven( $EigenschapCode; ! $EigenschapWaarde ) !
p 31
Bewerken van Relaties en Relatie-gegevens
SSA_RelatieSchrijven Gebruik: SSA_RelatieSchrijven Schrijft de relatie in de Plugin naar SnelStart. Indien de relatie al bestaat wordt de bestaande relatie overschreven, anders wordt er een nieuwe relatie aangemaakt. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
1:! de relatie is succesvol geschreven 0:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$FunctieResultaat; SSA_RelatieSchrijven] !
SSA_RelatieNieuw Gebruik: SSA_RelatieNieuw( RelatieSoort ) Maakt een nieuwe klant aan in de Plugin en geeft de toegekende relatie code terug. Hierna kunnen de gegevens worden bijgewerkt via SSA_RelatieEigenschapSchrijven waarna de klant kan worden teruggeschreven naar SnelStart via SSA_RelatieSchrijven. Parameter:! !
RelatieSoort: ! !
0: ! 1: !
voor een klant-relatie voor een leverancier-relatie
Resultaat type:!
getal
Resultaat:! !
positief:! de nieuwe relatie code negatief:! er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld om een nieuwe klant aan te maken in SnelStart: Set Variable [$NieuweRelatieCode; SSA_RelatieNieuw( 0 )] Set Variable [$KlantBijgewerkt; SSA_RelatieEigenschapSchrijven(1, "Klant Naam"] Set Variable [$KlantBijgewerkt; SSA_RelatieEigenschapSchrijven(2, "Het Nieuwe Adres"] Set Variable [$KlantBijgewerkt; SSA_RelatieEigenschapSchrijven(3, "1234 AZ"] Set Variable [$KlantBijgewerkt; SSA_RelatieEigenschapSchrijven(4, "Nergenshuizen"] Set Variable [$FunctieResultaat; SSA_RelatieSchrijven] !
p 32
Boekingen lezen en maken SSA_BoekingEersteGootboekVoorBoeking Gebruik: SSA_BoekingEersteGootboekVoorBoeking( RelatieSoort ; RelatieCode ; FactuurNummer) Facturen en relaties kunnen in verschillende grootboeken voorkomen, deze functie haalt het nummer op van het eerste grootboek waar een factuur of een relatie in vermeld is. Er kan op een factuurnummer worden gezocht, op een relatie of op een factuurnummer van een specifieke relatie. Hierna kunnen de gegevens van de boeking worden uitgelezen met behulp van de functies BoekingBoekstuk, BoekingDatum, BoekingOmschrijving, BoekingBedrag, BoekingID, BoekingLeesEersteRegel, BoekingLeesVolgendeRegel en BoekingRegelEigenschapLezen. Een volgende melding van de factuur kan worden opgevraagd met behulp van de functie BoekingVolgendGrootboek. Op deze wijze kunnen alle boekingen van een factuur en/of relatie worden opgevraagd. Parameters:! !
RelatieSoort: ! !
! !
0: ! 1: !
voor een klant-relatie voor een leverancier-relatie
!
RelatieCode: !
de relatiecode, gebruik 0 om in alle relaties te zoeken
!
FactuurNummer: !
het betreffende factuur nummer, gebruik een lege tekst ("") om in alle facturen te zoeken
!
Opmerking: de RelatieCode óf het FactuurNummer moet vermeld worden; de combinatie van RelatieCode 0 en factuurNummer "" is niet toegestaan.
Resultaat type:!
getal
Resultaat:!
-1:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd') 0:! er zijn geen boekingen voor deze factuur anders:!het nummer van het grootboek
! !
Voorbeelden: Zoeken op factuurnummer 12345ABC van klant nr 2: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 0; 2; "12345ABC") Zoeken op factuurnummer 12345ABC van leverancier nr 2: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 1; 2; "12345ABC") Zoeken op verkoop factuurnummer 12345ABC: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 0; 0; "12345ABC")] Zoeken op inkoop factuurnummer 12345ABC: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 1; 0; "12345ABC")] Zoeken op een boeking van klant 2: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 0; 2; "")] ! p 33
Boekingen lezen en maken
Zoeken op een boeking van leverancier 2: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 1; 2; "")] ! Voorbeeld van het ophalen van een deel van de factuurgegevens van factuurnummer 12345ABC van klant nr 2: #zoek de factuur gegevens in het verkoop dagboek: Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoeking( 0; 2; "12345ABC")] Loop !Exit Loop If [ ($GrootboekNr <= 0) or ! ! /* er zijn geen verdere boekingen */ ! ! ! (SSA_LaatsteFoutCode ≠ 0) or ! /* er was een fout */ ! ! ($GrootboekNr = 1300) ! ! /* verkoop dagboek */ ] !Set Variable [ $GrootboekNr; Value:SSA_BoekingVolgendGrootboek ] End Loop #Als de factuur declaratie gevonden is wordt de basis informatie er van opgehaald If [ SSA_LaatsteFoutCode = 0 ] ! If [ $GrootboekNr= 1300 ] ! ! Set Field [ SnelStartFacturen::Grootboek; $GrootboekNr ] ! ! Set Field [ SnelStartFacturen::SnelStartBoekingsID; SSA_BoekingID ] ! ! Set Field [ SnelStartFacturen::Boekstuk; SSA_BoekingBoekstuk ] ! ! Set Field [ SnelStartFacturen::Datum; SSA_BoekingDatum ] ! ! Set Field [ SnelStartFacturen::Omschrijving; SSA_BoekingOmschrijving ] ! ! Set Field [ SnelStartFacturen::Bedrag; SSA_BoekingBedrag ] ! End If End If
p 34
Boekingen lezen en maken
SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving Gebruik: SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving( Omschrijving ) Deze functie haalt het nummer op van het eerste grootboek waar een boeking is gevonden met de gevraagde omschrijving. Hierna kunnen de gegevens van de boeking worden uitgelezen met behulp van de functies BoekingBoekstuk, BoekingDatum, BoekingOmschrijving, BoekingBedrag, BoekingID, BoekingLeesEersteRegel, BoekingLeesVolgendeRegel en BoekingRegelEigenschapLezen. Een volgende melding van de factuur kan worden opgevraagd met behulp van de functie BoekingVolgendGrootboek. Op deze wijze kunnen alle boekingen met een bepaalde omschrijving worden opgevraagd. Parameter:! !
Omschrijving: !
Tekst met de gevraagde omschrijving
!
Resultaat type:!
getal
Resultaat:!
! !
-1:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een ! functie succesvol is uitgevoerd') 0:! er zijn geen boekingen voor deze relatie anders:!het nummer van het grootboek
Voorbeeld van het halen van alle grootboek nummers met omschrijving "Test": Set Variable [$GrootboekNr; SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving( "Test" )] Loop ! Exit Loop If [$GrootboekNr <= 0] ! Set Field [TabelNaam::BoekingenLijst; TabelNaam:: BoekingenLijst & ", " & $GrootboekNr] ! Set Variable [$GrootboekNr; SSA_BoekingVolgendGrootboek] End Loop !
SSA_BoekingVolgendGrootboek Gebruik: SSA_BoekingVolgendGrootboek Na het gebruik van SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving geeft deze functie het volgende grootboek nummer voor de betreffende factuur of relatie. Parameters:!
geen
Resultaat type:!
getal
Resultaat:!
-1:! er is een fout opgetreden; (SSA_LaatsteFoutMelding ! geeft informatie over de fout, zie § 'Controleren of een ! functie succesvol is uitgevoerd') 0:! er zijn geen verdere boekingen anders:!het nummer van het grootboek
! !
Voorbeeld: zie het voorbeeld bij SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving
p 35
Boekingen lezen en maken
SSA_BoekingSnelStartID Gebruik: SSA_BoekingSnelStartID Haalt het ID nummer waaronder de boeking in SnelStart bekend is. Dit kan worden gebruikt om deze specifieke boeking in te lezen via SSA_BoekingLezenMetID of om de boeking te verwijderen via SSA_BoekingVerwijderen. Parameters:!
geen
Resultaat type:!
getal
Resultaat:!
het boeking's ID nummer van SnelStart
Resultaat in geval van een fout:!
0
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$SnelStartID; SSA_BoekingSnelStartID]
SSA_BoekingLezenMetID Gebruik: SSA_BoekingLezenMetID( BoekingID ) Leest de boeking in met het ID nummer BoekingID. Dit is het ID nummer waaronder de boeking in SnelStart bekend is en dat bijvoorbeeld is verkregen via SSA_BoekingSnelStartID. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
de boeking is succesvol gelezen er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$BoekingGelezen; SSA_BoekingLezenMetID ( 20 )]
SSA_BoekingDatum Gebruik: SSA_BoekingDatum Haalt de datum op van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving Parameters:!
geen
Resultaat type:!
datum
Resultaat:!
de datum van de boeking
p 36
Boekingen lezen en maken
Resultaat in geval van een fout:!
1-1-1900
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij functie SSA_BoekingEersteGootboekVoorBoeking
SSA_BoekingRelatieCode Gebruik: SSA_BoekingRelatieCode Haalt de relatie code op van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Parameters:!
geen
Resultaat type:!
getal
Resultaat:!
de relatie code van de boeking
Resultaat in geval van een fout:!
0
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$FunctieResultaat; SSA_BoekingRelatieCode] !
SSA_BoekingFactuurNummer Gebruik: SSA_BoekingFactuurNummer Haalt de relatie code op van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
het factuurnummer van de boeking
Resultaat in geval van een fout:!
lege tekst
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$FunctieResultaat; SSA_BoekingFactuurNummer] !
p 37
Boekingen lezen en maken
SSA_BoekingBoekstuk Gebruik: SSA_BoekingBoekstuk Haalt het boekstuk op van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
het boekstuk van de boeking
Resultaat in geval van een fout:!
lege tekst
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij functie SSA_BoekingEersteGootboekVoorBoeking
SSA_BoekingOmschrijving Gebruik: SSA_BoekingOmschrijving Haalt de omschrijving op van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Parameters:!
geen
Resultaat type:!
tekst
Resultaat:!
het boekstuk van de boeking
Resultaat in geval van een fout:!
lege tekst
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij functie SSA_BoekingEersteGootboekVoorBoeking
SSA_BoekingBedrag Gebruik: SSA_BoekingBedrag Haalt het bedrag op van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Dit is het bedrag wat genoemd is in de eerste boeking's regel die bij deze boeking hoort. Parameters:!
geen
Resultaat type:!
getal
Resultaat:!
het bedrag van de boeking
Resultaat in geval van een fout:!
0
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij functie SSA_BoekingEersteGootboekVoorBoeking p 38
Boekingen lezen en maken
SSA_BoekingID Gebruik: SSA_BoekingID Haalt het ID nummer op van de boeking waaronder de boeking in SnelStart bekend is. Dit nummer kan worden gebruikt om de boeking uit SnelStart te verwijderen met behulp van de functie SSA_BoekingVerwijderen. Parameters:!
geen
Resultaat type:!
getal
Resultaat:!
de ID van de boeking
Resultaat in geval van een fout:!
0
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld van het uit SnelStart verwijderen van de zojuist ingelezen boeking: Set Variable [$FunctieResultaat; SSA_BoekingVerwijderen( SSA_BoekingID )] !
p 39
Boekingen lezen en maken
SSA_BoekingLeesEersteRegel Gebruik: SSA_BoekingLeesEersteRegel Leest de eerste boeking's regel in van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Hierna kunnen de gegevens van de regel worden opgehaald met de functie SSA_BoekingRegelEigenschapLezen. De volgende regel kan worden opgehaald middels de functie SSA_BoekingLeesVolgendeRegel. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! ! -1: !
!
de regel is succesvol ingelezen er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd') er is geen boeking ingelezen
Voorbeeld: #Haal alle boekingsregels van de boeking If [ SSA_BoekingLeesEersteRegel ] ! #De regels worden geplaatst in een FileMaker Portal waar records in staan uit de ! tabel SnelStartFactuurBoekingsRegels ! Go to Object [ Object Name: "PortalMetBoekingsRegels" ] ! Loop ! ! #ga naar de laatste portal entree om daar de boekings regel toe te voegen ! ! Go to Portal Row [ Last ] ! ! #lees nu een voor een de regel eigenschappen in ! ! Set Variable [ $Index; Value:0 ] ! ! Loop ! ! ! Set Variable [ $EigenschapNaam; Value:SSA_BoekingRegelEigenschapNaam !! ! ! ! ! ( $Index ) ] ! ! ! Set Variable [ $EigenschapWaarde; Value:SSA_BoekingRegelEigenschapLezen ! ! ! ! ! ( $Index ) ] ! ! ! If [ SSA_LaatsteFoutCode ≠ 0 ] ! ! ! ! Set Field [ SnelStartGegevens::LogText; "Er is een fout opgetreden" ] ! ! ! Else ! ! ! ! Set Variable [ $VeldNaam; Value:"SnelStartFactuurBoekingsRegels::" & ! ! ! ! ! $EigenschapNaam ] ! ! ! ! Set Field By Name [ $VeldNaam; $EigenschapWaarde ] ! ! ! End If ! ! ! Set Variable [ $Index; Value:$Index + 1 ] ! ! ! Exit Loop If [ $Index > 9 ] ! ! End Loop ! ! Exit Loop If [ SSA_BoekingLeesVolgendeRegel ≠ 1 ] ! End Loop End If
p 40
Boekingen lezen en maken
SSA_BoekingLeesVolgendeRegel Gebruik: SSA_BoekingLeesVolgendeRegel Leest de volgende boeking's regel in van de boeking die is ingelezen met SSA_BoekingEersteGootboekVoorBoeking of SSA_BoekingEersteGootboekVoorBoekingMetOmschrijving. Hierna kunnen de gegevens van de regel worden opgehaald met de functie SSA_BoekingRegelEigenschapLezen. Parameters:!
geen
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! ! -1: !
!
de regel is succesvol ingelezen er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd') er is geen boeking ingelezen
Voorbeeld: zie het voorbeeld bij de functie SSA_BoekingLeesEersteRegel
SSA_BoekingRegelEigenschapLezen Gebruik: SSA_BoekingRegelEigenschapLezen( EigenschapCode ) Vraagt een eigenschap als bedrag, grootboek, omschrijving e.d. op van de boeking's regel die is ingelezen de boeking die is ingelezen met SSA_BoekingLeesEersteRegel of SSA_BoekingLeesVolgendeRegel.De eigenschappen worden opgevraagd middels een eigenschapcode om het opvragen in een loop te vergemakkelijken. Normaliter hoeven GrootboekFunctieID, BtwType en BtwID niet opgevraagd hoeven te worden om de
regel volledig te kunnen beschrijven. Parameter:!
de eigenschap code zoals genoemd in de volgende tabel. De tabel geeft ook aan wat voor soort FileMaker resultaat wordt teruggeven
Resultaat type:!
de eigenschap
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij de functie SSA_BoekingLeesEersteRegel
p 41
Boekingen lezen en maken
Eigenschap code tabel:
Boeking's regel eigenschappen Code
Omschrijving
Resultaat Type
Opmerking De relatie code in geval de regel een boeking voor een factuur betreft. In- of Verkoop volgt het grootboek nummer
0
FactuurRelatiecode
getal
1
FactuurNummer
tekst
2
Omschrijving
tekst
3
GrootboekNummer
getal
4
BtwPercentage
getal
5
Credit
getal
Credit óf Debet gebruiken, niet beide
6
Debet
getal
Credit óf Debet gebruiken, niet beide
7
GrootboekFunctieID
getal
8
BtwType
getal
9
BtwID
getal
SSA_BoekingRegelEigenschapNaam Gebruik: SSA_BoekingRegelEigenschapNaam( EigenschapCode ) Geeft de naam van de boeking's regel eigenschap met de code EigenschapCode zoals genoemd in de tabel bij SSA_BoekingRegelEigenschapLezen. Indien in de FileMaker tabel de veldnamen dezelfde naam hebben kan deze functie gebruikt worden om de klant gegevens via een loop bij te werken door gebruik te maken van FileMaker script functie Set Field By Name. Parameter:! !
EigenschapCode: !
de code van de eigenschap
Resultaat type:!
tekst
Resultaat:!
de naam van de eigenschap
Resultaat in geval van een fout:!
een lege tekst ("")
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij de functie SSA_BoekingLeesEersteRegel
p 42
Boekingen lezen en maken
SSA_BoekingRegelEigenschapCode Gebruik: SSA_BoekingRegelEigenschapCode( EigenschapNaam ) Geeft de code van de boeking's regel eigenschap met de naam EigenschapNaam zoals genoemd in de tabel bij SSA_BoekingRegelEigenschapLezen. Parameter !
EigenschapNaam: !
de naam van de eigenschap
Resultaat type:!
getal
Resultaat:!
de EigenschapCode
Resultaat in geval van een fout:!
een negatief getal
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: Set Variable [$FunctieResultaat; SSA_BoekingRegelEigenschapCode( "Credit") ]
SSA_BoekingNieuw Gebruik: SSA_BoekingNieuw( Grootboek ; Datum ; Boekstuk ; RelatieSoort ; RelatieCode ; FactuurNummer ; Omschrijving ; Debet ; Credit ) Begint een nieuwe boeking. De boeking wordt ingevuld met de functie SSA_BoekingRegelToevoegen en afgesloten met SSA_BoekingSluiten. Pas bij het sluiten van boeking controleert SnelStart of de boeking in balans is en pas dan zal er een eventuele foutmelding komen als dat niet zo is. In de demonstratie versie kunnen maximaal 5 boekingen worden gemaakt. Zie voor meer informatie het hoofdstuk 'Over boekingen in Snelstart'. Parameters:! !
Grootboek:!
het grootboek waar de boeking op dient te geschieden
!
Datum:!
de boeking's datum
!
Boekstuk:!
het eventuele boekstuk, gebruik eventueel een lege tekst
!
RelatieSoort: ! !
0: ! 1: !
!
RelatieCode: !
de betreffende relatiecode
!
FactuurNummer:!
het factuur nummer
!
Omschrijving:!
de omschrijving van de boeking (niet langer dan 100 karakters)
!
Debet, Credit:!
het boeking's bedrag, gebruik slechts één van de twee. De boeking moet in balans zijn dus hier b.v. debet boeken en de regels op credit.
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
voor een klant-relatie voor een leverancier-relatie
de boeking is succesvol gemaakt er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie de voorbeelden in het hoofdstuk 'Over boekingen in Snelstart' p 43
Boekingen lezen en maken
SSA_BoekingRegelToevoegen Gebruik: SSA_BoekingRegelToevoegen( RelatieSoort ; RelatieCode ; FactuurNummer ; KostenPlaats ; Omschrijving ; Grootboek ; BtwCode ; Debet ; Credit ) Voegt en regel toe aan een boeking. Dit zijn de regels die de inhoud van de boeking bevatten. Parameter:! !
RelatieSoort: ! !
0: ! 1: !
!
RelatieCode: !
de eventuele relatiecode
!
FactuurNummer:!
tekst, het eventuele factuur nummer
!
KostenPlaats:!
getal, de eventuele kostenplaats
!
Omschrijving:!
de omschrijving van de regel (niet langer dan 100 karakters)
!
Grootboek:!
het grootboek waarop geboekt moet worden
!
BtwCode:! ! ! !
0: geen BTW 1: laag BTW 2: hoog BTW 3: overig
!
Debet, Credit:!
het boeking's bedrag, gebruik slechts één van de twee.
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
voor een klant-relatie voor een leverancier-relatie
de boeking is succesvol gemaakt er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij SSA_BoekingNieuw
SSA_BoekingSluiten Gebruik: SSA_BoekingSluiten Sluit een nieuwe boeking die is aangemaakt met SSA_BoekingNieuw en is ingevuld met SSA_BoekingRegelToevoegen. Dit is het moment waarop SnelStart de boeking controleert en zonodig meldt dat de boeking niet in balans is. Let op: SnelStart controleert hier geen BTW bedragen! Het is dus mogelijk om een boeking te maken waarbij de BTW bedragen niet kloppen! In SnelStart wordt dit als volgt getoond:
p 44
Boekingen lezen en maken
Parameters:!
geen
Resultaat type:!
getal
Resultaat:!
het SnelStart boeking's ID waaronder de boeking is gedaan
Resultaat in geval van een fout:!
0
Foutcontrole:!
SSA_LaatsteFoutCode moet 0 zijn (zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld: zie het voorbeeld bij SSA_BoekingNieuw
SSA_BoekingVerwijderen Gebruik: SSA_BoekingVerwijderen( BoekingID ) Verwijdert de boeking uit de administratie met de boeking's ID-code BoekingID. Dit ID nummer kan van een boeking worden opgevraagd met de functie SSA_BoekingID. De boeking moet afgesloten zijn. Parameters !
BoekingID:!
het ID van de boeking
Resultaat type:!
getal
Resultaat:! !
1:! 0:! ! !
de boeking is succesvol verwijderd er is een fout opgetreden; (SSA_LaatsteFoutMelding geeft informatie over de fout, zie § 'Controleren of een functie succesvol is uitgevoerd')
Voorbeeld van het uit SnelStart verwijderen van de zojuist ingelezen boeking: Set Variable [$FunctieResultaat; SSA_BoekingVerwijderen( SSA_BoekingID )] !
p 45