Manuel

KAAT (Kentika As A Toolbox) : service "Select"

 

Permet d'effectuer une recherche et d'obtenir en retour tout ou partie des informations relatives aux enregistrements trouvés.

La fonction de recherche proposée dans l'API exploite la recherche disponible sur le portail avec l'intégralité des possibilités. Pour une description détaillée des possibilités de recherche de Kentika : cliquer ici.

 

 

Les points forts de la recherche documentaire de Kentika sont nombreux, les principaux sont :

- recherche multi-champs ;

- opérateurs et approximation phonétique ;

- recherche sur date floue (exemple : été 2015) ;

- tri des résultats par pertinence ;

- autopostage ;

- recherche full text avec opérateurs de proximité...

 

Paramètres

 

URL : Rest/Select

 

Table : nom de la table ou du type (cf ci-dessus) ;

Sort : critère de tri ."A" ou "D" suivi du numéro de champ précédé de = (D=41 pour un tri par date de parution antéchronologique), "recent" pour un tri par ordre antéchronologique de création ou "auto" pour un tri par pertinence .

result_startat : numéro d'ordre du premier enregistrement à retourner ;

result_howmany : nombre de fiches (valeur par défaut : 10) ;

result_fields : champ à retourner (tous si non précisé), séparés par des points virgule.

 

Recherche sur un champ

 

what : valeur cherchée ;

field : champ sur lequel la recherche doit porter ("all" pour tous les champs) ;

oper (optionnel): opérateur de comparaison.

 

Recherche multi-critère

 

query : équation de recherche exprimée sous la forme champ, opérateur de comaparaison, valeur recherchée, opérateur de combinaison.

Exemple : Titre='Kentika ged' AND Date de parution > '2014'

 

Opérateur de combinaison : AND ; OR ; AND NOT

Opérateur de comparaison : = ; > ; < ; >= ; <= ; !=

Pour une valeur vide, utiliser comme valeur "!null" ; pour une valeur non vide, utiliser "!all".

 

Exemple : pour sélectionner tous les enregistrements ayant un commentaire renseigné : Commentaire = !all

 

Autres possibilités

 

Recherche prédéfinie

 

L'utilisation d'une requête prédéfinie correspond au cas où on doit faire exécuter régulièrement une recherche avec des critères identiques (exemple : rechercher les courriers que l'utilisateur connecté doit approuver).

 

list: folder

folder: (numéro de la requête).

 

Panier

 

list : selection

select : (numéro du panier)

 

Exemples

 

Obtenir toutes les informations de tous les enregistrements de type "Classeur"

{"table": "classeur",

"result_howmany": "5",

"result_startat": "1"}

 

Les sociétés dont la ville est "Boulogne"

{"table": "société",

"what": "boulogne",

"field": "ville",

"result_howmany": "5",

"result_startat": "1"}

 

Exemples de requêtes correctes

 

{

    "list": "selection",

    "select": "14",

    "result_howmany": "5",

    "result_startat": "1"

}

{

    "list": "folder",

    "folder": "7",

    "result_howmany": "5",

    "result_startat": "1"

}

{

    "table": "classeur",

    "field": "fulltext",

    "what": "kentika AND GED",

    "result_howmany": "15",

    "result_startat": "1"

}

{

    "table": "thesaurus",

    "what": "france",

    "result_howmany": "15",

    "result_startat": "1"

}

 

Résultats

 

result_nb : nombre d'enregistrements répondant à la requête

result_list : pour chaque enregistrement : un entête ; les champs demandés ; les archives éventuelles.

 

{

    "result_nb": 20,

    "result_list": [

             {

                      "record_num": "244512406279",

                      "record_table": "Document.Classeur",

                      "record_title": "Pub A4 Archimag - lancement d'Atomic",

                      "record_url": "http://Localhost/KENTIKA-244512406279-Pub-a4.htm",

                      "Documents_Titre": "Pub A4 Archimag - lancement d'Atomic",

                      "Documents_Date_de_parution": "21/07/2015",

                      "Documents_Statut": "Publié",

                      "archives": [

                               {

                                        "archive_url": "http://Localhost/GEIDEFile/pub_a4_kentika.jpg?Archive=191550291973&File=pub%5Fa4%5Fkentika%5Fjpg",

                                        "archive_preview": "http://Localhost/GED_KDE/preview/P191550291973.JPG",

                                        "archive_name": "pub-A4-kentika.jpg"

                               },

                               {

                                        "archive_url": "http://Localhost/GEIDEFile/Kentreprise_analyse_SiteWeb.odt?Archive=192980291016&File=Kentreprise%5Fanalyse%5FSiteWeb%5Fodt",

                                        "archive_preview": "http://Localhost/GED_KDE/preview/P192980291016.jpg",

                                        "archive_name": "KEntreprise_Analyse_SiteWeb.odt"

                               }

                      ]

             },

 

record_Num : numéro interne Kentika de l'enregistrement sous forme codée.

 

Pour retrouver un enregistrement en particulier, il est possible d'utiliser la requête suivante :

{"table": "document",

"what": "244512406279",

"field": "Record_num" }

 

record_table : table maître suivi du type

record_title : titre de l'enregistrement

record_url : URL d'accès sur le portail à la fiche

record_relevance : pertinence de l'enregistrement par rapport à la requête

+ (champ spécifiquement demandés dans la requête)

archives : les fichiers GED attachés à la notice auxquels l'utilisateur spécifié a droit

       archive_url : URL d'accès au fichier

       archive_preview : URL de l'imagette

       archive_name : nom du fichier

       archive_relevance : pertinence du fichier

 

Pertinence du fichier : si la recherche portait sur le "FullText", indique que ce fichier comportait l'expression recherchée ainsi que son niveau de pertinence (echelle de 0 à 100).

 

Kentika permet d'écrire des scripts (en langage 4D) qui permettent de créer des rubriques virtuelles. Ces scripts peuvent être utilisés, en restituation, comme des champs réels de la base de données.

Exemple : sur le portail Atomic, les consultations des enregistrements font l'objet d'écriture dans le  log. Il est ensuite possible de calculer le nombre de fois où un enregistrement a été vu via un script et d'en utiliser le résultat comme si c'était un champ de la base.

{

    "table": "classeur",

    "result_howmany": "5",

    "result_startat": "1",

    "result_fields": "Titre;Mots cles;AScript_Nb de consultations web depuis 3 mois"

}

 

Codes d'erreur

 

Si la requête ne peut aboutir, un code d'erreur est renvoyé :

{

    "err_code": 52,

    "err_msg": "no record found"

}

 

Liste des codes d'erreur : cliquer ici.