3.8.49 • Published 20 days ago

objectum-ee v3.8.49

Weekly downloads
180
License
GPLv3
Repository
github
Last release
20 days ago

Objectum Enterprise Edition - javascript app platform

Deprecated.

Русская версия

Objectum platform makes it easy to create realtime single page applications that run in both Node.js and browsers.
Objectum includes a powerful user interface constructor called Visual Objectum that creates grids, tree grids, forms, etc. Automatically generates source code for CRUD (create, read, update, delete) functions.

Learn by Example project "To-Do list"

Complete project https://github.com/objectum/todo

Create directories:

mkdir /opt/objectum/node
mkdir /opt/objectum/projects
mkdir /opt/objectum/projects/todo
mkdir /opt/objectum/projects/todo/bin

Install:

cd /opt/objectum/node
npm install objectum-ee

You must have installed PostgreSQL 9.x (datestyle = dmy)

Add project configuration (postgres password: 12345):

cat > /opt/objectum/projects/todo/config.json
{
	"rootDir": "/opt/objectum/projects/todo",
	"adminPassword": "D033E22AE348AEB5660FC2140AEC35850C4DA997",
	"database": "postgres",
	"host": "localhost",
	"port": 5432,
	"db": "todo",
	"dbUser": "todo",
	"dbPassword": "1",
	"dbaUser": "postgres",
	"dbaPassword": "12345",
	"dbEngine": {
		"enabled": 1
	},
	"visualObjectum": {
		"menuConstructor": 1,
		"accessConstructor": 1,
		"projectConstructor": 1
	}
}

Add platform configuration:

cat > /opt/objectum/node/config.js
module.exports = {
	"rootDir": "/opt/objectum/node",
	"projectsDir": "/opt/objectum/projects",
	"port": 8100,
	"storages": {
		"todo": require ("/opt/objectum/projects/todo/config.json")
	}
}

Add script:

cat > /opt/objectum/node/objectum.js
var objectum = require ("objectum-ee");
var config = require ("./config");
module.exports = new objectum.Objectum (config);

Add script:

cat > /opt/objectum/node/index.js
var objectum = require ("objectum-ee");
objectum.start (require ("./config"));

Add script:

cat > /opt/objectum/projects/todo/bin/init.js
var $o = require ("/opt/objectum/node/objectum");
$o.db.execute ({
	code: "todo",
	fn: "init",
	name: "To-Do list",
	locale: "en" // en, ru
});

Init project folder:

cd /opt/objectum/projects/todo/bin
node init.js

Prepare tablespace folder:

mkdir /opt/objectum/projects/todo/db
chown postgres:postgres /opt/objectum/projects/todo/db

Add script:

cat > /opt/objectum/projects/todo/bin/create.js
var $o = require ("/opt/objectum/node/objectum");
$o.db.execute ({
	code: "todo",
	fn: "create",
	path: "/opt/objectum/projects/todo/db"
});

Create storage:

cd /opt/objectum/projects/todo/bin
node create.js

Add script:

cat > /opt/objectum/projects/todo/bin/import.js
var $o = require ("/opt/objectum/node/objectum");
$o.db.execute ({
	code: "todo",
	fn: "import",
	file: "/opt/objectum/projects/todo/schema/schema-app.js" // parent storage
});

Import storage structure:

cd /opt/objectum/projects/todo/bin
node import.js

Start platform:

cd /opt/objectum/node
node index.js:

Start platform with forever:

forever start -a -l /opt/objectum/node/objectum.log -o /dev/null -e /opt/objectum/node/objectum-error.log --sourceDir /opt/objectum/node index.js

Stop platform with forever:

forever stop index.js

Open URL: http://localhost:8100/projects/todo/ Login: admin
Password: admin

Add script:

cat > /opt/objectum/projects/todo/bin/remove.js
var $o = require ("/opt/objectum/node/objectum");
$o.db.execute ({
	code: "todo",
	fn: "remove"
});

You can remove storage (drop tablespace, role, user from PostgreSQL):

