я не смог его подключить через npm
собственно расскажу что я делаю
собираю в цикле объекты со сцены и записываю это в excel лист
и столкнулся с тем что нужны также данные из базы материалов
смог записать данные из базы в эксель внутри промиса
копаю дальше)))
расковырял где лежит соответствия материалов и их свойства из базы материалов
ATTEND_MAT_MAT таблица соответствий
MATERIAL таблица материалов вес цена артикул
MATERIAL_ADVANCE доп свойства материалов размер толщина и тд
выводит массу детали умножает площадь на массу из базы материалов
надо nodejs и установить модуль node-firebird и базис 10
Код:
var Firebird = require('node-firebird');
var options = {};
options.host = '127.0.0.1';
options.port = 14357;
options.database = 'D:/BAZIS10.fdb';//с кириллицей не разобрался
options.user = 'SYSDBA';
options.password = 'masterkey';
options.lowercase_keys = false; // set to true to lowercase keys
options.role = null; // default
options.pageSize = 4096; // default when creating database
Model.forEachPanel(function(panel) {
MaterialName = panel.MaterialName;
MaterialArt = "";
if (MaterialName.indexOf("\r") > 0) {
MaterialArt = MaterialName.split("\r")[1];
MaterialName = MaterialName.split("\r")[0]
};
panelS = panel.Contour.Width * panel.Contour.Height * 0.000001;
panelS = panelS.toFixed(3)
Firebird.attach(options, function(err, db) {
if (err) throw err;
db.query("select * from MATERIAL WHERE NAME_MAT = '" + MaterialName + "' AND ARTICLE = '" + MaterialArt + "'", function(err, result) {
db.detach();
system.log(MaterialName + ' ' + panelS * result[0].WEIGHT);
});
});
});
system.log("+");
делаем всё что нужно внутри асинхронной функции