Ik wil graag een aantal companies uit mijn queries filteren door middel van een startup SQL. Voor mijn Exact Online-based klanten heb ik dit al ingericht, maar voor AFAS loop ik tegen wat generieke foutmeldingen aan. Dit is de code die ik heb geprobeerd:
use
select administratie
from AfasOnline.GetConnector.administratieparameters_algemeen_rapport\_
where administratie not in (4, 8, 2, 3);
Mijn vermoeden is dat AfasOnline.GetConnector.administratieparameters_algemeen_rapport_ de verkeerde tabel is, maar ik zie zelf geen alternatief. Kan iemand mij hierbij op weg helpen?
De tabel SystemPartitions@DataDictionary geeft een overzicht van de beschikbare administraties over alle connectors heen. Daarmee is het erg handig om mee te filteren.
AFAS heeft echter geen administratie-concept zoals Exact Online, Twinfield of Yuki. Het is meer zoals Odoo en Oracle Applications. Het is aanbevolen om vanuit de start-up SQL views te definiëren die de data al filteren van tabellen die wel administratie-specifieke data bevatten.
Advies is om in de startup SQL custom views klaar te zetten die uitsluitend de gewenste administraties doorlaten. Dat kan via een harde lijst of via een join met een InMemoryStorage-tabel of subquery.
Voorbeeld:
create or replace view administraties
as
select 1 code
union all
select 2 code
;
create or replace view Regels_Selectie
as
select rgl.*
from Regels rgl
join administraties@DataDictionary ade
on ade.code = rgl.administratie
Deze vraag is automatisch gesloten na 1 week inactiviteit. Het laatste gegeven antwoord is gemarkeerd als oplossing.
Gelieve een nieuwe vraag te stellen via een apart topic als het probleem opnieuw optreedt. Gelieve in de nieuwe vraag een link naar dit topic op te nemen door de URL er van in de tekst te plakken.