n8n-nodes-sap-hana 0.2.2 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -44,7 +44,6 @@ class SapHana {
|
|
|
44
44
|
{
|
|
45
45
|
name: 'sapHana',
|
|
46
46
|
required: true,
|
|
47
|
-
testedBy: 'sapHanaConnectionTest',
|
|
48
47
|
},
|
|
49
48
|
],
|
|
50
49
|
properties: [
|
|
@@ -109,26 +108,32 @@ class SapHana {
|
|
|
109
108
|
{
|
|
110
109
|
displayName: 'Schema',
|
|
111
110
|
name: 'schema',
|
|
112
|
-
type: '
|
|
113
|
-
default: '',
|
|
111
|
+
type: 'options',
|
|
114
112
|
description: 'The schema to operate on',
|
|
115
113
|
displayOptions: {
|
|
116
114
|
show: {
|
|
117
115
|
operation: ['select', 'insert', 'update', 'deleteTable', 'upsert']
|
|
118
116
|
}
|
|
119
|
-
}
|
|
117
|
+
},
|
|
118
|
+
typeOptions: {
|
|
119
|
+
loadOptionsMethod: 'getSchemas',
|
|
120
|
+
},
|
|
121
|
+
default: '',
|
|
120
122
|
},
|
|
121
123
|
{
|
|
122
124
|
displayName: 'Table',
|
|
123
125
|
name: 'table',
|
|
124
|
-
type: '
|
|
125
|
-
default: '',
|
|
126
|
+
type: 'options',
|
|
126
127
|
description: 'The table to operate on',
|
|
127
128
|
displayOptions: {
|
|
128
129
|
show: {
|
|
129
130
|
operation: ['select', 'insert', 'update', 'deleteTable', 'upsert']
|
|
130
131
|
}
|
|
131
|
-
}
|
|
132
|
+
},
|
|
133
|
+
typeOptions: {
|
|
134
|
+
loadOptionsMethod: 'getTables',
|
|
135
|
+
},
|
|
136
|
+
default: '',
|
|
132
137
|
},
|
|
133
138
|
{
|
|
134
139
|
displayName: 'Query',
|
|
@@ -149,6 +154,71 @@ class SapHana {
|
|
|
149
154
|
},
|
|
150
155
|
],
|
|
151
156
|
};
|
|
157
|
+
this.methods = {
|
|
158
|
+
loadOptions: {
|
|
159
|
+
getSchemas: async function () {
|
|
160
|
+
const credentials = await this.getCredentials('sapHana');
|
|
161
|
+
const { serverIp, port, databaseName, username, password } = credentials;
|
|
162
|
+
const conn = hana.createConnection();
|
|
163
|
+
const connectionString = `serverNode=${serverIp}:${port};DatabaseName=${databaseName};UID=${username};pwd=${password}`;
|
|
164
|
+
try {
|
|
165
|
+
conn.connect(connectionString);
|
|
166
|
+
const result = conn.exec("SELECT SCHEMA_NAME FROM SCHEMAS WHERE SCHEMA_NAME NOT LIKE 'SYS%' ORDER BY SCHEMA_NAME");
|
|
167
|
+
conn.disconnect();
|
|
168
|
+
return result.map(schema => ({
|
|
169
|
+
name: schema.SCHEMA_NAME,
|
|
170
|
+
value: schema.SCHEMA_NAME,
|
|
171
|
+
}));
|
|
172
|
+
}
|
|
173
|
+
catch (error) {
|
|
174
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to load schemas: ${error.message}`);
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
getTables: async function () {
|
|
178
|
+
const credentials = await this.getCredentials('sapHana');
|
|
179
|
+
const schema = this.getNodeParameter('schema');
|
|
180
|
+
const { serverIp, port, databaseName, username, password } = credentials;
|
|
181
|
+
if (!schema) {
|
|
182
|
+
return [];
|
|
183
|
+
}
|
|
184
|
+
const conn = hana.createConnection();
|
|
185
|
+
const connectionString = `serverNode=${serverIp}:${port};DatabaseName=${databaseName};UID=${username};pwd=${password}`;
|
|
186
|
+
try {
|
|
187
|
+
conn.connect(connectionString);
|
|
188
|
+
const result = conn.exec(`SELECT TABLE_NAME FROM TABLES WHERE SCHEMA_NAME = '${schema}' ORDER BY TABLE_NAME`);
|
|
189
|
+
conn.disconnect();
|
|
190
|
+
return result.map(table => ({
|
|
191
|
+
name: table.TABLE_NAME,
|
|
192
|
+
value: table.TABLE_NAME,
|
|
193
|
+
}));
|
|
194
|
+
}
|
|
195
|
+
catch (error) {
|
|
196
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to load tables: ${error.message}`);
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
},
|
|
200
|
+
credentialTest: {
|
|
201
|
+
sapHanaConnectionTest: async function (credential) {
|
|
202
|
+
const { serverIp, port, databaseName, username, password } = credential.data;
|
|
203
|
+
const conn = hana.createConnection();
|
|
204
|
+
const connectionString = `serverNode=${serverIp}:${port};DatabaseName=${databaseName};UID=${username};pwd=${password}`;
|
|
205
|
+
try {
|
|
206
|
+
conn.connect(connectionString);
|
|
207
|
+
conn.disconnect();
|
|
208
|
+
return {
|
|
209
|
+
status: 'OK',
|
|
210
|
+
message: 'Connection successful',
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
catch (error) {
|
|
214
|
+
return {
|
|
215
|
+
status: 'Error',
|
|
216
|
+
message: `Connection test failed: ${error.message}`,
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
},
|
|
221
|
+
};
|
|
152
222
|
}
|
|
153
223
|
async execute() {
|
|
154
224
|
const returnData = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SapHana.node.js","sourceRoot":"","sources":["../../../nodes/SapHana/SapHana.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+
|
|
1
|
+
{"version":3,"file":"SapHana.node.js","sourceRoot":"","sources":["../../../nodes/SapHana/SapHana.node.ts"],"names":[],"mappings":"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"}
|