cd /opt/objectum/projects/todo/bin
node remove.js

Export storage:

cd /opt/objectum/projects/todo/bin
node export.js

Add script:

cat > /opt/objectum/projects/todo_my/bin/import.js
var $o = require ("/opt/objectum/node/objectum");
$o.db.execute ({
	code: "todo_my",
	fn: "import",
	file: "/opt/objectum/projects/todo/schema/schema-todo.js" // parent storage
});

Import your storage "todo" to new created storage "todo_my":

cd /opt/objectum/projects/todo_my/bin
node import.js

Just export "todo" and import "todo" to "todo_my" for update to new version of storage "todo". Stop platform before import storage.

startTransaction - start transaction. Only one transaction for one session allowed.
commitTransaction - commit transaction.
rollbackTransaction - rollback transaction.
createObject - create object
getObject - get object
set - set attribute value
sync - save object changes to storage
remove - remove object
execute - execute SQL query (only SELECT)

storage.commitTransaction (function (err) {
});
storage.rollbackTransaction (function (err) {
});
storage.createObject ("class", function (err, object) {
	var id = object.get ("id");
});
storage.getObject (id, function (err, object) {
	object.set ("text", "Changed text");
	object.sync (function (err) {
	});
});
object.remove ();
object.sync (function (err) {
});
storage.execute ({
	asArray: true,
	select: [
		{"a": "id"}, "id",
		{"a": "name"}, "name",
		{"b": "name"}, "status"
	],
	from: [
		{"a": "task"},
		"left-join", {"b": "spr.status"}, "on", [{"a": "status"}, "=", {"b": "id"}]
	],
	where: [
		{"a": "name"}, "like", "Buy%", "and", {"a": "id"}, "in", [1000, 1002, 1003, 1004, 1005].join (".,.").split (".")
	],
	order: [
		{"a": "name"}
	]
}, function (err, recs) {
	_.each (recs, function (rec) {
		console.log (rec.id, rec.name, rec.status);
	});
});

Change index.js for start in cluster mode:

var objectum = require ("objectum-ee");
objectum.startCluster (require ("./config"));

Cluster architecture: alt tag

Author

Dmitriy Samortsev

Copyright and license

GPLv3

3.8.49

20 days ago

3.8.48

1 month ago

3.8.47

4 months ago

3.8.46

11 months ago

3.8.45

1 year ago

3.8.43

1 year ago

3.8.44

1 year ago

3.8.42

2 years ago

3.8.41

3 years ago

3.8.40

3 years ago

3.8.39

3 years ago

3.8.38

3 years ago

3.8.37

3 years ago

3.8.36

3 years ago

3.8.35

3 years ago

3.8.34

3 years ago

3.8.33

3 years ago

3.8.32

3 years ago

3.8.30

3 years ago

3.8.31

3 years ago

3.8.29

3 years ago

3.8.28

3 years ago

3.8.27

3 years ago

3.8.25

3 years ago

3.8.26

3 years ago

3.8.24

3 years ago

3.8.23

4 years ago

3.8.22

4 years ago

3.8.21

4 years ago

3.8.20

4 years ago

3.8.19

4 years ago

3.8.17

4 years ago

3.8.18

4 years ago

3.8.16

4 years ago

3.8.14

4 years ago

3.8.13

4 years ago

3.8.12

4 years ago

3.8.11

4 years ago

3.8.10

4 years ago

3.8.9

4 years ago

3.8.8

4 years ago

3.8.7

5 years ago

3.8.6

5 years ago

3.8.5

5 years ago

3.8.4

5 years ago

3.8.3

5 years ago

3.8.2

5 years ago

3.8.1

5 years ago

3.8.0

5 years ago

3.7.24

5 years ago

3.7.23

5 years ago

3.7.22

5 years ago

3.7.21

5 years ago

3.7.20

5 years ago

3.7.18

5 years ago

3.7.17

5 years ago

3.7.16

5 years ago

3.7.15

5 years ago

3.7.14

5 years ago

3.7.13

5 years ago

3.7.12

5 years ago

3.7.11

