1.2.0 β’ Published 10 months ago
etrest v1.2.0
π ETRest - Rest library for Etendo secure web services module. π
π Documentation
You can see the code reference here
π¬ Run tests
It's important to run tests before making changes in the Etendo module. π¨βπ»
$ yarn test
π Release to npm
You should increment the version number of the package.json file and run the following commands.
$ yarn build
$ npm publish --tag next --access public
π Examples
import { OBRest } from "etrest";
let criteria = OBRest.getInstance().createCriteria("Organization");
π Initialize app
import { OBRest } from "obrest";
OBRest.init("http://localhost:8080");
π Login with username and password / token
The app should be initialized before login π»
await OBRest.loginWithUserAndPassword("admin", "admin"); //Make a request to get token
OBRest.loginWithToken("your_token"); //only set token
π Create criterias
The user should be logged before get data. ποΈ
let criteria = OBRest.getInstance().createCriteria("Product");
criteria.add(Restriction.equals("name", "Cerveza Lager 0,5L"));
//make a request to get the products list
criteria.list();
//make a request to get only the first result
criteria.uniqueResult();
π¬ Check the code reference for more information about Restrictions π¬
βοΈ Create/Update objects
The user should be logged before create data. ππ
let myProduct = {
"_entityName":"Product", // this field is required.
"searchKey": "ES/1234",
"name": "Test product with OBRest.js",
"description": "This is a test product created using OBRest.js",
"uOM": "100",
"salesRepresentative": "100",
"summaryLevel": false,
"stocked": true,
"purchase": true,
"sale": true,
"productCategory": "DC7F246D248B4C54BFC5744D5C27704F",
"volume": 0,
"weight": 0,
"taxCategory": "E020A69A1E784DC39BE57C41D6D5DB4E"
}
let refreshedProduct = await OBRest.getInstance().save(myProduct); //this method save the object in etendo and return a promise with the saved object.
// you can save a objects list too
let refreshedProductList = await OBRest.getInstance().saveList([myProduct]); //this method save the objects in etendo and return a promise with the saved list.
π¬ It is always better to save lists than individual objects π₯πΎ
ποΈ Remove objects
The user should be logged before delete data. π«
let myProduct = {
"_entityName":"Product", // this field is required.
"searchKey": "ES/1234",
"name": "Test product with OBRest.js",
"description": "This is a test product created using OBRest.js",
"uOM": "100",
"salesRepresentative": "100",
"summaryLevel": false,
"stocked": true,
"purchase": true,
"sale": true,
"productCategory": "DC7F246D248B4C54BFC5744D5C27704F",
"volume": 0,
"weight": 0,
"taxCategory": "E020A69A1E784DC39BE57C41D6D5DB4E"
}
let refreshedProduct = await OBRest.getInstance().remove(myProduct); //this method save the object in etendo and return a promise with the saved object.
// you can remove a objects list tooβ
let refreshedProductList = await OBRest.getInstance().removeList([myProduct]); //this method remove the objects in etendo and return a promise with the removed list.
It is always better to remove lists than individual objects ππ€