home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / database / oracle / 2700 < prev    next >
Encoding:
Internet Message Format  |  1993-01-06  |  3.9 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!destroyer!cs.ubc.ca!unixg.ubc.ca!mirek
  2. From: mirek@unixg.ubc.ca (Miroslaw Piaseczny)
  3. Newsgroups: comp.databases.oracle
  4. Subject: Re: Double data entry comparisons
  5. Date: 7 Jan 1993 00:01:41 GMT
  6. Organization: University of British Columbia, Vancouver, B.C., Canada
  7. Lines: 77
  8. Message-ID: <1ifrt5INN9mp@iskut.ucs.ubc.ca>
  9. References: <1993Jan4.154617.11411@macc.wisc.edu>
  10. NNTP-Posting-Host: unixg.ubc.ca
  11.  
  12. In article <1993Jan4.154617.11411@macc.wisc.edu> dly@vms.macc.wisc.edu writes:
  13. >I have a database design question on double data entry comparisons.
  14. >If it matters, we will be using ORACLE 7.0 (we haven't got it yet),
  15. >SQL*FORMS 3.0, on the Sun platform.
  16. >
  17. >We will have different data entry clerks entering the same data.
  18. >Then we would like to compare only selected fields.  If there are
  19. >no disagreements, then the data is ready.  If not, then the data
  20. >is not ready for analysis (we have a manual arbitration step here).
  21. >
  22. >The reason why I say selected fields, is that we will not be comparing
  23. >the long text fields (comments, etc).  Nor will we be comparing the 
  24. >auditing information (clerk id, time of start, time of post, etc).
  25. >
  26. >I want to make sure that I can make comparisons fairly easily (there
  27. >will be about 30 different types of data entry forms, each with
  28. >6 to 80 fields).
  29. >
  30. >So, is it easier to have just the fields to be compared in one table, 
  31. >and the auditing information in another?  
  32. >
  33. >Should I have two different tables for each form, one for the first
  34. >data entry, the second for the second data entry?  
  35. >
  36. >I would appreciate any ideas.  Especially, if you have any stories,
  37. >good or bad about similar designs.  
  38. >
  39. >Thank you!
  40. >Debbie Yoshihara
  41. >Department of Biostatistics
  42. >DLY@MACC.WISC.EDU
  43.  
  44. You can probably find several ways of doing the double data entry. In most
  45. cases you have to create some temporary tables, and almost always you have 
  46. to store both, the original, and the verified values of the records. That may
  47. be pretty depressing when you are dealing with hundreds of tables having 
  48. substantial number of records.
  49.  
  50. For our clinical trials application we have implemented method where each
  51. record is stored only once. The status of the record is determined by value
  52. of the data field called ENTERTIMES. Value of the field (1 or 2) shows 
  53. if the record was only initially entered, or was verified. All the changes,
  54. corrections and updates are stored in the global audit table.
  55.  
  56. All data entry is done using SQLForms3.0 screens. Both, the initial, and
  57. the verification data entry are done using the same forms. The mode of the form
  58. (initial or verification) is controlled by the global variables, and is 
  59. established when the form is called from the menu.
  60.  
  61. The verification entry is being done on the initially entered records. When 
  62. a key  for the record has been entered, the corresponding record is queried 
  63. from database. The operator however, doesn't see values of the fields 
  64. to be verified. They are 'hidden', i.e. displayed with the 'hide' display
  65. attribute. 
  66.  
  67. The 'hide' display attribute has been created using oraterm and displays
  68. red on red. In our case (we use unix-pc's for the data entry) that works fine,
  69. but I'm not too sure about portability of this method to some other terminals
  70. (like VT100).
  71.  
  72. The actual verification is handled by the on-new-field-instance, and
  73. on-new-field-instance triggers where the newly entered value is compared 
  74. to the original value, and the attribute of the field is changed back 
  75. to 'normal'.
  76.  
  77. Also, we allow to specify what fields are to be verified. To mark fields 
  78. for the second entry we use the query_length attribute of the field. All 
  79. selected for that purpose fields have query_length greater then 100. These
  80. fields, when the form is called in the verification mode, and the record
  81. hasn't been verified yet, are visible as blank red boxes.
  82.  
  83. Hope that helps,
  84.  
  85. Mirek Piaseczny
  86. mirek@unixg.ubc.ca
  87.  
  88. University of British Columbia
  89.