Advertisement
kotvalera83

update query

Jul 12th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.57 KB | None | 0 0
  1. function getDateTime() {
  2. var date = new Date();
  3. var hour = date.getHours();
  4. hour = (hour < 10 ? "0" : "") + hour;
  5. var min = date.getMinutes();
  6. min = (min < 10 ? "0" : "") + min;
  7. var sec = date.getSeconds();
  8. sec = (sec < 10 ? "0" : "") + sec;
  9. var year = date.getFullYear();
  10. var month = date.getMonth() + 1;
  11. month = (month < 10 ? "0" : "") + month;
  12. var day = date.getDate();
  13. day = (day < 10 ? "0" : "") + day;
  14. return year + ":" + month + ":" + day + ":" + hour + ":" + min + ":" + sec;
  15. }
  16. var Firebird = require('node-firebird');
  17. var options = {};
  18. // options.host = '127.0.0.1';
  19. options.host = '192.168.1.241';
  20. options.port = 3050;
  21. // options.database = '/Applications/Fishbowl/database/data/EXAMPLE.FDB';
  22. options.database = 'C:/Program Files/Fishbowl/database/data/HYSON1.FDB';
  23. options.user = 'gone';
  24. options.password = 'fishing';
  25. var sqlQTY = 'SELECT PRODUCT.ID, (SELECT SUM (QTYALLOCATED) FROM QTYINVENTORYTOTALS WHERE QTYINVENTORYTOTALS.PARTID = PRODUCT.PARTID) as QTYALLOCATED FROM PRODUCT';
  26. var sqlProd = 'SELECT PRODUCT.*, UOM.CODE, (SELECT SUM (QTYONHAND) FROM QTYINVENTORYTOTALS WHERE QTYINVENTORYTOTALS.PARTID = PRODUCT.PARTID) as qty FROM PRODUCT, UOM WHERE UOM.ID = PRODUCT.UOMID';
  27. var sqlCUSTOMFIELD = 'SELECT CUSTOMVARCHAR.INFO, CUSTOMVARCHAR.RECORDID, CUSTOMFIELD.NAME FROM CUSTOMVARCHAR, CUSTOMFIELD WHERE CUSTOMFIELD.ID = CUSTOMVARCHAR.CUSTOMFIELDID';
  28. var sqlOUT = "SELECT PRICINGRULE.PRODUCTINCLID AS ID, PRICINGRULE.PAAMOUNT AS OUT FROM PRICINGRULE WHERE DESCRIPTION = 'Out of State'";
  29. function runSQL() {
  30. var SEND = {};
  31. var CUSTOMFIELD = [];
  32. var QTY = [];
  33. var OUT = [];
  34. var Prod = [];
  35. var text = 'Connect to DB';
  36. $('#status').html(text);
  37. Firebird.attach(options, function(err, db) {
  38.  
  39. if (err){
  40. text = text + ' ERROR Time ' + getDateTime();
  41. $('#status').html(text);
  42. $('#error').html($('#status').html());
  43. throw err;
  44. }
  45. // db = DATABASE
  46. text = text + '<br />QUERY 1';
  47. $('#status').html(text);
  48. db.query(sqlCUSTOMFIELD, function(err, result) {
  49. if (err){
  50. text = text + ' ERROR Time ' + getDateTime();
  51. $('#status').html(text);
  52. $('#error').html($('#status').html());
  53. throw err;
  54. }
  55. for (var i = 0; i < result.length; i++) {
  56. var INFO = new TextDecoder("utf-8").decode(result[i].INFO);
  57. var NAME = new TextDecoder("utf-8").decode(result[i].NAME);
  58. CUSTOMFIELD.push({"INFO": INFO, "NAME": NAME, "RECORDID": result[i].RECORDID});
  59. }
  60. text = text + '<br />QUERY 2';
  61. $('#status').html(text);
  62. db.query(sqlQTY, function(err, result) {
  63. if (err){
  64. text = text + ' ERROR Time ' + getDateTime();
  65. $('#status').html(text);
  66. $('#error').html($('#status').html());
  67. throw err;
  68. }
  69. for (var i = 0; i < result.length; i++) {
  70. var item = {
  71. "PARTID": result[i].PARTID,
  72. "QTYALLOCATED": result[i].QTYALLOCATED
  73. };
  74. QTY.push(item);
  75. }
  76. text = text + '<br />QUERY 3';
  77. $('#status').html(text);
  78. db.query(sqlOUT, function(err, result) {
  79. if (err){
  80. text = text + ' ERROR Time ' + getDateTime();
  81. $('#status').html(text);
  82. $('#error').html($('#status').html());
  83. throw err;
  84. }
  85. for (var i = 0; i < result.length; i++) {
  86. var item = {
  87. "PARTID": result[i].ID,
  88. "OUT": result[i].OUT
  89. };
  90. OUT.push(item);
  91. }
  92. text = text + '<br />QUERY 4';
  93. $('#status').html(text);
  94. db.query(sqlProd, function(err, result) {
  95. if (err){
  96. text = text + ' ERROR Time ' + getDateTime();
  97. $('#status').html(text);
  98. $('#error').html($('#status').html());
  99. throw err;
  100. }
  101. for (var i = 0; i < result.length; i++) {
  102. if (result[i].ACTIVEFLAG == 1) {
  103. var NUM = '';
  104. if (result[i].NUM !== null) {
  105. if (result[i].NUM.length > 0) {
  106. NUM = new TextDecoder("utf-8").decode(result[i].NUM);
  107. } else {
  108. NUM = result[i].NUM;
  109. }
  110. }
  111. var DESCRIPTION = '';
  112. if (result[i].DESCRIPTION !== null) {
  113. if (result[i].DESCRIPTION.length > 0) {
  114. DESCRIPTION = new TextDecoder("utf-8").decode(result[i].DESCRIPTION);
  115. } else {
  116. DESCRIPTION = result[i].DESCRIPTION;
  117. }
  118. }
  119. var WEIGHT = '';
  120. if (result[i].WEIGHT !== null) {
  121. if (result[i].WEIGHT.length > 0) {
  122. WEIGHT = new TextDecoder("utf-8").decode(result[i].WEIGHT);
  123. } else {
  124. WEIGHT = result[i].WEIGHT;
  125. }
  126.  
  127. }
  128. var UOM = '';
  129. if (result[i].CODE !== null) {
  130. if (result[i].CODE.length > 0) {
  131. UOM = new TextDecoder("utf-8").decode(result[i].CODE);
  132. } else {
  133. UOM = result[i].UOM;
  134. }
  135.  
  136. }
  137. Prod.push({"PARTID": result[i].ID, "UOM": UOM, "NUM": NUM, "DESCRIPTION": DESCRIPTION, "WEIGHT": WEIGHT, "PRICE": result[i].PRICE, "QTY": result[i].QTY});
  138. }
  139. }
  140.  
  141. db.detach();
  142.  
  143. SEND.time = getDateTime();
  144. SEND.prod = JSON.stringify(Prod);
  145. SEND.QTY = JSON.stringify(QTY);
  146. SEND.OUT = JSON.stringify(OUT);
  147. SEND.CUSTOMFIELD = JSON.stringify(CUSTOMFIELD);
  148.  
  149. text = text + '<br />SENDING TO SERVER';
  150. $('#status').html(text);
  151. $.post('http://teariver-allequipped.rhcloud.com/fishApi.php', {send: SEND}, function(d, textStatus, xhr) {
  152. text = text + ' OK';
  153. $('#status').html(text);
  154. });
  155. });
  156. });
  157. });
  158. });
  159.  
  160.  
  161.  
  162. });
  163. }
  164.  
  165. window.onload = function() {
  166. $('.green').click(function(event) {
  167. runSQL();
  168. });
  169. setTimeout(runSQL, 5000);
  170.  
  171. var interval = setInterval(function() {
  172. runSQL();
  173. }, 900000);
  174. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement