forked from tflanagan/node-quickbase
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexample.js
More file actions
93 lines (82 loc) · 1.59 KB
/
example.js
File metadata and controls
93 lines (82 loc) · 1.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
// npm install tflanagan/node-quickbase
'use strict';
const QuickBase = require('quickbase');
const quickbase = new QuickBase({
realm: 'www',
appToken: '*****'
});
/* Promise Based */
quickbase.api('API_Authenticate', {
username: '*****',
password: '*****'
}).then((result) => {
return quickbase.api('API_DoQuery', {
dbid: '*****',
clist: '3.12',
options: 'num-5'
}).then((result) => {
return result.table.records;
});
}).each((record) => {
return quickbase.api('API_EditRecord', {
dbid: '*****',
rid: record[3],
fields: [
{ fid: 12, value: record[12] }
]
});
}).then(() => {
return quickbase.api('API_DoQuery', {
dbid: '*****',
clist: '3.12',
options: 'num-5'
});
}).then((result) => {
console.log(result);
}).catch((err) => {
console.error(err);
});
/* Callback Based */
quickbase.api('API_Authenticate', {
username: '*****',
password: '*****'
}, (err, result) => {
if (err)
throw err;
quickbase.api('API_DoQuery', {
dbid: '*****',
clist: '3.12',
options: 'num-5'
}, (err, result) => {
if (err)
throw err;
let i = 0;
const fin = () => {
++i;
if (i === result.table.records.length) {
quickbase.api('API_DoQuery', {
dbid: '*****',
clist: '3.12',
options: 'num-5'
}, (err, result) => {
if (err)
throw err;
console.log('done');
});
}
};
result.table.records.forEach((record) => {
quickbase.api('API_EditRecord', {
dbid: '*****',
rid: record[3],
fields: [
{ fid: 12, value: record[12] }
]
}, (err, results) => {
if (err)
throw err;
fin();
});
});
});
});