AHR Schullaufbahnbescheinigung.svelte 9.0 KB

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