Création de pièce commerciale
L'action pour la création de pièce commerciale : integration_piece
Balise de paramètres (parameters) | Niveau | Contenu | Obligatoire | Remarques |
---|---|---|---|---|
dos | 1 | Dossier achat-vente | NON | Par défaut selon utilisateur |
Balise du corps (data) | Niveau | Contenu | Obligatoire | Remarques |
---|---|---|---|---|
ipar, ient, imouvtb, …etc | 1 | La balise indique le groupe de données de l’intégration de pièce concerné. Voir plus bas | OUI | |
{“nomChamp1”:”valeur1”,”nomChamp2”:valeur2”} | 2 | Liste des champs avec leur nom de champ et la valeur | OUI | Le le type de champs dépend du dictionnaire de données. |
La structure JSON est strictement identique à celle d’un fichier l’intégration de pièce (GTFI GTPP150) avec une mise à plat au format JSON des balises.
Chaque pièce à créer est décrite à l'aide de la structure d'un fichier GTFI, mais il faut appliquer une correspondance entre l’entité et le nom de balise à transmettre
Code balise JSON | Entité intégration correspondante | Obligatoire | Niveau imbrication | Remarque |
---|---|---|---|---|
ipar | IPAR | OUI | aucun | Un seul IPAR par demande |
ient | ENT | OUI | aucun | Entête de pièce, un seul par demande |
ientcplext | ENTCPLEXT | NON | aucun | Entête de pièce complément, un seul par demande |
ieec | EEC | NON | aucun | Echéances multiples |
itxttb et itxt | ITXT | NON | aucun | Intégration de texte. itxttb doit être utilisé pour indiquer un tableau de itxt |
ieadtb et iead | EAD | NON | aucun | Adresse. ieadtb doit être utilisé pour indiquer un tableau de iiead |
imouvtb et imouv | MOUV | OUI | aucun | Mouvement de pièce. imouvtb doit être utilisé pour indiquer un tableau de imouv |
imouvtaxtb et imouvtax | MOUVTAX | NON | imouvtb | Taxe de mouvement de pièce. imouvtaxtb doit être utilisé pour indiquer un tableau de imouvtax |
imouvcliretb et imouvclire | MOUVCLIRE | NON | imouvtb | Remise client de mouvement de pièce. imouvcliretb doit être utilisé pour indiquer un tableau de imouvclire |
imvtltb et imvtl | MVTL | NON | imouvtb | Ventilation de mouvement de pièce. imvtltb doit être utilisé pour indiquer un tableau de imvtl |
Les balises ‘tableau’ (imouvtb par exemple) impliquent l’utilisation de [ ], même pour la transmission d’un seul élément
Exemples avec imouvtb
Notes complémentaires
iadtb est un tableau contenant 1 à 5 fois un enregistrement adresse EAD (adresse manuelle), pour les 5 possibilités d’adresses d’une pièce.
Imouvtb est un tableau contenant les informations lignes. Une ligne correspond à :
1 mouvement (MOUV)
0 à n taxes complémentaire (MOUVTAX)
0 à n ventilations où somme des quantités des ventilations = quantité mouvement (MVTL)
0 à 2 notes (1 texte ligne, 1 note ligne)
Les textes au format RTF doivent être encodés en base64. Lorsque le web service détectera un enregistrement iTXT avec un type RTF, il se chargera de décoder la base64 pour écrire dans le texte dans le GTFI sous le bon format.
Exemple de corps
Bloc de code | ||
---|---|---|
| ||
'data': { 'ipar': { 'TRAIT':'C', 'DOS' :'998', 'TICOD':'C', 'PICOD':'1' }, 'ient': { 'ETATPIECE' :'1', 'TIERS':'C0000001', 'OP' :'C', 'REFPIECE':'Test pièce sw json', 'DEPOT' :'1' }, 'imouvtb': [ { 'imouv': { 'CE2' :'1', 'REF' :'ALB0001', 'DVQTE':'3' } } ] } |
Exemple complet flux JSON : devis simple
Bloc de code | ||
---|---|---|
| ||
{ "action":"WEB_SERVICE_INFINITY", "access_token":"{{TOKEN}}", "param":" { 'action': {'swinfinity': 'integration_piece'}, 'data': { 'ipar': { 'TRAIT':'C', 'DOS' :'998', 'TICOD':'C', 'PICOD':'1' }, 'ient': { 'ETATPIECE' :'1', 'TIERS':'C0000001', 'OP' :'C', 'REFPIECE':'Test pièce sw json', 'DEPOT' :'1' }, 'imouvtb': [ { 'imouv': { 'CE2' :'1', 'REF' :'ALB0001', 'DVQTE':'3' } } ] } }" } |
Exemple complet flux JSON : devis avancé
Bloc de code | ||
---|---|---|
| ||
{ "action":"WEB_SERVICE_INFINITY", "access_token":"{{TOKEN}}", "param":" { 'action': {'swinfinity': 'integration_piece'}, 'data': { 'ipar': { 'TRAIT':'C', 'DOS' :'998', 'ETB' :'1', 'TICOD':'C', 'PICOD':'1' }, 'ient': { 'ETATPIECE' :'1', 'TIERS':'C0000001', 'OP' :'C', 'REFPIECE':'Test SWINFINiTY', 'DEPOT' :'1' }, 'ieadtb': [ { 'iead': { 'ADRNO':'3', 'NOM' :'CHEZ PARTICULIER', 'CPOSTAL':'17000', 'VIL' :'LA ROCHELLE' } }, { 'iead': { 'ADRNO':'4', 'NOM' :'COMPTABILITE', 'CPOSTAL':'17138', 'VIL' :'PUILBOREAU' } } ], 'ieec': { 'REGL(1)' :'C', 'ECHVTL(1)':'1/3', 'REGL(2)' :'T30', 'ECHVTL(2)':'S' }, 'itxttb': [ { 'itxt': { 'TXTNAT':'2', 'TXTTYP':'1', 'TXTTRAIT':'1', 'TEXTE':'Ceci est la note entete' } }, { 'itxt': { 'TXTNAT' :'2', 'TXTTYP' :'2', 'TXTTRAIT' :'1', 'TEXTE' :'Ceci est le texte entete' } } ], 'imouvtb': [ { 'imouv': { 'CE2' :'1', 'REF' :'ALB0001', 'DVQTE':'3' }, 'imouvtaxtb': [ {'imouvtax': { 'TAXCOD':'ECO018', 'DEEEPU':'1.15', 'LIB' :'taxe 018' } }, {'imouvtax': { 'TAXCOD':'ECO034', 'DEEEPU':'1.30', 'LIB' :'taxe 034' } } ] }, { 'imouv': { 'CE2' :'1', 'REF' :'ALB0002', 'QTEDEVIS':'5' }, 'imvtltb': [ {'imvtl': { 'QTE' :'3', 'DELDEMDT' :'20210401' } }, {'imvtl': { 'QTE' :'2', 'DELAIDEMANDE' :'20210301' } } ], 'itxttb': [ { 'itxt': { 'TXTNAT' :'2', 'TXTTYP' :'4', 'TXTTRAIT' :'1', 'TEXTE' :'Ceci est la note ligne ALB0002' } }, { 'itxt': { 'TXTNAT' :'2', 'TXTTYP' :'5', 'TXTTRAIT' :'1', 'TEXTE' :'Ceci est le texte ligne ALB0002' } } ] } ] } }" } |
Format de la réponse :
Balise | Contenu |
---|---|
error | Anomalie technique de l’appel du service web 0 = pas n’anomalie, autre valeur = anomalie Dans ce cas la balise |
result | Détail du résultat fonctionnel de l’appel du service web
La |
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "error": 0, "result": "{\"label\": \"infinity\",\"codeScript\": \"integration_piece\",\"result\":{\"common\":{\"resultcode\": \"0\",\"errormessage\": \"\"},\"response\":{\"pino\": \"10000125\",\"prefpino\": \" \"}}}", "txterr": "", "infos": "" } |