Guest User

Untitled

a guest
Aug 9th, 2018
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.80 KB | None | 0 0
  1. IDENTIFICATION DIVISION.
  2. PROGRAM-ID. UC3.
  3. ENVIRONMENT DIVISION.
  4. FILE-CONTROL.
  5. select invoercsv assign to 'invoerbestand.csv'
  6. organization is line sequential.
  7. select tempuitvoer assign to 'tempuitvoer.txt'
  8. organization is line sequential.
  9. DATA DIVISION.
  10. FILE SECTION.
  11. FD invoercsv.
  12. 01 Csvinvoer.
  13. 03 pic X(100).
  14. FD tempuitvoer.
  15. 01 uitvoertemp.
  16. 03 tempMail pic X(20).
  17. 03 tempGamePoints pic 9(5)V9(2).
  18. 03 tempExamenpunten pic 9(2).
  19. 03 tempTotaal pic 9(5)V9(2).
  20. 03 tempOpmerking pic X(50).
  21. WORKING-STORAGE SECTION.
  22. 01 punten pic 9(3).
  23. 01 naam pic X(10).
  24. 01 maxCumScore pic 9(3)V9(2).
  25. 01 teamPeriodScoreCumOvGame pic 9(3).
  26. 01 teamGamePoints pic 9(5)V9(2).
  27. 01 gamePoints pic 9(5)V9(2).
  28. 01 teamId pic 9(2).
  29. 01 gameId pic 9(2) value 10.
  30. 01 maxGamePoints pic 9(2).
  31. 01 Csvrecord.
  32. 03 mail pic X(15).
  33. 03 examenpunten pic 9(2).
  34. 03 p2pcoef pic 9(2).
  35. 03 gegeventekst pic X(50).
  36. 01 eindeCsv pic x value 0.
  37. 88 einde-Csvbestand value 1.
  38. EXEC SQL
  39. BEGIN DECLARE SECTION
  40. END-EXEC
  41. 01 SQLCODE PIC S9(3).
  42. 01 SQLSTATE PIC X(5).
  43. 01 JdbcString PIC X(255).
  44. EXEC SQL
  45. END DECLARE SECTION
  46. END-EXEC
  47.  
  48. PROCEDURE DIVISION.
  49. MAIN-PARAGRAPH.
  50. PERFORM DO-CONNECT
  51. PERFORM OPENFILES
  52. PERFORM INLEZENCSVBESTAND
  53. PERFORM DO-DISCONNECT
  54. ACCEPT SQLSTATE
  55. GOBACK
  56.  
  57.  
  58. DO-CONNECT.
  59. STRING "jdbc:sqlserver://localhost\SQLEXPRESS;"
  60. DELIMITED BY SIZE
  61. "databaseName=ProjectManagement;"
  62. DELIMITED BY SIZE
  63. "userName=gameAdmin;password=project"
  64. DELIMITED BY SIZE
  65. INTO JdbcString
  66. EXEC SQL
  67. CONNECT
  68. TO :JdbcString
  69. DRIVER "com.microsoft.sqlserver.jdbc.SQLServerDriver"
  70. END-EXEC.
  71.  
  72.  
  73. DO-DISCONNECT.
  74. EXEC SQL
  75. DISCONNECT
  76. END-EXEC.
  77.  
  78.  
  79. OPENFILES.
  80. open input invoercsv
  81. read invoercsv at end move 1 to eindeCsv
  82. end-read
  83. open output tempuitvoer
  84. .
  85.  
  86.  
  87. HAALMAXCUMSCOREOP.
  88. EXEC SQL
  89. SELECT MAX(ScoreCumulativeOverallGame)
  90. INTO :maxCumScore
  91. FROM tgamTeamPeriods
  92. END-EXEC
  93. .
  94.  
  95. BEREKENSCORE.
  96. EXEC SQL
  97. SELECT TeamId
  98. INTO :teamId
  99. FROM tgamUsers
  100. WHERE Email = :mail
  101. END-EXEC
  102. EXEC SQL
  103. SELECT ScoreCumulativeOverallGame
  104. INTO :teamPeriodScoreCumOvGame
  105. FROM tgamTeamPeriods
  106. WHERE TeamId = :teamId
  107. END-EXEC
  108. EXEC SQL
  109. SELECT MaximumPoints
  110. INTO :maxGamePoints
  111. FROM tgamGames
  112. WHERE Id = :gameId
  113. END-EXEC
  114. COMPUTE teamGamePoints =
  115. maxGamePoints * teamPeriodScoreCumOvGame / maxCumScore
  116. END-COMPUTE
  117.  
  118. COMPUTE gamePoints =
  119. p2pcoef * teamGamePoints
  120. END-COMPUTE
  121.  
  122. move mail to tempMail
  123. display "E-mail: " tempMail
  124. move gamePoints to tempGamePoints
  125. display "GamePoints: " tempGamePoints
  126. move examenpunten to tempExamenpunten
  127. display "Examenpunten: " tempExamenpunten
  128. move 5 to tempTotaal
  129. display "Totaal: " tempTotaal
  130. move gegeventekst to tempOpmerking
  131. display "Opmerking: " tempOpmerking
  132. display "-------------"
  133. write uitvoertemp
  134. .
  135.  
  136.  
  137.  
  138. INLEZENCSVBESTAND.
  139. PERFORM HAALMAXCUMSCOREOP
  140. perform until einde-csvbestand
  141. unstring Csvinvoer delimited by "," into
  142. mail, examenpunten, p2pcoef, gegeventekst
  143. EXEC SQL
  144. UPDATE tgamUsers
  145. SET Exampoints = :examenpunten,
  146. PierEvaluationCoefficient = :p2pcoef,
  147. Opmerkingen = :gegeventekst
  148. WHERE Email = :mail
  149. END-EXEC
  150. EXEC SQL
  151. COMMIT WORK
  152. END-EXEC
  153. PERFORM BEREKENSCORE
  154. read invoercsv at end move 1 to eindeCsv
  155. end-read
  156. end-perform
  157. close invoercsv
  158. .
Add Comment
Please, Sign In to add comment