utc-wms-dirty-char.js 1.61 KB
Newer Older
Leon's avatar
Leon committed
1 2 3 4 5 6
var _db = require("topsin.database");
var _error = require("topsin.error");

try {
  var erp_conn_param = {
    database_type: "mssql",
Leon's avatar
Leon committed
7
    database_host: "10.3.1.250\\MSSQLSERVER",
Leon's avatar
Leon committed
8 9 10
    database_name: "UniTech3",
    database_user: "TopLinker",
    database_pwd: "837914",
Leon's avatar
Leon committed
11 12
    auto_close_timeout: -1,
    database_driver: "/usr/local/freetds/lib/libtdsodbc.so.0"
Leon's avatar
Leon committed
13 14 15 16 17 18 19 20 21
  };
  var ERP_CONN_NAME = 'ERP_CONN_NAME';

  var dist_conn_param = {
    database_type: "pg",
    database_host: "139.196.104.13:5433",
    database_name: "TOPDFM_DEV_V6",
    database_user: "toplinker",
    database_pwd: "TopLinker0510",
Leon's avatar
Leon committed
22
    auto_close_timeout: -1
Leon's avatar
Leon committed
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
  };
  var DIST_CONN_NAME = 'DIST_CONN_NAME';

  _db.addConnection(erp_conn_param, ERP_CONN_NAME);
  var query_erp = _db.query(ERP_CONN_NAME);

  _db.addConnection(dist_conn_param, DIST_CONN_NAME);
  var query_dist = _db.query(DIST_CONN_NAME);

  // query from erp database
  var sql = " \
  SELECT top 1 * \
  FROM dbo.MTL_DemenseDtl \
  WHERE PaperNo = 'BL118040001' AND Item = '7' \
  ";
  var erp_data = query_erp.selectMap(sql, {});
  if (query_erp.lastError().isValid()) {
    throw query_erp.lastError().text();
  }
Leon's avatar
Leon committed
42 43 44 45 46
  print("query result: ", JSON.stringify(erp_data));

  _.mapValues(erp_data, function(v){
    return v.replace(/\0/g, '');
  });
Leon's avatar
Leon committed
47

Leon's avatar
Leon committed
48 49
  print("after mapValues: ", JSON.stringify(erp_data));

Leon's avatar
Leon committed
50 51 52 53 54 55 56 57 58 59 60 61
  // insert to dist database
  query_dist.insertRow({
    table: "tmp_20200106",
    data: erp_data,
    field: ['PaperNo', 'Item', 'StockId', 'MatCode', 'MatName', 'MatGauge', 'Notes']
  });
  if (query_dist.lastError().isValid()) {
    throw query_dist.lastError().text();
  }
} catch (e) {
  print(e);
}