|
<< Click pentru afișare cuprins >> Navigare: SmartCash Everywhere REST Server > Metode de scriere SmartCash Everywhere REST Server > AddNewSupplierTransfer |
Metoda AddNewSupplierTransfer este utilizata pentru transmiterea continutului unei Facturi de livrare de la o locatie de livrare din afara retelei de magazine (persoana juridica distincta) catre o locatie din cadrul unei retele de magazine SmartCash. In mod uzual, locatia de livrare este un depozit de marfa intretinut intr-o aplicatie ERP, depozit mapat cu un furnizor extern din perspectiva solutiei SmartCash RMS. Pentru a putea transmite facturi catre magazine, sistemul extern trebuie sa salveze in campuri permanente de date, valoarea corspunzatoare campului NRSHOP_DEaST din sistemul SmartCash , pentru fiecare magazin sau locatie SmartCash in parte. Acest camp poate fi obtinut pentru unul sau pentru toate magazinele din retea cu una din metodele: GetAllShops, GetModifiedShops sau GetShopInfo. La transmiterea de documente va fi folosit exclusiv acest camp pentru identificarea locatiilor de livrare/receptie.
Parametri Apel
Parametru |
Descriere |
Tip Date |
aIDAPP |
ID unic alocat aplicatiei care se conecteaza la serverul REST SmartCash |
Integer |
aJSONObject |
Parametru formatat JSON, cu o sintaxa fixa (vezi exemplu), prin care sunt furnizate toate campurile necesare pentru tipul de date adaugat in sistemul SmartCash RMS. |
TJSONObject |
Campuri JSON de tip antet incluse in parametrul aJSONObject
Camp |
Descriere |
Camp Obligatoriu |
Tip Date |
IDEXTAPP_SUPPLIER |
Codul extern al furnizorului care a emis factura. Trebuie furnizat obligatoriu daca nu se foloseste IDSMARTCASH_SUPPLIER. |
DA/NU |
String |
IDSMARTCASH_SUPPLIER |
ID-ul unic SmartCash al furnizorului care a emis factura. Trebuie furnizat obligatoriu daca nu se foloseste IDEXTAPP_SUPPLIER. |
DA/NU |
Integer |
NRSHOP_DEST |
Codul magazinului destinatie, pentru care este livrarea, stabilit de catre utilizatori in sistemul SmartCash. Trebuie furnizat obligatoriu daca nu se foloseste IDSMARTCASH_SHOP_DEST. |
DA/NU |
Integer |
IDSMARTCASH_SHOP_DEST |
ID-ul unic SmartCash al magazinului destinatie, pentru care este livrarea. Trebuie furnizat obligatoriu daca nu se foloseste NRSHOP_DEST. |
DA/NU |
Integer |
TYPEOF_DOC |
Tipul de document. 0 – Factura, 1 – Aviz. |
DA |
Integer |
DOC |
Numarul Facturii sau Avizului receptionat. |
DA |
String |
DATADOC |
Data Facturii sau Avizului receptionat. |
DA |
String |
DUE_DATE |
Data Scadenta de plata a facturii. |
DA/NU |
String |
VAT_TYPE |
Tipul de TVA al partenerului. (Aplicabil doar pentru furnizori si doar pentru receptii de la Furnizori. Valoarea 1 reprezinta faptul ca furnizorul are optiunea de TVA LA INCASARE. Valoarea 0 furnizorul nu are TVA la incasare). Obligatoriu doar pentru DOC_TYPEOF = 0. |
DA |
Integer |
DOC_TOTAL_COST |
Valoarea de achizitie a intregului document egala cu valoarea totala exclusiv TVA tiparita pe documentul original. Valoarea este folosita ca referinta pentru validarea valorii de achizitie totale calculata pe linii folosind campurile DOC_QTY si UNIT_COST. DOC_TOTAL_COST este valoarea de inregistrare contabila a documentului. Obligatoriu doar pentru DOC_TYPEOF = 0. |
DA |
Float |
DOC_TOTAL_COST_VAT |
Valoarea totala a TVA-ului pentru intregul document asa cum este tiparita pe documentul original. DOC_TOTAL_COST_VAT este valoarea de inregistrare contabila a TVA-ului aferent documentului. Obligatoriu doar pentru DOC_TYPEOF = 0. |
DA |
Float |
DOC_TOTAL_DISCOUNT_VALUE |
Valoarea totala a reducerii/majorarii aplicate pentru intreaga factura si repartizata automat de program pe articolele constituente. In cazul reducerii valoarea este negativa. In cazul majorarii valoarea este pozitiva. Majorarile aplicate facturilor reprezinta in general costuri suplimentare facturii primite, cel mai uzual fiind vorba de costurile de transport atunci cand se doreste ca acestea sa fie incluse in pretul de achizitie. Valoarea nu include TVA. Utilizat doar pentru DOC_TYPEOF = 0. |
DA/NU |
Float |
DOC_TOTAL_DISCOUNT_PERCENT |
Procentul total de reducere/majorare aplicat pentru intreaga factura. In cazul reducerii valoarea este negativa. In cazul majorarii valoarea este pozitiva. Utilizat doar pentru DOC_TYPEOF = 0. |
DA/NU |
Float |
ORDER_NUMBER |
Numarul comenzii de aprovizionare pentru care se face livrarea. |
DA/NU |
String |
Campuri JSON de tip linii articole incluse in parametrul aJSONObject
Camp |
Descriere |
Camp Obligatoriu |
Tip Date |
IDSMARTCASH_ARTICLE |
Codul unic al articolului in sistemul SmartCash. Daca nu este furnizat atunci obligatoriu trebuie furnizat campul IDEXTAPP_ARTICLE. |
DA/NU |
Integer |
IDEXTAPP_ARTICLE |
Codul articolului din sistemul extern. Daca nu este furnizat atunci obligatoriu trebuie furnizat campul IDSMARTCASH_ARTICLE. |
DA/NU |
String |
NAME |
Denumirea articolului. Daca nu exista ea ramane necompletata. |
DA/NU |
String |
QTY |
Cantitatea livrata in UM de ambalare (SUPP_UM - UM furnizor) |
DA |
Float |
VAT_PERCENT |
Procentul de TVA. |
DA |
Float |
SUPP_UM |
Denumirea unitatii de masura folosita la aprovizionare. (Ex: Bax) |
DA |
String |
SUPP_UM_RATIO |
Ratia de multiplicare a unitatii de vanzare din sistemul de retail pentru o unitate de aprovizionare. (Ex: SALE_UM=Buc, SUPP_UM=Bax, SUPP_UM_RATIO=12 – inseamna ca un Bax contine 12 Buc din produsul respectiv) |
DA |
Float |
ACQUISITION_COST |
Pretul de achizitie fara TVA repartizat pe SUPP_UM. Obligatoriu doar pentru DOC_TYPEOF = 0. Poate lipsi pentru DOC_TYPEOF = 1, dar in aceasta situatie gestionarea pretului de achizitie in SmartCash trebuie facuta prin metoda pretului de achizitie negociat. |
DA |
Float |
DISCOUNT_VALUE |
Valoarea reducerii/majorarii aplicate pentru linia de articol in cazul in care exista. In cazul reducerii valoarea este negativa. In cazul majorarii valoarea este pozitiva. Valoarea nu include TVA. Obligatoriu doar pentru DOC_TYPEOF = 0. Poate lipsi pentru DOC_TYPEOF = 1, dar in aceasta situatie gestionarea pretului de achizitie in SmartCash trebuie facuta prin metoda pretului de achizitie negociat. |
DA/NU |
Float |
DISCOUNT_PERCENT |
Procentul de reducere/majorare aplicat pentru linia de articol in cazul in care exista. In cazul reducerii valoarea este negativa. In cazul majorarii valoarea este pozitiva. Obligatoriu doar pentru DOC_TYPEOF = 0. Poate lipsi pentru DOC_TYPEOF = 1, dar in aceasta situatie gestionarea pretului de achizitie in SmartCash trebuie facuta prin metoda pretului de achizitie negociat. |
DA/NU |
Float |
EXPIRE_DATE |
Data de expirare a produsului |
NU |
String |
BATCH |
Lotul de fabricatie al produsului |
NU |
String |
BATCH_DATE |
Data lotului de fabricatie al produsului |
NU |
String |
BATCH_DESCRIPTION |
Descrierea lotului de fabricatie al produsului |
NU |
String |
Campuri JSON intoarse in caz de aplicare cu succes
Camp |
Descriere |
Tip Date |
IDTRANSFER |
ID-ul unic al facturii proaspat adaugate in sistemul SmartCash (cheia primara crescatoare din tabela respectiva). |
Integer |
Exemplu de formatare pentru parametrul aJSONObject al metodei AddNewSupplierTransfer:
{"IDSMARTCASH_SUPPLIER":3,"NRSHOP_DEST":"99","DOC":"ALG 1099911","DATADOC":"2016.08.09","ORDER_NUMBER":"AVDDR112","DOC_TOTAL_COST":10,"DOC_TOTAL_COST_VAT":2,
"ITEMS":
[{"IDSMARTCASH_ARTICLE":5,
"IDEXTAPP_ARTICLE":"100",
"NAME":"PETROL",
"VAT_PERCENT":20,
"QTY":1.56,
"SUPP_UM":"BAX",
"SUPP_UM_RATIO":4,
"ACQUISITION_COST":2.56,
"EXPIRE_DATE":"2014.01.18",
"BATCH":"L1",
"BATCH_DATE":"2013.05.24",
"BATCH_DESCRIPTION":"UNIKA-LINE"}]
}
Rezultat JSON returnat in caz de succes:
{"result":{"IDTRANSFER":1,"RETURN":true}}
Campuri JSON returnate in caz de eroare (exemplu):
{"error":"invalid SOURCE"}