AHR Schullaufbahnbescheinigung.svelte 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. {#each schueler as s (s.ID)}
  2. {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
  3. <div class="page grid" orientation="portrait" size="A4" style="font-size: .9rem">
  4. <div class="header">
  5. <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}" traeger="{privat.traeger}"/>
  6. </div>
  7. <div class="main">
  8. <div style="font-size: 12pt; line-height: 1.5em">Bescheinigung über die Schullaufbahn gemäß §13 APO-BK, Anlage D</div>
  9. <div style="font-size: 11pt; line-height: 1.2em">Berufliches Gymnasium, Bereich Gesundheit und Soziales</div>
  10. <Voffset v="0.5"/>
  11. {s.anrede} <b>{s.Vorname} {s.Zusatz || ''} {s.Name}</b>, geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
  12. <br />besuchte im Schuljahr {hj.schuljahr} die Jahrgangsstufe {parseInt(hj.ASDJahrgang)+10}.{hj.Abschnitt} im Bildungsgang
  13. <br /><b>{bg(s, 'Bereich')}</b>.
  14. <Voffset v="0.5"/>
  15. In der Konferenz am {datum(hj.Konferenzdatum)} sind folgende Leistungen festgestellt worden:
  16. <table class="table table-bordered table-eng">
  17. <tr>
  18. <td rowspan="2">Fach<sup>1</sup></td>
  19. <td rowspan="2" width="20px">Aufg.- feld<sup>2</sup></td>
  20. <td rowspan="2" width="20px">Abitur- fach<sup>3</sup></td>
  21. {#if s.ASDSchulform === 'D01'}
  22. <td rowspan="2" width="20px">Fach der Berufs- abschlussprüfung</td>
  23. {/if}
  24. <td colspan="4">Leistungen im Halbjahr<sup>4, 5</sup></td>
  25. </tr>
  26. <tr>
  27. <td class="text-center">12.1</td>
  28. <td class="text-center">12.2</td>
  29. <td class="text-center">13.1</td>
  30. <td class="text-center">13.2</td>
  31. </tr>
  32. {#each s.abi_abschluss_faecher.sort((a, b) => a.FSortierung < b.FSortierung ? -1 : 1) as f}
  33. <tr>
  34. <td>{f.fach.Zeugnisbez}</td>
  35. <td class="text-center">{'I'.repeat(f.fach.Aufgabenfeld)}</td>
  36. <td class="text-center">{f.AbiFach || ''}</td>
  37. {#if s.ASDSchulform === 'D01'}
  38. <td class="text-center">{(parseInt(f.AbiFach) > 0 && parseInt(f.AbiFach) < 4) || f.FachKrz === 'DM' ? '+' : ''}</td>
  39. {/if}
  40. <td class="text-center">{f.P12_1 || '–'}</td>
  41. <td class="text-center">{f.P12_2 || '–'}</td>
  42. <td class="text-center">{f.P13_1 || '–'}</td>
  43. <td class="text-center">{f.P13_2 || '–'}</td>
  44. </tr>
  45. {/each}
  46. </table>
  47. Versäumte Stunden: {parseInt(hj.SumFehlStd) || 0}, davon unentschuldigt: {parseInt(hj.SumFehlStdU) || 0}
  48. <Voffset v="0.5"/>
  49. Kurse unter 5 Punkten in den Fächern und Jahrgangsstufen:
  50. <table>
  51. <tr>
  52. <td width="7%"><b>12.1:</b></td>
  53. <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P12_1) < 5 && parseInt(f.P12_1) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
  54. {#if hj.ASDJahrgang === "03" || hj.ASDJahrgang === "02" && hj.Abschnitt === 2}
  55. <td width="7%"><b>12.2:</b></td>
  56. <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P12_2) < 5 && parseInt(f.P12_2) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
  57. {/if}
  58. </tr>
  59. {#if hj.ASDJahrgang === "03"}
  60. <tr>
  61. <td><b>13.1:</b></td>
  62. <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P13_1) < 5 && parseInt(f.P13_1) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
  63. {#if hj.ASDJahrgang === "03" && hj.Abschnitt === 2}
  64. <td width="7%"><b>13.2:</b></td>
  65. <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P13_2) < 5 && parseInt(f.P13_2) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
  66. {/if}
  67. </tr>
  68. {/if}
  69. </table>
  70. <Voffset v="0.5"/>
  71. {#if s.abi_abschluss_faecher.some(f => [f.P12_1, f.P12_2, f.P13_1, f.P13_2].some(ff => parseInt(ff) < 5 && parseInt(ff) > 0))}
  72. Ihre Schullaufbahn weist Defizite auf, durch die die Zulassung zur
  73. Abiturprüfung
  74. {#if s.ASDSchulform === 'D01'}
  75. und zur Berufsabschlussprüfung
  76. {/if}
  77. gefährdet wird.
  78. {/if}
  79. <Voffset v="0.5"/>
  80. <b>Bemerkungen:</b> {@html bemerkungen(hj)}
  81. </div>
  82. <div class="footer">
  83. <div class="flex-grid">
  84. <div class="col-2">
  85. {schule.Ort}, den {datum(hj.ZeugnisDatum)}
  86. </div>
  87. <div class="col text-center klein">
  88. <Voffset v="3"/>
  89. <hr />
  90. {schule.SchulleiterVorname} {schule.SchulleiterName}
  91. <br />{schule.schulleiter_in}
  92. </div>
  93. <div class="col text-center klein">
  94. <Voffset v="3"/>
  95. Siegel
  96. </div>
  97. <div class="col text-center klein">
  98. <Voffset v="3"/>
  99. <hr />
  100. {hj.lehrer?.Titel ? hj.lehrer.Titel+" " : ''}{hj.lehrer?.Vorname} {hj.lehrer?.Nachname}<br />{hj.klassenlehrer_in}
  101. </div>
  102. </div>
  103. <div class="flex-grid">
  104. <div class="col-2"></div>
  105. <div class="col-2">
  106. <Voffset v="1"/>
  107. Die Kenntnisnahme wird bestätigt:
  108. </div>
  109. <div class="col">
  110. <Voffset v="3"/>
  111. <hr />
  112. <div class="klein text-center">
  113. {volljaehrigBei(s, hj.ZeugnisDatum) ? s.schueler_in : 'Erziehungsberechtigte'}
  114. </div>
  115. </div>
  116. </div>
  117. <div class="klein eng">
  118. Schulnummer: {schule.SchulNr}
  119. <hr />
  120. <table width="100%">
  121. <tr>
  122. <td ><sup>1</sup>In der Reihenfolge der erlassenen Stundentafel</td>
  123. <td><sup>3</sup>1 = erstes Leistungsfach</td>
  124. <td><sup>5</sup>E1 = Mit besonderem Erfolg teilgenommen</td>
  125. </tr>
  126. <tr>
  127. <td><sup>2</sup>I = sprachlich literarisches Aufgabenfeld</td>
  128. <td style="padding-left: .6em">2 = zweites Leistungsfach</td>
  129. <td style="padding-left: .6em">E2 = Mit Erfolg teilgenommen</td>
  130. </tr>
  131. <tr>
  132. <td style="padding-left: .6em">II= gesellschaftswissenschaftliches Aufgabenfeld</td>
  133. <td style="padding-left: .6em">3= drittes Abiturfach</td>
  134. <td style="padding-left: .6em">E3 = Teilgenommen</td>
  135. </tr>
  136. <tr>
  137. <td style="padding-left: .6em">III= mathematisch-naturwissenschaftlich-technisches Aufgabenfeld</td>
  138. <td style="padding-left: .6em">4= viertes Abiturfach</td>
  139. <td></td>
  140. </tr>
  141. </table>
  142. <sup>4</sup> Für die Umsetzung von Noten in Punkte gilt:
  143. <table class="table table-bordered table-eng" width="80%">
  144. <tr>
  145. <td width="5%"></td>
  146. {#each ['sehr gut', 'gut', 'befriedigend', 'ausreichend', 'mangelhaft', 'ungenügend'] as n}
  147. <td class="text-center" width="10%">{n}</td>
  148. {/each}
  149. </tr>
  150. <tr>
  151. <td>Noten</td>
  152. {#each [1,2,3,4,5] as i}
  153. <td class="text-center">
  154. <div class="flex-grid">
  155. <div class="col">+</div>
  156. <div class="col">{i}</div>
  157. <div class="col">-</div>
  158. </div>
  159. </td>
  160. {/each}
  161. <td class="text-center">6</td>
  162. </tr>
  163. <tr>
  164. <td>Punkte</td>
  165. {#each [[15,14,13],[12,11,10],['09','08','07'],['06','05','04'],['03','02','01']] as ii}
  166. <td class="text-center">
  167. <div class="flex-grid">
  168. {#each ii as i}
  169. <div class="col">{i}</div>
  170. {/each}
  171. </div>
  172. </td>
  173. {/each}
  174. <td class="text-center">00</td>
  175. </tr>
  176. </table>
  177. </div>
  178. </div>
  179. </div>
  180. <div class="page grid" orientation="portrait" size="A4">
  181. <div class="footer grau">
  182. <Fussnote {schule}></Fussnote>
  183. </div>
  184. </div>
  185. {/each}
  186. {/each}
  187. <script>
  188. export const kommentar = `
  189. [Anlage D 33a](https://bass.schul-welt.de/3129.htm#AnlageD33a)
  190. [VV](https://bass.schul-welt.de/3129.htm#pgfId-3910124)
  191. `
  192. import { datum, volljaehrigBei, bemerkungen, bg } from './helfer'
  193. import Pageheader from './partials/Pageheader.svelte'
  194. import Voffset from './partials/Voffset.svelte'
  195. import Fussnote from './partials/Fussnoten.svelte'
  196. export let schueler, schule, privat, jahr, abschnitt
  197. const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
  198. </script>
  199. <style>
  200. @import 'css/main.css';
  201. .table-bordered {
  202. border-collapse: collapse; }
  203. .table-bordered td {
  204. border: thin solid #ddd;
  205. line-height: 1.3rem }
  206. .table-eng {
  207. margin-bottom: 0;
  208. }
  209. </style>