@openfn/language-mssql 6.0.0 → 6.0.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.
@@ -55,13 +55,6 @@
55
55
  false
56
56
  ]
57
57
  },
58
- "rowCollectionOnRequestCompletion": {
59
- "type": "boolean",
60
- "default": true,
61
- "examples": [
62
- false
63
- ]
64
- },
65
58
  "trustServerCertificate": {
66
59
  "type": "boolean",
67
60
  "default": true,
package/dist/index.cjs CHANGED
@@ -108,7 +108,6 @@ function createConnection(state) {
108
108
  database,
109
109
  port = 1433,
110
110
  encrypt = true,
111
- rowCollectionOnRequestCompletion = true,
112
111
  trustServerCertificate = true
113
112
  } = state.configuration;
114
113
  if (!server) {
@@ -124,7 +123,7 @@ function createConnection(state) {
124
123
  port,
125
124
  database,
126
125
  encrypt,
127
- rowCollectionOnRequestCompletion,
126
+ rowCollectionOnRequestCompletion: true,
128
127
  trustServerCertificate
129
128
  }
130
129
  };
@@ -199,19 +198,20 @@ function queryHandler(state, query, callback, options) {
199
198
  return state;
200
199
  }
201
200
  }
202
- const rows = [];
203
- const request = new import_tedious.Request(query, (err) => {
201
+ const request = new import_tedious.Request(query, (err, rowCount, rows) => {
204
202
  if (err) {
205
- console.error(err);
203
+ if (err.name === "AggregateError" && err.errors) {
204
+ err.errors.map((error) => console.error("Error: ", error.message));
205
+ } else {
206
+ console.error(err);
207
+ }
206
208
  reject(err);
209
+ return;
207
210
  } else {
208
- console.log(`Finished: ${rows.length} row(s).`);
211
+ console.log(`Finished: ${rowCount} row(s).`);
209
212
  resolve(callback(state, rows));
210
213
  }
211
214
  });
212
- request.on("row", (columns) => {
213
- rows.push(columns);
214
- });
215
215
  connection.execSql(request);
216
216
  });
217
217
  }
