home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / listings / v_10_01 / 1001034a < prev    next >
Text File  |  1991-11-17  |  3KB  |  106 lines

  1. //////////////////////////////////////////////////////
  2. //   Test for the Pinnacle Database List Class
  3. //
  4. //   Copyright 1991, David Brumbaugh
  5. //
  6. //////////////////////////////////////////////////////
  7. #include "paylist.h"
  8. #include <iostream.h>
  9.  
  10. main()
  11. {
  12.  
  13. // Test the more abstract  Class
  14.  
  15.     Pfm_List db("payroll.db","Employees");
  16.  
  17. // Create Some Records
  18.     db.add();
  19.     db.replace("First","John");
  20.     db.replace("Last", "Jones");
  21.     db.replace("Pay", 11.25);
  22.     db.replace("Days",245L);
  23.  
  24.     db.add();
  25.     db.replace("First","Ben");
  26.     db.replace("Last", "Franklin");
  27.     db.replace("Pay", 111.25);
  28.     db.replace("Days",3L);
  29.  
  30.     db.add();
  31.     db.replace("First","George");
  32.     db.replace("Last", "Washington");
  33.     db.replace("Pay", 1111.25);
  34.     db.replace("Days",4L);
  35.  
  36.  
  37. //  Then Retreive Them
  38.     char first[10], last[20];
  39.     long days;
  40.     double amount;
  41.  
  42.     db.top();
  43.     do
  44.     {
  45.         cout << db.get("First",first) << " "<<
  46.         db.get("Last",last) << " "<<
  47.         db.get("Pay",amount) << " ";
  48.         db.get("Days",&days);
  49.         cout << days << '\n';
  50.         db.next();
  51.     } while(! db.at_end());
  52.     cout << '\n';
  53.     amount = 100.00;
  54.     if (db.find("Pay",">",&amount))
  55.     {
  56.         do
  57.         {
  58.             cout << db.get("First",first) << " "
  59.             << db.get("Last",last) << " "
  60.             << db.get("Pay",amount) << " ";
  61.             db.get("Days",&days);
  62.             cout << days << '\n';
  63.  
  64.         } while(db.findnext());
  65.     }
  66.     amount = 11.25;
  67.     cout << '\n';
  68.     if (db.find(&amount))
  69.     {
  70.             cout << db.get("First",first) << " "
  71.             << db.get("Last",last) << " "
  72.             << db.get("Pay",amount) << " ";
  73.             db.get("Days",&days);
  74.             cout << days << '\n';
  75.     }
  76.  
  77.  // Now Test the application specific class
  78.  // Create Some More Records
  79.     employee emp[] = {{"Kirk","James",17.01,5},
  80.                        {"Solo","Han",12.34,4},
  81.                        {"Hammer","Mike",36.24,36},
  82.                        {"Hill","Dixon",19.46,30}},
  83.                        *empPtr, empBuffer;
  84.  
  85.     PayList pl(db.DBHandle());
  86.     for(int x=0; x < 3; ++x)
  87.     {
  88.         pl.add(emp[x]);
  89.     }
  90.  
  91.     // Then Retrieve Them Again
  92.     pl.top();
  93.     do
  94.     {
  95.         pl.get(empBuffer);
  96.         cout << empBuffer.first << " " <<
  97.         empBuffer.last << " "
  98.         << empBuffer.pay_rate << " ";
  99.         cout << empBuffer.days_worked << '\n';
  100.         pl.next();
  101.     } while(! pl.at_end());
  102.  
  103.     cout << "\n Done \n";
  104. }
  105.  
  106.