1.0.0 • Published 5 months ago
sapb1-connect v1.0.0
SAP Business One Connection Library
SAPB1 Connect is a Node.js library for connecting and interacting with HANA databases, SQL Server, and the SAP Business One Service Layer.
📦 Installation
npm install sapb1-connect
⚙️ Configuration
Each connection requires a configuration object passed to the corresponding class constructor.
🚀 How to Use
🔹 Connecting to HANA DB
Example configuration:
const config = {
HOSTNAME: "your-hana-host",
USERNAME: "your-hana-username",
PASSWORD: "your-hana-password",
};
const { HanaDB } = require("sapb1-connect");
const hana = new HanaDB(config);
async function getData() {
try {
const result = await hana.query("SELECT * FROM \"SBODEMOBR\".\"OUSR\"");
console.log(result);
} catch (error) {
console.error(error);
}
}
🔹 Connecting to SQL Server
Example configuration:
const config = {
HOSTNAME: "your-sql-server",
USERNAME: "your-sql-username",
PASSWORD: "your-sql-password",
DATABASE: "your-database",
};
const { SqlServerDB } = require("sapb1-connect");
const sqlServer = new SqlServerDB(config);
async function getData() {
try {
const result = await sqlServer.query("SELECT * FROM OUSR");
console.log(result);
} catch (error) {
console.error(error);
}
}
🔹 Connecting to SAP B1 Service Layer
Example configuration:
const config = {
HOSTNAME: "your-service-layer-host",
PORT: "50000",
VERSION: "v1",
COMPANY: "your-company-db"
};
const { ServiceLayer } = require("sapb1-connect");
const sl = new ServiceLayer(config);
async function login() {
try {
const session = await sl.token("username", "password");
console.log("Session started:", session);
} catch (error) {
console.error(error);
}
}
🔹 Making Requests to Service Layer
🔸 GET Request
async function getBusinessPartners() {
try {
const data = await sl.request("GET", "BusinessPartners");
console.log(data);
} catch (error) {
console.error(error);
}
}
🔸 POST Request
async function createBusinessPartner() {
try {
const body = { CardCode: "C12345", CardName: "New Partner" };
const data = await sl.request("POST", "BusinessPartners", body);
console.log("Created:", data);
} catch (error) {
console.error(error);
}
}
🔸 PATCH Request
async function updateBusinessPartner() {
try {
const body = { CardName: "Updated Partner" };
const data = await sl.request("PATCH", "BusinessPartners('C12345')", body);
console.log("Updated:", data);
} catch (error) {
console.error(error);
}
}
🔸 DELETE Request
async function deleteBusinessPartner() {
try {
const data = await sl.request("DELETE", "BusinessPartners('C12345')");
console.log("Deleted:", data);
} catch (error) {
console.error(error);
}
}
📖 Documentation
For more details on the available methods, refer to the Official Service Layer Documentation.
🛠️ Development
Run Tests
npm test
Generate Documentation
npm run doc
📜 License
MIT License
1.0.0
5 months ago