Advertisement
Guest User

Untitled

a guest
Dec 19th, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.42 KB | None | 0 0
  1. /**
  2. *@NApiVersion 2.x
  3. *@NScriptType Restlet
  4. *Author: Dimitri
  5. */
  6.  
  7. /* ***************
  8. * Description *
  9. ***************
  10. This endpoint was established to perform the following tasks for the NetSuite SSSync:
  11. 2 - post | This function runs the search identified by the searchID parameter to be used by NetSuiteSSSync
  12. */
  13.  
  14. require(['N/search' , 'N/log'],
  15. function(search, log) {
  16.  
  17. function post(input) {
  18.  
  19. // var message = ReceiveMessage(input);
  20.  
  21. var message = {searchID: 2833}
  22.  
  23. if(message.searchID) {
  24.  
  25. var response = {columns: [], data: []};
  26. var results, columns;
  27.  
  28. try
  29. {
  30. results = search.load({id: message.searchID}).run();
  31. columns = results.columns;
  32.  
  33. log.debug('results', results);
  34.  
  35. for(var i = 0; i < columns.length; i++) {
  36. var row = columns[i];
  37.  
  38. if(row.label) {
  39. response.columns.push(row.label);
  40. } else {
  41. response.columns.push(row.name);
  42. }
  43. }
  44. }
  45. catch (error) {
  46. log.error('Failed to load search ' + message.searchID, error)
  47. return {};
  48. }
  49.  
  50. var index = 0;
  51. do
  52. {
  53. var values = results.getRange({start: index, end: index + 1000});
  54. index += 1000;
  55.  
  56. for(var i = 0; i < values.length; i++) {
  57. var row = [];
  58. for(var j = 0; j < columns.length; j++) {
  59. try {
  60. var data = values[i].getText(columns[j]);
  61. if(data.length > 0)
  62. {
  63. row.push(data);
  64. }
  65. else
  66. {
  67. row.push(values[i].getValue(columns[j]));
  68. }
  69. }
  70. catch (error) {
  71. row.push(values[i].getValue(columns[j]));
  72. }
  73. }
  74. response.data.push(row);
  75. }
  76. } while(values.length == 1000)
  77.  
  78. log.debug('response', response)
  79. // return SendMessage(response);
  80. }
  81. else {
  82. log.error('Unauthorized Access', 'Someone tried to execute a PUT request');
  83. }
  84.  
  85. return {};
  86. }
  87.  
  88. function ReceiveMessage(message)
  89. {
  90. return JSON.parse(CryptoJS.AES.decrypt(message.data, 'NFX76OqsFFMz8JbQx1ratzBfphADV3z16tRb8CkLynFCMgdKqCZ4B5I8XhoUYJW', { mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7, iv: 'fj7tPrrvKmcllG4G' }).toString(CryptoJS.enc.Utf8));
  91. }
  92.  
  93. function SendMessage(data)
  94. {
  95. var message = {data: CryptoJS.AES.encrypt(JSON.stringify(data), 'NFX76OqsFFMz8JbQx1ratzBfphADV3z16tRb8CkLynFCMgdKqCZ4B5I8XhoUYJW', { mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7, iv: 'fj7tPrrvKmcllG4G' }).toString()};
  96. return JSON.stringify(message);
  97. }
  98.  
  99. function logError(func, err) {
  100. var errorText = err.code ? JSON.stringify(err.code) : err.toString();
  101. log.error({
  102. title: 'ITEM - ' + func,
  103. details: errorText
  104. });
  105. }
  106.  
  107. // return {
  108. // post: post,
  109. // };
  110.  
  111. post();
  112.  
  113. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement