Advertisement
DeyvisonGuilherme

ASP Classic API

Jun 23rd, 2017
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ASP 2.85 KB | None | 0 0
  1. <%@ language="Javascript" %>
  2.  
  3. <script language="javascript" runat="server" src='json2.js'></script>
  4. <script language="javascript" runat="server">
  5.  
  6. if (typeof String.prototype.trim != 'function') {
  7.     String.prototype.trim = function() {
  8.         return this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
  9.     };
  10. }
  11.  
  12. (function() {
  13.  
  14.     // http://msdn.microsoft.com/en-us/library/windows/desktop/ms675318(v=vs.85).aspx
  15.     // http://msdn.microsoft.com/en-us/library/windows/desktop/ms678273(v=vs.85).aspx
  16.     // http://msdn.microsoft.com/en-us/library/windows/desktop/ms675946(v=vs.85).aspx
  17.     ado = {
  18.         // data types
  19.         variant          : 12,
  20.         char             : 129,
  21.         varChar          : 200,
  22.         single           : 4,   // DBTYPE_R4
  23.         date             : 133, // DBTYPE_DBDATE
  24.         time             : 134, // DBTYPE_DBTIME
  25.  
  26.         // parameter directions
  27.         input            : 1,
  28.         output           : 2,
  29.         inputOutput      : 3,
  30.         returnVal        : 4,
  31.         directionUnknown : 0,
  32.  
  33.         // command types
  34.         cmdUnspecified   : -1,
  35.         cmdText          : 1,
  36.         cmdTable         : 2,
  37.         cmdStoredProc    : 4,
  38.         cmdUnknown       : 8,
  39.         cmdFile          : 256,
  40.         cmdTableDirect   : 512
  41.     };
  42.  
  43.     queryDb = function(like) {
  44.         var rs, result = [], cmd, query, param,
  45.             conn = new ActiveXObject("ADODB.Connection");
  46.  
  47.         conn.ConnectionString =
  48.             'Provider=SQLOLEDB.1;' +
  49.             'Integrated Security=SSPI;' +
  50.             'Persist Security Info=False;' +
  51.             'Initial Catalog=AVWKS2008LT;' +
  52.             'Data Source=.\\SQLEXPRESS';
  53.  
  54.         conn.Open();
  55.         cmd = new ActiveXObject("ADODB.Command");
  56.         cmd.ActiveConnection = conn;
  57.         cmd.CommandType = ado.cmdText;
  58.         query = 'SELECT distinct Lastname as lname ' +
  59.             'FROM SalesLT.Customer ';
  60.         if (like !== null) {
  61.             query += 'WHERE LastName like ? ';
  62.             like += '%';
  63.             param = cmd.CreateParameter("", ado.varChar, ado.input, like.length, like);
  64.             cmd.Parameters.Append(param);
  65.         }
  66.         query += 'ORDER BY lname ';
  67.         cmd.CommandText = query;
  68.  
  69.         rs = cmd.Execute(); // typeof ADODB.Recordset
  70.         while(!rs.EOF) {
  71.             // retrieve the 0th field
  72.             result.push(rs.Fields(0).Value.trim());
  73.             rs.MoveNext();
  74.         }
  75.         conn.Close();
  76.         return result;
  77.     };
  78.  
  79. }());
  80.  
  81.  
  82. try {
  83.     // jquery UI autocomplete requires the search term to be 'term'
  84.     var t = Request.QueryString('term') + '',
  85.         token = (t == 'undefined') ? null:t,
  86.         r = queryDb(token);
  87.     Response.Write(JSON.stringify(r));
  88. }
  89. catch(e) {
  90.     var error = {error: e.message};
  91.     Response.Write(JSON.stringify(error));
  92. }
  93.  
  94. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement