Navigate to the AFAS KnowledgeBase Back to searchresults

Other articles

Did this answer your question?

Thanks for your feedback!

Yes No
GetConnector (REST/JSON) PROFIT 10

GetConnector (REST/JSON)

Een GetConnector haalt gegevens op uit een Profit-omgeving.

Voorbereiding:

Inhoud

Meta-info GetConnector raadplegen

Je gaat aan de slag met GetConnectoren.

Je kunt makkelijk zien welke GetConnectoren beschikbaar zijn en de metagegevens van de connectoren (alle velden, veldtype en veldlengte) raadplegen.

Voorbereidingen:

  1. Je hebt de GetConnector aangemaakt en ingericht.
  2. Je hebt een app connector aangemaakt en de GetConnector hieraan toegevoegd.
  3. Je hebt een gebruikers-token van een gebruiker van de app connector.

Meta-info raadplegen:

  1. Roep de Profit REST Services aan.

  2. Selecteer de GetConnector en klik op Metainfo om de meta-informatie op te halen.

GetConnector uitvoeren (regels ophalen)

Je voert een GetConnector uit om regels (records) op te halen uit Profit.

GetConnector uitvoeren (regels ophalen):

  1. Roep de Profit REST Services aan.
  2. Selecteer de connector.
  3. Klik op: Execute.
  4. Je ziet bovenaan de URL van de aanroep.

  5. Je kunt snel schakelen naar de JSON-indeling.

Regels ophalen in batches

Een GetConnector kan veel records opleveren, ondanks het gebruik van filters. Daarom is het aan te raden de records op te halen in pakketjes met de velden 'skip' en 'take'.

Regels ophalen in batches:

Aanroep:

<endpoint>/connectors/connectorname?skip=n&take=n

  • skip: het aantal records dat moet worden overgeslagen.
  • take: het aantal records dat moet worden opgehaald.

Je moet voor elk op te halen pakketje een aparte aanroep doen, tot je een pakketje terugkrijgt dat geen records meer bevat.

Let op:

Gebruik altijd een sortering bij het uitvoeren van een opdracht met skip/take. Sorteer bij voorkeur op een uniek veld, zoals factuurnummer of medewerkercode, of een combinatie van velden.

Voorbeeld:

Je haalt verlofregels op in pakketjes van 10 regels.

<endpoint>/connectors/Profit_Employee_Leaves?skip=0&take=10&orderbyfieldids=StartDate

<endpoint>/connectors/Profit_Employee_Leaves?skip=10&take=10&orderbyfieldids=StartDate

<endpoint>/connectors/Profit_Employee_Leaves?skip=20&take=10&orderbyfieldids=StartDate

etc.

Regels sorteren

Regels oplopend of aflopend sorteren.

Regels oplopend sorteren

Aanroep:

<endpoint>/connectors/Orderbyfieldids=Field1%2CField2

Tussen de sorteren velden plaats je de code %2C, dit is een komma.

Voorbeeld:

Je haalt verlofregels op en sorteert deze oplopend op begindatum.

../ProfitRestServices/connectors/Profit_Employee_Leaves?orderbyfieldids=StartDate

Regels aflopend sorteren

Plaats een minteken voor het sorteerveld.

Aanroep:

<endpoint>/connectors/Orderbyfieldids=-Field1%2C-Field2

Voorbeeld:

Je haalt verlofregels op en sorteert deze aflopend op jaar en oplopend op medewerker.

<endpoint>/connectors/Profit_Employee_Leaves?orderbyfieldids=-Year%2CEmployeeId

Filter toepassen (algemene uitleg)

Gebruik altijd filters bij het aanroepen van een GetConnector. Dit komt de performance ten goede en je krijgt als resultaat alleen de records die je nodig hebt.

Als je altijd hetzelfde filter wilt toepassen, neem je een vast filter op in de GetConnector in Profit. Hieronder wordt besproken hoe je een filter toepast in de aanroep van de GetConnector.

Filter op één waarde:

Aanroep:

<endpoint>/connectors/connectorname?filterfieldids=[Field]&filtervalues=[Value]&operatortypes=1

  • Field = de veldnaam waarop je filtert, bijvoorbeeld Artikelcode, Datum, etc.
  • Value=de filterwaarde, bijvoorbeeld artikelcode 1000, de datum 2018-01-01, etc.
  • Operatortypes = het filtercriterium, bijvoorbeeld 'is gelijk aan', 'is groter dan', etc.

Filter maken in AFAS Connect:

Je filtert bijvoorbeeld op artikelcode 1000.

<endpoint>/connectors/Profit_Article?filterfieldids=ItemCode&filtervalues=1000&operatortypes=1

