/gRPC-Dictionary-Client

ADempiere Dictionary Client write in Javascript for gRPC service

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

ADempiere Dictionary Client for gRPC

npm version License Downloads Dependencies

@DEPRECATED Replace with https://github.com/adempiere/gRPC-API

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