5 years ago

3.7.10

6 years ago

3.7.9

6 years ago

3.7.8

6 years ago

3.7.7

6 years ago

3.7.6

6 years ago

3.7.5

6 years ago

3.7.4

6 years ago

3.7.3

6 years ago

3.7.2

6 years ago

3.7.1

6 years ago

3.7.0

6 years ago

3.6.11

6 years ago

3.6.10

6 years ago

3.6.9

6 years ago

3.6.8

6 years ago

3.6.7

6 years ago

3.6.6

6 years ago

3.6.5

6 years ago

3.6.4

6 years ago

3.6.3

6 years ago

3.6.2

6 years ago

3.6.1

6 years ago

3.6.0

6 years ago

3.5.30

6 years ago

3.5.29

6 years ago

3.5.28

6 years ago

3.5.27

6 years ago

3.5.26

6 years ago

3.5.25

6 years ago

3.5.24

6 years ago

3.5.23

6 years ago

3.5.22

6 years ago

3.5.21

6 years ago

3.5.20

6 years ago

3.5.19

6 years ago

3.5.18

6 years ago

3.5.17

6 years ago

3.5.16

6 years ago

3.5.15

6 years ago

3.5.14

7 years ago

3.5.13

7 years ago

3.5.12

7 years ago

3.5.11

7 years ago

3.5.10

7 years ago

3.5.9

7 years ago

3.5.8

7 years ago

3.5.7

7 years ago

3.5.6

7 years ago

3.5.5

7 years ago

3.5.3

7 years ago

3.5.2

7 years ago

3.5.1

7 years ago

3.5.0

7 years ago

3.4.28

7 years ago

3.4.27

7 years ago

3.4.26

7 years ago

3.4.25

7 years ago

3.4.24

7 years ago

3.4.23

7 years ago

3.4.22

7 years ago

3.4.21

7 years ago

3.4.20

7 years ago

3.4.19

7 years ago

3.4.18

7 years ago

3.4.17

7 years ago

3.4.16

7 years ago

3.4.15

7 years ago

3.4.14

7 years ago

3.4.13

7 years ago

3.4.12

7 years ago

3.4.11

7 years ago

3.4.10

7 years ago

3.4.9

7 years ago

3.4.8

7 years ago

3.4.7

7 years ago

3.4.6

7 years ago

3.4.5

7 years ago

3.4.4

7 years ago

3.4.3

7 years ago

3.4.2

7 years ago

3.4.1

7 years ago

3.4.0

7 years ago

3.3.1

7 years ago

3.3.0

7 years ago

3.2.34

7 years ago

3.2.33

7 years ago

3.2.32

7 years ago

3.2.31

7 years ago

3.2.30

7 years ago

3.2.29

7 years ago

3.2.28

7 years ago

3.2.27

7 years ago

3.2.26

7 years ago

3.2.25

7 years ago

3.2.24

7 years ago

3.2.23

7 years ago

3.2.22

7 years ago

3.2.21

7 years ago

3.2.20

7 years ago

3.2.19

7 years ago

3.2.18

7 years ago

3.2.17

7 years ago

3.2.16

7 years ago

3.2.15

7 years ago

3.2.14

7 years ago

3.2.13

7 years ago

3.2.12

7 years ago

3.2.11

7 years ago

3.2.10

7 years ago

3.2.9

7 years ago

3.2.8

7 years ago

3.2.7

7 years ago

3.2.6

7 years ago

3.2.5

7 years ago

3.2.4

7 years ago

3.2.3

7 years ago

3.2.2

7 years ago

3.2.1

7 years ago

3.2.0

7 years ago

3.1.12

7 years ago

3.1.11

7 years ago

3.1.10

7 years ago

3.1.9

7 years ago

3.1.8

7 years ago

3.1.7

7 years ago

3.1.6

8 years ago

3.1.5

8 years ago

3.1.4

8 years ago

3.1.3

8 years ago

3.1.2

8 years ago

3.1.1

8 years ago

3.1.0

8 years ago

3.0.0

8 years ago