Stel het filter samen in AFAS Connect. De URL wordt automatisch opgebouwd:

EN-filter / OF-filter

Uitleg bij filteren op meerdere waarden.

EN-filter op meerdere velden:

Je filtert op meerdere velden en records moeten aan alle filtercriteria voldoen.

Aanroep:

<endpoint>connectors/connectorname?[Field1]%2C[Field2]&[Value1]%2C[Value2]&operatortypes=[Type1]%2C[Type2]

  • De aanroep bevat achtereenvolgens de velden, filterwaarden en operatoren. Wil je bijvoorbeeld op drie waarden filteren, dan krijg je drie velden, dan drie filterwaarden en dan drie operatoren.
  • Gebruik een komma (code %2C) als scheidingsteken tussen de velden en tussen de filterwaarden.

Stel het filter samen in AFAS Connect. De URL wordt automatisch opgebouwd:

<endpoint>/connectors/Profit_Article?filterfieldids=ModifiedDate%2CArtGroup&filtervalues=2019-01-01T00%3A00%2C100&operatortypes=2%2C1

Houdt er rekening mee dat Gewijzigd op een datum-/tijdveld is.

OF-filter op meerdere velden:

Je filtert op meerdere velden en records moeten minimaal één filtercriterium voldoen.

Aanroep:

<endpoint>/connectors/connectorname?[Field1]%3B[Field2]&[Value1]%3B[Value2]&operatortypes=[Type1]%3B[Type2]

  • Dit is een 'is gelijk aan' filter. Het filtercriterium 'is gelijk aan' staat in het veld Operatortypes.
  • Gebruik een puntkomma (code %3B) als scheidingsteken tussen de velden en tussen de filterwaarden.

Stel het filter samen in AFAS Connect. De URL wordt automatisch opgebouwd:

<endpoint>/connectors/Profit_Article?filterfieldids=ArtGroup%3BArtGroup&filtervalues=100%3B200&operatortypes=1%3B1

Filter met filtercriteria

Uitleg bij filteren met een filtercriterium, zoals 'bevat', 'groter dan', 'kleiner dan', etc. Als je een filter maakt in AFAS Connect, zie je achter het criterium een cijfer. Dit cijfer wordt in de aanroep gebruikt.

Meer informatie over de filtercriteria.

Complex filter toepassen

Je kunt bij het uitvoeren van een GetConnector ook een EN/Of-filter combineren.

Dit wordt met een voorbeeld uitgelegd. Je begint met een XML-filter dat je omzet in een JSON-filter.

Toe te passen filter:

  • Medewerkers met de afdeling DESGTEAM en die in Leusden wonen
  • Medewerkers met de afdeling KWATEAM en die in Zeewolde wonen

XML-filter maken:

  1. Start https://connect.afas.nl en log in.
  2. Ga naar: REST/JSON / GetConnectors.
  3. Vul het filter in en klik op Enable JSON filter.

  4. Het veld URL bevat de hele aanroep inclusief het filter:

    https://31465.restaccept.afas.online/ProfitRestServices/connectors/Profit_Employees_EnYoi?filterjson=%7B%22Filters%22%3A%7B%22Filter%22%3A%5B%7B%22%40FilterId%22%3A%22Filter%201%22%2C%22Field%22%3A%5B%7B%22%40FieldId%22%3A%22OrgUnit%22%2C%22%40OperatorType%22%3A1%2C%22%23text%22%3A%22DESGTEAM%22%7D%2C%7B%22%40FieldId%22%3A%22Woonplaats%22%2C%22%40OperatorType%22%3A%221%22%2C%22%23text%22%3A%22Leusden%22%7D%5D%7D%2C%7B%22%40FilterId%22%3A%22Filter%202%22%2C%22Field%22%3A%5B%7B%22%40FieldId%22%3A%22OrgUnit%22%2C%22%40OperatorType%22%3A%221%22%2C%22%23text%22%3A%22KWATEAM%22%7D%2C%7B%22%40FieldId%22%3A%22Woonplaats%22%2C%22%40OperatorType%22%3A%221%22%2C%22%23text%22%3A%22zeewolde%22%7D%5D%7D%5D%7D%7D

Direct naar

  1. Profit Rest Services (JSON)
  2. Connector aanroepen via Profit Rest Service
  3. App connector toevoegen voor Profit Rest Service
  4. Token genereren voor de Profit Rest Service
  5. XML omzetten naar JSON
  6. GetConnector aanroepen
  7. UpdateConnector aanroepen
  8. ReportConnector aanroepen
  9. SubjectConnector aanroepen
  10. ProfitVersionConnector aanroepen