README
ADempiere Dictionary Client for gRPC
ADempiere Dictionary Client write in Javascript for gRPC service, use it for connect with ADempiere-gRPC-Server.
Requirements
Using it
# installing via NPM
npm i @adempiere/grpc-dictionary-client --save
# installing via Yarn
yarn add @adempiere/grpc-dictionary-client
A Example
Declare Dictionary
const Dictionary = require('@adempiere/grpc-dictionary-client');
const dictionary = new Dictionary({
host: GRPC_HOST,
sessionUuid: 'Session UUID'
});
Declare Dictionary with specific language (i18n)
const Dictionary = require('@adempiere/grpc-dictionary-client');
const dictionary = new Dictionary({
host: GRPC_HOST,
sessionUuid: 'Session UUID',
language: 'es_VE'
});
Request a Window
// Request Window
dictionary.requestWindow({
uuid: 'a520de12-fb40-11e8-a479-7a0060f0aa01'
})
.then(window => {
console.log("Window: " + window);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Request a Window and Tabs of it
// Request Window and Tabs
dictionary.requestWindow({
uuid: 'a520de12-fb40-11e8-a479-7a0060f0aa01',
isWithTabs: true
})
.then(window => {
window.tabsList.foreach(tabElement => {
console.log("Window Tab: " + tabElement);
})
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Request a Tab
// Request Tab
dictionary.requestTab({
uuid: 'a49fb4e0-fb40-11e8-a479-7a0060f0aa01',
isWithProcess: false
})
.then(tab => {
console.log("Tab: " + tab);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Request a Tab and Fields
// Request Window and Tabs
dictionary.requestTab({
uuid: 'a49fb4e0-fb40-11e8-a479-7a0060f0aa01',
isWithFields: true,
isWithProcess: false
})
.then(tab => {
tab.fieldsList.foreach(fieldElement => {
console.log("Field: " + fieldElement);
})
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Request a Field
// Request Field
dictionary.requestField({
fieldUuid: '8cecee3a-fb40-11e8-a479-7a0060f0aa01'
})
.then(field => {
console.log("Field: " + field);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Request a Process
// Request Process
dictionary.requestProcess({
uuid: 'a42adc88-fb40-11e8-a479-7a0060f0aa01'
})
.then(process => {
console.log("Process: " + process);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Request a Smart Browser
// Request Smart Browser
dictionary.requestBrowser({
uud: '8aaef794-fb40-11e8-a479-7a0060f0aa01'
})
.then(browser => {
console.log("Smart Browser: " + browser);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
Recreate proto stub class (only for contribute to project)
For recreate stub class you must have follow:
Note: You can also install protoc
and protoc-gen-grpc-web
by going to the repository directory and run the command:
sh install-protoc.sh
When installation is complete, check the version with
protoc --version
After installed it just go to source code folder an run it:
Run Dictionary gRPC
protoc proto/dictionary.proto \
--js_out=import_style=commonjs:src/grpc \
--grpc-web_out=import_style=commonjs,mode=grpcwebtext:src/grpc
Or run:
sh generate-stub.sh
The result is generated on: src/grpc folder
dictionary_pb.js
dictionary_grpc_web_pb.js