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

 

Permet d'obtenir un descriptif de structure d'une table "maître" ou d'un "type" en particulier via l'API de Kentika.

Paramètre

 

URL : REST/Fields

 

table : soit une des tables de Kentika (document, auteur, reference, personne, thesaurus... de manière générale, toute table de la base de données) soit un type en particulier exprimé sous la forme du type seul ou bien du type préfixé par le nom de la table suivi d'un point.

 

Exemples

{"table": "document"}

{"table": "classeur"}

{"table": "document.classeur"}

 

Codes erreurs

Si une erreur est détectée, "request_status" est égal à "error" et le code est retourné.

404 : Table not specified

405 : Table not identified

406 : Type not identified

 

Exemple

Requête  : {"table": "facturierXX"}

Réponse : {"request_status": "error","err_code": 406,"err_msg": "Type not identified"}

 

Résultat

 

Si les table et / ou type sont connus, la liste des champs est retournée. En entête : le statut, la graphie exacte du type, le nombre de champs. Pour chaque champ, un bloc d'informations.

{

    "request_status": "success",

    "table": "Document.Dépôt",

    "fields_nb": 17,

    "fields": [

             {        "field_num": "21",

                      "field_lib": "Titre",

                      "field_etiq": "TIT",

                      "field_select": true,

                      "field_update": true,

                      "field_content": "text" },

 

Pour connaître la liste des types de documents déclarés dans la base de données, il suffit d'analyser, dans la liste des champs retournés sur la requête {"table": "document"}, le contenu du champ "Type"

 

field_num : numéro du champ, tel que fixé dans Kentika.

field_lib : libellé du champ

field_etiq : code

 

Ecran de paramétrage d'une rubrique dans Kentika

 

L'expression d'un champ dans les services "Select" et "Update" peut se faire par son numéro, son code ou son libellé.

 

field_select : le champ peut être utilisé en recherche

field_update : le champ peut faire l'objet d'une mise à jour via le service update

field_content : nature de l'information

text : texte libre

list : liste de valeurs possibles fournies

thesaurus : un mot clé du thesaurus

date : peut être une date précise ou une date floue

number : nombre

email : adresse email

URL : URL

address : adresse (les composant sont exprimés en xml)

link.text : la valeur doit appartenir à une table liée

       dans ce cas, deux informations complémentaires sont fournies :

              field_link_table : le nom de la table

              field_link_types : les éventuels types de la table

 

Exemples

 

pour un champ "text"

{"field_num": "131",

"field_lib": "Commentaire",

"field_select": true,

"field_update": true,

"field_content": "text"},

pour un champ "list"

{"field_num": "1361",

"field_lib": "Statut",

"field_select": true,

"field_update": true,

"field_etiq": "W2_$dST",

"field_content": "list",

"field_values": [

             {"value_code": "00",

             "value_lib": "Initialisé"},

             {"value_code": "10",

             "value_lib": "Brouillon"},

             {"value_code": "15",

             "value_lib": "Privé"},]

             },

pour un champ "link.text"

             {"field_num": "1341",

             "field_lib": "Equipe",

             "field_select": true,

             "field_update": true,

             "field_etiq": "W2_$dGR",

             "field_content": "link.text",

             "field_link_table": "Références",

             "field_link_types": "Equipe"},

 

Liste des codes d'erreur : cliquer ici.