| Version 7 (modified by , 7 years ago) ( diff ) |
|---|
API d'Appel d'offre de Clariprint
L'API d'Appel d'Offre permet de lancer des calculs en lots.
API CSV
L'api CSV est adaptée pour des données provenant d'un tableur (Excel).
Base
- Type de requête : POST
- url : mon_domaine/optimprokect/csv.wcl
Création d'un appel d'offre
Données du formulaire :
- key : clef API define au niveau du Client Optimproject
- action => "creation"
- callback : URL appelée par le système à la fin du calcul (à tester)
- sheets : tableau de nom de feuille. ex : sheets[]="A"&sheets[]="B")
- columns : tableau des colonne indexé sur les feuilles. ex : columns[A]="projet;code;hauteur;largeur;"
- rows : tableau indexe des ligne de calcul (les projet à calculer)
- la clef d'index contient "<nom de la feuille>!<num de ligne>" : le nom de la feuille doit correspondre à une feuille de sheets, le num de ligne doit juste permette une clef unique. sous un tableur on utilise le numéro de la ligne
- valeurs : sous la forme d'une liste séparée par un ";" qui doit correspondre au colonnes (columns) définies.
Données retournées
Données retournées en mode CSV.
Une ligne retournant la clef de session
SESSION;<clef de session>
Pour chaque projet identifié, retourne une ligne
PROJECT;-;<nom du projet>;CREATE
Demande de résultats
Données du formulaire :
- key : clef API define au niveau du Client Optimproject
- session : le code session
- action' :"status"
- nb_responses : nombre de résultats retournés par lignes par default 1
Données retournées :
Pour chaque projet, une ligne de type :
PROJET;<id clariprint>;<reference>;<OK | CALCUL>;<meilleur tarif>;<mille plus>;<nom du fournisseur>;<rang>;<indice>
En mode CALCUL, les autres données sont vides.
Structures des colonnes
laisser vide si pas de certitudes de l'information.
boolean : oui = 1,y,o
| Colonne | Valeurs possible | Informations |
|---|---|---|
| "ref", "reference", "code", "numero" | texte | référence du produit / devis |
| "type" | dépliant / folded / feuillet / leaflet / brochure / book / chemise / folder | type de produit |
| "procédé" | vide pour automatique, sinon une liste parmi : of, ouv, or, oc, n | |
| "quantité totale", "qt" | entier | nombre total d'exemplaires du produit |
| "livré à plat", "flat" | booléen | pour un dépliant ou une chemise indique si il est livré à plat va |
| "assemblage","binding" | ||
| "PerfectBinding","DCC" | Dos Carré Collé | |
| "PerfectBindingPUR","DCCPUR" | Brochage Dos Carré Collé PUR | |
| "SewnBinding","DCCC" | Brochage Dos Carré Cousu | |
| "Stitching2","PC","piqure cheval","piqûre cheval" | 2 agrafes | |
| "Stitching3" | 3 agrafes | |
| "Stitching4" | 4 agrafes | |
| "OpenEyesStitching2","PB", "piqure bouclette", "piqûre bouclette" | 2 bouclettes | |
| "OpenEyesStitching3" | 3 bouclettes | |
| "OpenEyesStitching4" | 4 bouclettes | |
| "WireO","WO" | Spirales | |
| "InlineStiching","PL" | Piqûre en ligne | |
| "GluedOnFold","CP" | Collage au pli | |
| "Free","FreeBinding" | libre, dans liaison | |
| "Folded","NA" | plié non assemblé | |
| "orientation assemblage" | "portrait","landscape" | si vide ou les valeurs données, à la française |
| "pliage" | code JDF ou voir liste ci-dessous | |
| "découpe" | cf code découpe | |
| "forme exitante" | bool | si non, le coût de création de la forme de découpe |
| "nbr de modèle" | entier | "4" |
| "quantité par tirage " | entier | quantité par tirage la colonne peut être dupliqué par modèles |
| "nbr de version (changement/modèle)" | nombre de version par modèle si applicable | |
| "largeur fini", "width" | en cm | |
| "hauteur fini", "height" | en cm | |
| "largeur à plat","largeur a plat", "flat width" | en cm, pour dépliant et chemise | |
| "hauteur à plat","hauteur a plat", "flat height" | en cm, pour dépliant et chemise | |
| "marque de papier", "brand" | marque de papier | |
| "type de papier", "qualite de papier" | csv2qualitePapier(current,data), "Couché Moderne sans bois Brillant" | |
| "grammage" | csv2grammagePapier(current,data), "150" | |
| "encre r" | csvAddEncreRecto(current,lower_data), "Q" | |
| "encre v" | csvAddEncreVerso(current,lower_data), "Q" | |
| "r modif version" | csvChangeEncreRecto(current,lower_data), "Aucune modification" | |
| "v modif version" | csvChangeEncreVerso(current,lower_data), "Aucune modification" | |
| "finition r" | csvAddFinitionRecto(current,lower_data), "Vernis Acrylique Satin avec réserve tampon" | |
| "finition v" | csvAddFinitionRecto(current,lower_data), "Vernis Acrylique Satin" | |
| "trous" | csv2trous(current,lower_data), "" | |
| "perforation" | csv2perforation(current,lower_data), "" | |
| "numérotation" | csv2numerotation(current,lower_data), "" | |
| "rainage" | csv2rainage(current,lower_data), "Automatique" | |
| "gauffrage hauteur", "gauffrage h" | csv2gauffrageH(current,lower_data), "" | |
| "gauffrage largeur", "gauffrage l" | csv2gauffrageL(current,lower_data), "" | |
| "dorure" | csv2dorureM(current,lower_data), "" | |
| "dorure hauteur", "dorure h" | csv2dorureH(current,lower_data), "" | |
| "dorure largeur", "dorure l" | csv2dorureL(current,lower_data), "" | |
| "dorure matière", "dorure matiere" | csv2dorureM(current,lower_data), "" | |
| "forme de découpe" | csv2decoupeExitante(current,lower_data), "" |
| "quantité conditionnee" | csv2conditionnementQ(product,lower_data), "3500" |
| "nbr de lot" | csv2conditionnementLot(product,lower_data), "4" |
| "emballage" | csv2conditionnementEmballage(product,lower_data), "film" |
| "exemplaire" | csv2conditionnementEmballageQt(product,lower_data), "25" |
| "nbr de point de livraison" | none, "1" |
| "livraison point" | csv2livraison(dev,data), "FR-08" |
| "livraison quantité" | csv2livraisonQt(dev,data), "11900" |
| "composant","produit" | (if (product % opFrontProduct/ProduitComposite) |
when x := csv2composant(product,lower_data) in (
product.composants :add x, current := x)), ""
| "type de produit" | none, "" |
| "nbr de pages","pages" | { |