Les performances du driver Twinfield d’Invantive ont été améliorées grâce à un trafic de données réduit et une gestion plus intelligente. Pour cela, il n’est pas nécessaire de modifier les requêtes existantes. Les améliorations fonctionnent immédiatement.
Les améliorations suivantes ont été mises en œuvre :
- seules les colonnes demandées sont récupérées auprès de Twinfield ;
- le filtrage est possible sur beaucoup plus de champs qu’auparavant grâce au filtrage côté serveur ;
- les totaux comme le nombre de lignes sont déterminés avec une seule API call au lieu de récupérer toutes les lignes.
Sous le Capot
Comptage
select count(*)
from VATCodes@twinfield
L’exécution donne :
COUNT___
15
Recherche
select code
, name
from VATCodes@twinfield
where code like 'V%'
order
by code
L’exécution donne :
CODE | NAME
V19 | Ventes 19% en surplus
VBIN | Livraison intra-UE
VBUI | Livraison extra-UE
VH | Ventes hautes
VINS | Installation/Demande à distance
VL | Ventes basses
VN | TVA 0%
VP | Utilisation privée
Le motif n’est pas signalé comme traité. Invantive UniversalSQL applique encore une fois la même condition. C’est nécessaire car Twinfield recherche sur plus d’un champ : le motif peut être plus large que la condition dont il découle. Une réponse plus large coûte des lignes, une réponse plus étroite les perd. Une valeur avec un * ou ? littéral reste donc entièrement au sein d’Invantive UniversalSQL, car Twinfield ne documente pas de méthode pour échapper ces caractères.
Consommation visible dans le dictionnaire de données
Les limites s’appliquent chez Twinfield par environnement. C’est pourquoi SystemDataContainers@datadictionary affiche maintenant par connexion ce que Twinfield indique sur ses propres limites de taux : le budget par minute, ce qui en reste, quand il sera reconstitué et ce que le dernier appel a coûté.
select minutely_limit
, minutely_remaining
, consumption_last_call
from SystemDataContainers@datadictionary
where minutely_limit is not null
L’exécution donne :
| MINUTELY_LIMIT | MINUTELY_REMAINING | CONSUMPTION_LAST_CALL |
|---|---|---|
| 500 | 489 | 1 |
L’environnement mesuré dispose donc de 500 appels par minute.
Voir aussi
Disponibilité
Les améliorations sont disponibles à partir de la version 27.0.