home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / csso0301.zip / SAMPLES / DAX / UNKNOWN.CSS < prev   
Cascading Style Sheet File  |  2000-02-09  |  2KB  |  68 lines

  1. /*  Copyright (c) 1998-2000 IBK-Landquart-Switzerland. All rights reserved.
  2.  *
  3.  *  Module      :  Unknown.css
  4.  *  Application :  Sample to query an unknown table
  5.  *  Author      :  Peter Koch, IBK
  6.  *
  7.  *  Date        Description                                 Who
  8.  *  --------------------------------------------------------------------------
  9.  *  Feb 1998    First release                               P.Koch, IBK
  10.  *  Feb 1998    Modified for V0.12                          P.Koch, IBK
  11.  *  Feb 2000    Modifications for V2.00                     P.Koch, IBK
  12.  */
  13. #loadLibrary 'KcSysLib'
  14. #loadLibrary 'KcStrLib'
  15. #loadLibrary 'KcDaxLib'
  16.  
  17. main()
  18. {
  19.   // check arguments
  20.   if (sizeof(mainArgVals) < 4) {
  21.     const exc[3] = {
  22.       'usage  : CSS UNKNOWN name/password@connection tablename',
  23.       ' ',
  24.       'example: CSS UNKNOWN SCOTT/TIGER@SALES EMP'
  25.     };
  26.     throw exc;
  27.   }
  28.  
  29.   // connect
  30.   var name, pass, conn, a = 2;
  31.   name = strSplitConnectString(mainArgVals[a++],pass,conn);
  32.   var lnk = daxConnect('db2',conn,name,pass);
  33.  
  34.   // start processing
  35.   var csr = daxParse(lnk, 'select * from '|mainArgVals[a]|' order by 1');
  36.   var cols = daxSelectColumns(csr);
  37.   var line, size[cols];
  38.  
  39.   // display title
  40.   for (var i=0; i<cols; i++) {
  41.     size[i] = daxSelectColumnSize(csr,i);
  42.     line |=
  43.       strSubString(
  44.         daxSelectColumnName(csr,i),
  45.         1, size[i]+1
  46.       );
  47.   }
  48.   sysLog(line);
  49.  
  50.   // underline title
  51.   line = '';
  52.   for (i=0; i<cols; i++)
  53.     line |= strSubString('',1,size[i],'-')|' ';
  54.   sysLog(line);
  55.  
  56.   // query and display the rows
  57.   var col[cols];
  58.   while (daxFetch(csr, col)) {
  59.     line = '';
  60.     for (i=0; i<cols; i++)
  61.       line |= strSubString(col[i],1,size[i])|' ';
  62.     sysLog(line);
  63.   }
  64.   sysLog();
  65.   sysLog(daxRowsProcessed(csr)|' row(s) selected');
  66.   daxDisconnect(lnk);
  67. }
  68.