@@ -270,25 +270,24 @@ function findValue(filter) {
270
270
  try {
271
271
  const body = `select ${uuid} from ${relation} ${condition}`;
272
272
  console.log("Preparing to execute sql statement");
273
+ let returnValue = null;
273
274
  return new Promise((resolve, reject) => {
274
275
  console.log(`Executing query: ${body}`);
275
- const rows = [];
276
- const request = new import_tedious.Request(body, (err) => {
276
+ const request = new import_tedious.Request(body, (err, rowCount, rows) => {
277
277
  if (err) {
278
278
  console.error(err.message);
279
279
  reject(err);
280
280
  } else {
281
281
  if (rows.length > 0) {
282
- resolve(rows[0][0].value);
283
- } else {
282
+ returnValue = rows[0][0].value;
283
+ }
284
+ if (returnValue === null) {
284
285
  console.log("No value found");
285
286
  resolve(void 0);
286
287
  }
288
+ resolve(returnValue);
287
289
  }
288
290
  });
289
- request.on("row", (columns) => {
290
- rows.push(columns);
291
- });
292
291
  connection.execSql(request);
293
292
  });
294
293
  } catch (e) {
@@ -311,7 +310,7 @@ function insert(table, record, options) {
311
310
  const safeQuery = `INSERT INTO ${table} (${columns.join(
312
311
  ", "
313
312
  )}) VALUES [--REDACTED--]];`;
314
- return new Promise((resolve, reject) => {
313
+ return new Promise((resolve) => {
315
314
  const queryToLog = options && options.logValues ? query : safeQuery;
316
315
  console.log(`Executing insert via: ${queryToLog}`);
317
316
  resolve(queryHandler(state, query, addRowsToRefs, options));
@@ -340,7 +339,7 @@ function insertMany(table, records, options) {
340
339
  const safeQuery = `INSERT INTO ${table} (${columns.join(
341
340
  ", "
342
341
  )}) VALUES [--REDACTED--]];`;
343
- return new Promise((resolve, reject) => {
342
+ return new Promise((resolve) => {
344
343
  const queryToLog = options && options.logValues ? query : safeQuery;
345
344
  console.log(`Executing insertMany via: ${queryToLog}`);
346
345
  resolve(queryHandler(state, query, addRowsToRefs, options));
@@ -386,7 +385,7 @@ function upsert(table, uuid, record, options) {
386
385
  UPDATE SET [--REDACTED--]
387
386
  WHEN NOT MATCHED THEN
388
387
  INSERT (${insertColumns}) VALUES [--REDACTED--];`;
389
- return new Promise((resolve, reject) => {
388
+ return new Promise((resolve) => {
390
389
  const queryToLog = options && options.logValues ? query : safeQuery;
391
390
  console.log(`Executing upsert via: ${queryToLog}`);
392
391
  resolve(queryHandler(state, query, addRowsToRefs, options));
@@ -404,7 +403,7 @@ function upsertIf(logical, table, uuid, record, options) {
404
403
  const [recordData] = (0, import_util.expandReferences)(state, record);
405
404
  const columns = Object.keys(recordData).sort();
406
405
  const [logicalData] = (0, import_util.expandReferences)(state, logical);
407
- return new Promise((resolve, reject) => {
406
+ return new Promise((resolve) => {
408
407
  if (!logicalData) {
409
408
  console.log(`Skipping upsert for ${uuid}.`);
410
409
  resolve(state);
@@ -454,7 +453,7 @@ function upsertMany(table, uuid, records, options) {
454
453
  const { connection } = state;
455
454
  try {
456
455
  const [recordData] = (0, import_util.expandReferences)(state, records);
457
- return new Promise((resolve, reject) => {
456
+ return new Promise((resolve) => {
458
457
  if (!recordData || recordData.length === 0) {
459
458
  console.log("No records provided; skipping upsert.");
460
459
  resolve(state);
@@ -523,7 +522,7 @@ function insertTable(tableName, columns, options) {
523
522
  const { connection } = state;
524
523
  try {
525
524
  const [data] = (0, import_util.expandReferences)(state, columns);
526
- return new Promise((resolve, reject) => {
525
+ return new Promise((resolve) => {
527
526
  if (!data || data.length === 0) {
528
527
  console.log("No columns provided; skipping table creation.");
529
528
  resolve(state);
@@ -549,7 +548,7 @@ function modifyTable(tableName, columns, options) {
549
548
  const { connection } = state;
550
549
  try {
551
550
  const [data] = (0, import_util.expandReferences)(state, columns);
552
- return new Promise((resolve, reject) => {
551
+ return new Promise((resolve) => {
553
552
  if (!data || data.length === 0) {
554
553
  console.log("No columns provided; skipping table modification.");
555
554
  resolve(state);
package/dist/index.js CHANGED
@@ -78,7 +78,6 @@ function createConnection(state) {
78
78
  database,
79
79
  port = 1433,
80
80
  encrypt = true,
81
- rowCollectionOnRequestCompletion = true,
82
81
  trustServerCertificate = true
83
82
  } = state.configuration;
84
83
  if (!server) {
@@ -94,7 +93,7 @@ function createConnection(state) {
94
93
  port,
95
94
  database,
96
95
  encrypt,
97
- rowCollectionOnRequestCompletion,
96
+ rowCollectionOnRequestCompletion: true,
98
97
  trustServerCertificate
99
98
  }
100
99
  };
@@ -169,19 +168,20 @@ function queryHandler(state, query, callback, options) {
169
168
  return state;
170
169
  }
171
170
  }
172
- const rows = [];
173
- const request = new Request(query, (err) => {
171
+ const request = new Request(query, (err, rowCount, rows) => {
174
172
  if (err) {
175
- console.error(err);
173
+ if (err.name === "AggregateError" && err.errors) {
174
+ err.errors.map((error) => console.error("Error: ", error.message));
175
+ } else {
176
+ console.error(err);
177
+ }
176
178
  reject(err);
179
+ return;
177
180
  } else {
178
- console.log(`Finished: ${rows.length} row(s).`);
181
+ console.log(`Finished: ${rowCount} row(s).`);
179
182
  resolve(callback(state, rows));
180
183
  }
181
184
  });
182
- request.on("row", (columns) => {
183
- rows.push(columns);
184
- });
185
185
  connection.execSql(request);
186
186
  });
187
187
  }
@@ -240,25 +240,24 @@ function findValue(filter) {
240
240
  try {
241
241
  const body = `select ${uuid} from ${relation} ${condition}`;
242
242
  console.log("Preparing to execute sql statement");
243
+ let returnValue = null;
243
244
  return new Promise((resolve, reject) => {
244
245
  console.log(`Executing query: ${body}`);
245
- const rows = [];
246
- const request = new Request(body, (err) => {
246
+ const request = new Request(body, (err, rowCount, rows) => {
247
247
  if (err) {
248
248
  console.error(err.message);
249
249
  reject(err);
250
250
  } else {
251
251
  if (rows.length > 0) {
252
- resolve(rows[0][0].value);
253
- } else {
252
+ returnValue = rows[0][0].value;
253
+ }
254
+ if (returnValue === null) {
254
255
  console.log("No value found");
255
256
  resolve(void 0);
256
257
  }
258
+ resolve(returnValue);
257
259
  }
258
260
  });
259
- request.on("row", (columns) => {
260
- rows.push(columns);
261
- });
262
261
  connection.execSql(request);
263
262
  });
264
263
  } catch (e) {
@@ -281,7 +280,7 @@ function insert(table, record, options) {
281
280
  const safeQuery = `INSERT INTO ${table} (${columns.join(
282
281
  ", "
283
282
  )}) VALUES [--REDACTED--]];`;
284
- return new Promise((resolve, reject) => {
283
+ return new Promise((resolve) => {
285
284
  const queryToLog = options && options.logValues ? query : safeQuery;
286
285
  console.log(`Executing insert via: ${queryToLog}`);
287
286
  resolve(queryHandler(state, query, addRowsToRefs, options));
@@ -310,7 +309,7 @@ function insertMany(table, records, options) {
310
309
  const safeQuery = `INSERT INTO ${table} (${columns.join(
311
310
  ", "
312
311
  )}) VALUES [--REDACTED--]];`;
313
- return new Promise((resolve, reject) => {
312
+ return new Promise((resolve) => {
314
313
  const queryToLog = options && options.logValues ? query : safeQuery;
315
314
  console.log(`Executing insertMany via: ${queryToLog}`);
316
315
  resolve(queryHandler(state, query, addRowsToRefs, options));
@@ -356,7 +355,7 @@ function upsert(table, uuid, record, options) {
356
355
  UPDATE SET [--REDACTED--]
357
356
  WHEN NOT MATCHED THEN
358
357
  INSERT (${insertColumns}) VALUES [--REDACTED--];`;
359
- return new Promise((resolve, reject) => {
358
+ return new Promise((resolve) => {
360
359
  const queryToLog = options && options.logValues ? query : safeQuery;
361
360
  console.log(`Executing upsert via: ${queryToLog}`);
362
361
  resolve(queryHandler(state, query, addRowsToRefs, options));
@@ -374,7 +373,7 @@ function upsertIf(logical, table, uuid, record, options) {
374
373
  const [recordData] = expandReferences(state, record);
375
374
  const columns = Object.keys(recordData).sort();
376
375
  const [logicalData] = expandReferences(state, logical);
377
- return new Promise((resolve, reject) => {
376
+ return new Promise((resolve) => {
378
377
  if (!logicalData) {
379
378
  console.log(`Skipping upsert for ${uuid}.`);
380
379
  resolve(state);
@@ -424,7 +423,7 @@ function upsertMany(table, uuid, records, options) {
424
423
  const { connection } = state;
425
424
  try {
426
425
  const [recordData] = expandReferences(state, records);
427
- return new Promise((resolve, reject) => {
426
+ return new Promise((resolve) => {
428
427
  if (!recordData || recordData.length === 0) {
429
428
  console.log("No records provided; skipping upsert.");
430
429
  resolve(state);
@@ -493,7 +492,7 @@ function insertTable(tableName, columns, options) {
493
492
  const { connection } = state;
494
493
  try {
495
494
  const [data] = expandReferences(state, columns);
496
- return new Promise((resolve, reject) => {
495
+ return new Promise((resolve) => {
497
496
  if (!data || data.length === 0) {
498
497
  console.log("No columns provided; skipping table creation.");
499
498
  resolve(state);
@@ -519,7 +518,7 @@ function modifyTable(tableName, columns, options) {
519
518
  const { connection } = state;
520
519
  try {
521
520
  const [data] = expandReferences(state, columns);
522
- return new Promise((resolve, reject) => {
521
+ return new Promise((resolve) => {
523
522
  if (!data || data.length === 0) {
524
523
  console.log("No columns provided; skipping table modification.");
525
524
  resolve(state);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@openfn/language-mssql",
3
3
  "label": "MSSQL",
4
- "version": "6.0.0",
4
+ "version": "6.0.1",
5
5
  "description": "A Microsoft SQL language pack for OpenFn",
6
6
  "exports": {
7
7
  ".": {