Änderungen von Dokument 08 Schnittstelle ONYX Reporter

Zuletzt geändert von Carina Enke am 13.02.2024

Von Version 374.1
bearbeitet von tleu
am 01.12.2014
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 329.1
bearbeitet von Carina Enke
am 24.09.2018
Änderungskommentar: Mittels Scroll Versions veröffentlicht aus dem Bereich ONYXintern und Version 1.11.1.

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.tleu
1 +XWiki.carina
Inhalt
... ... @@ -1,4 +1,16 @@
1 +{{sv-translation language="de"}}
1 1  {{layout}}
3 +{{layout-section ac:type="single"}}
4 +{{layout-cell}}
5 +
6 +
7 +(% class="removedPlaceholderWrapper" %)
8 +
9 +
10 +
11 +{{/layout-cell}}
12 +{{/layout-section}}
13 +
2 2  {{layout-section ac:type="two_right_sidebar"}}
3 3  {{layout-cell}}
4 4  ====== Inhalt: ======
... ... @@ -5,34 +5,11 @@
5 5  
6 6  
7 7  
8 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}}
20 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}}
9 9  {{/layout-cell}}
10 10  
11 11  {{layout-cell}}
12 -|=(% colspan="1" %)(% colspan="1" %)
13 -(((
14 -Programmversion
15 -)))|(% colspan="1" %)(% colspan="1" %)
16 -(((
17 17  
18 -)))
19 -|=(((
20 -Status
21 -)))|(((
22 -(% class="status-macro aui-lozenge aui-lozenge-error" %)ENTWURF
23 -)))
24 -|=(((
25 -Aufgaben
26 -)))|(((
27 -
28 -
29 -
30 -)))
31 -|=(((
32 -JIRA
33 -)))|(((
34 -
35 -)))
36 36  {{/layout-cell}}
37 37  {{/layout-section}}
38 38  
... ... @@ -60,9 +60,7 @@
60 60  |(((
61 61  getResultValues
62 62  )))|(((
63 -Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung:
64 -
65 -Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
52 +Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung: Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
66 66  )))
67 67  |(% colspan="1" %)(% colspan="1" %)
68 68  (((
... ... @@ -74,7 +74,8 @@
74 74  
75 75  == Anmeldung des LMS ==
76 76  
77 -{{code title="Anmeldung des LMS" language="xml"}}@WebMethod(operationName = „armSite")
64 +{{code language="xml" title="Anmeldung des LMS"}}
65 +@WebMethod(operationName = „armSite")
78 78  public String armSite(
79 79  @WebParam(name = „version") final Integer version,
80 80  @WebParam(name = „userId") final String userId,
... ... @@ -83,53 +83,649 @@
83 83  @WebParam(name = „optionalUserLastName") final String userLastName,
84 84  @WebParam(name = „optionalUserFirstName") final String userFirstName,
85 85  @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
86 -}{{/code}}Parameter armSite
74 +}
75 +{{/code}}
87 87  
77 +=== Parameter armSite ===
78 +
88 88  |(((
89 -
80 +version
90 90  )))|(((
91 -
82 +Angefragte Version: 1
92 92  )))
93 93  |(((
94 -
85 +userId
95 95  )))|(((
96 -
87 +UserId des anfragenden Reporter-Benutzers
97 97  )))
98 98  |(((
99 -
90 +optionalRole
100 100  )))|(((
101 -
92 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor
102 102  )))
103 103  |(((
104 -
95 +secretToShare
105 105  )))|(((
106 -
97 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
107 107  )))
108 108  |(((
109 -
100 +optionalUserLastName
110 110  )))|(((
102 +Optional. Nachname des Benutzers.
103 +)))
104 +|(% colspan="1" %)(% colspan="1" %)
105 +(((
106 +optionalUserFirstName
107 +)))|(% colspan="1" %)(% colspan="1" %)
108 +(((
109 +Optional. Vorname des Benutzers.
110 +)))
111 +|(% colspan="1" %)(% colspan="1" %)
112 +(((
113 +additionalParams
114 +)))|(% colspan="1" %)(% colspan="1" %)
115 +(((
116 +Reserved for future use.
117 +)))
118 +
119 +=== ReturnValue armSite ===
120 +
121 +|(((
122 +String
123 +)))|(((
124 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen.
125 +)))
126 +
127 +== Initialisierung durch LMS ==
128 +
129 +{{code language="xml" title="Initialisierung durch LMS"}}
130 +@WebMethod(operationName = „initiateSite")
131 +public String initiateSite(
132 +@WebParam(name = „version") final Integer version,
133 +@WebParam(name = „sessionId") final String sessionId,
134 +@WebParam(name = „secretToShare") final String secretToShare,
135 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
136 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
137 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
138 +}
139 +{{/code}}
140 +
141 +=== Parameter initiateSite ===
142 +
143 +|(((
144 +version
145 +)))|(((
146 +Angefragte Version: 1
147 +)))
148 +|(% colspan="1" %)(% colspan="1" %)
149 +(((
150 +sessionId
151 +)))|(% colspan="1" %)(% colspan="1" %)
152 +(((
153 +SessionId, wie von armSite zurück geliefert.
154 +)))
155 +|(((
156 +secretToShare
157 +)))|(((
158 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
159 +)))
160 +|(((
161 +students
162 +)))|(((
163 +Liste der Studenten mit ihren Resultaten. Siehe unten.
164 +)))
165 +|(((
166 +optionalContentPackage
167 +)))|(((
168 +Optional. Content Package (gezippt) als Byte-Array.
169 +)))
170 +|(((
171 +additionalParams
172 +)))|(((
173 +Reserved for future use.
174 +)))
175 +
176 +=== ReturnValue initiateSite ===
177 +
178 +|(((
179 +String
180 +)))|(((
181 +Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern:
182 +
183 +* sid: Session ID, wie von armSite zurück gegeben
184 +* uid: Student ID, wie in initiateSite beim Reporter angemeldet
185 +)))
186 +
187 +{{code language="xml"}}
188 +public class ResultsForStudent {
189 +   private String studentId = „";
190 +   private String firstname = „";
191 +   private String lastname = „";
192 +   private String groupname = „";
193 +   private String tutorname = „";
194 +   private File contentFile = null;
195 +   private byte[] resultsFile = null;
196 +}
197 +{{/code}}
198 +
199 +== Abmeldung durch LMS ==
200 +
111 111  
202 +
203 +{{code}}
204 +@WebMethod(operationName = „disarmSite")
205 +public Boolean disarmSite(
206 +@WebParam(name = „version") final Integer version,
207 +@WebParam(name = „sessionId") final String sessionId,
208 +@WebParam(name = „secretToShare") final String secretToShare,
209 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
210 +}
211 +{{/code}}
212 +
213 +
214 +
215 +=== Parameter disarmSite ===
216 +
217 +|(((
218 +version
219 +)))|(((
220 +Angefragte Version: 1
112 112  )))
222 +|(% colspan="1" %)(% colspan="1" %)
223 +(((
224 +sessionId
225 +)))|(% colspan="1" %)(% colspan="1" %)
226 +(((
227 +SessionId, wie von armSite zurück geliefert.
228 +)))
229 +|(((
230 +secretToShare
231 +)))|(((
232 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
233 +)))
234 +|(((
235 +additionalParams
236 +)))|(((
237 +Reserved for future use.
238 +)))
113 113  
114 -= Überschrift2 =
240 +=== ReturnValue disarmSite ===
115 115  
116 -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam fermentum vestibulum est. Cras rhoncus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed quis tortor. Donec non ipsum. Mauris condimentum, odio nec porta tristique, ante neque malesuada massa, in dignissim eros velit at tellus. Donec et risus in ligula eleifend consectetuer. Donec volutpat eleifend augue. Integer gravida sodales leo. Nunc vehicula neque ac erat. Vivamus non nisl. Fusce ac magna. Suspendisse euismod libero eget mauris.
242 +|(((
243 +Boolean
244 +)))|(((
245 +True bei Erfolg, sonst false.
246 +)))
247 +
248 +== Abfrage von Lernerresultaten durch LMS ==
249 +
250 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
251 + @WebMethod(operationName = „getResultValues")
252 +public HashMapWrapper getResultValues(
253 + @WebParam(name = „version") final Integer version,
254 + @WebParam(name = „sessionId") final String sessionId,
255 + @WebParam(name = „secretToShare") final String secretToShare,
256 + @WebParam(name = „requestedValues") final HashMap<String, String>
257 + requestedValues,
258 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
259 +}
260 +{{/code}}
261 +
262 +=== Parameter getResultValues ===
263 +
264 +|(((
265 +version
266 +)))|(((
267 +Angefragte Version: 1
268 +)))
269 +|(% colspan="1" %)(% colspan="1" %)
270 +(((
271 +sessionId
272 +)))|(% colspan="1" %)(% colspan="1" %)
273 +(((
274 +SessionId, wie von armSite zurück geliefert.
275 +)))
276 +|(((
277 +secretToShare
278 +)))|(((
279 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
280 +)))
281 +|(((
282 +requestedValues
283 +)))|(((
284 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
285 +)))
286 +|(((
287 +additionalParams
288 +)))|(((
289 +Reserved for future use.
290 +)))
291 +
292 +=== ReturnValue getResultValues ===
293 +
294 +|(((
295 +HashMap<String, String>
296 +)))|(((
297 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
298 +)))
299 +
300 +== Abfrage von Ergebnisvariablen durch LMS ==
301 +
302 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
303 + @WebMethod(operationName = „getResultVariables")
304 +public HashMapWrapper getResultVariables(
305 +@WebParam(name = „version") final Integer version,
306 +@WebParam(name = „contentPackage") final byte[] contentPackage,
307 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
308 +}
309 +{{/code}}
310 +
311 +=== Parameter getResultVariables ===
312 +
313 +|(((
314 +version
315 +)))|(((
316 +Angefragte Version: 1
317 +)))
318 +|(((
319 +contentPackage
320 +)))|(((
321 +Content Package (gezippt) als Byte-Array.
322 +)))
323 +|(((
324 +additionalParams
325 +)))|(((
326 +Reserved for future use.
327 +)))
328 +
329 +=== ReturnValue getResultVariables ===
330 +
331 +|(((
332 +HashMap<String, String>
333 +)))|(((
334 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
335 +)))
336 +
337 +== Wrapper ==
338 +
339 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
340 +
341 +=== Wrapper für die HashMap<String, String> ===
342 +
343 +HashMapWrapper.java:
344 +
345 +[[image:attach:HashMapWrapperjava.png]]
346 +
347 +[[image:attach:HashMapWrapperjava2.png]]
348 +
349 +=== Wrapper für die ArrayList<ResultsForStudent> ===
350 +
351 +ResultsForStudentsWrapper.java:
352 +
353 +[[image:attach:ResultsForStudentsWrapperjava.png]]
117 117  {{/layout-cell}}
118 118  {{/layout-section}}
119 119  
120 120  {{layout-section ac:type="two_right_sidebar"}}
121 121  {{layout-cell}}
122 -====== untergeordnete Seiten: ======
359 +
360 +{{/layout-cell}}
123 123  
362 +{{layout-cell}}
363 +====== relevante Links: ======
124 124  
365 +* [[doc:ONYX Player Interface]]
366 +{{/layout-cell}}
367 +{{/layout-section}}
368 +{{/layout}}
369 +{{/sv-translation}}
125 125  
126 -{{children all="true"/}}
371 +{{sv-translation language="en"}}
372 +{{layout}}
373 +{{layout-section ac:type="two_equal"}}
374 +{{layout-cell}}
375 +====== Content: ======
376 +
377 +
378 +
379 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}}
127 127  {{/layout-cell}}
128 128  
129 129  {{layout-cell}}
130 -====== relevante Links: ======
383 +
384 +{{/layout-cell}}
385 +{{/layout-section}}
131 131  
132 -* [[lorem ipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]]
387 +{{layout-section ac:type="single"}}
388 +{{layout-cell}}
389 +== General ==
390 +
391 +The API to the ONYX WebReporter enables the communication between the LMS and the reporter. Therefore, a couple of commands will be executed:
392 +
393 +|(((
394 +armSite
395 +)))|(((
396 +Registration of sequence requests at the ONYX reporter
397 +)))
398 +|(((
399 +initiateSite
400 +)))|(((
401 +Initiates the reporter session (transmission of the CP).
402 +)))
403 +|(((
404 +disarmSite
405 +)))|(((
406 +Release of all reporter resources for this session.
407 +)))
408 +|(((
409 +getResultValues
410 +)))|(((
411 +Returns all or all requested results for the test. Condition: there is exactly one student in list transmitted in the initiateSite.
412 +)))
413 +|(% colspan="1" %)(% colspan="1" %)
414 +(((
415 +getResultVariables
416 +)))|(% colspan="1" %)(% colspan="1" %)
417 +(((
418 +Returns all or all requested outcome variables for the test. No armSite, initiateSite or disarmSite is necessary.
419 +)))
420 +
421 +== Connection to the LMS ==
422 +
423 +{{code language="xml" title="Anmeldung des LMS"}}
424 +@WebMethod(operationName = „armSite")
425 +public String armSite(
426 +@WebParam(name = „version") final Integer version,
427 +@WebParam(name = „userId") final String userId,
428 +@WebParam(name = „optionalRole") final Integer role,
429 +@WebParam(name = „secretToShare") final String secretToShare,
430 +@WebParam(name = „optionalUserLastName") final String userLastName,
431 +@WebParam(name = „optionalUserFirstName") final String userFirstName,
432 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
433 +}
434 +{{/code}}
435 +
436 +=== Parameter armSite ===
437 +
438 +|(((
439 +version
440 +)))|(((
441 +Requested version: 1
442 +)))
443 +|(((
444 +userId
445 +)))|(((
446 +UserId of the requested reporter user
447 +)))
448 +|(((
449 +optionalRole
450 +)))|(((
451 +Optional. User role. 0=student, 1=tutor
452 +)))
453 +|(((
454 +secretToShare
455 +)))|(((
456 +Shared secret. Has to remain identical for every communication.
457 +)))
458 +|(((
459 +optionalUserLastName
460 +)))|(((
461 +Optional. User lastname.
462 +)))
463 +|(% colspan="1" %)(% colspan="1" %)
464 +(((
465 +optionalUserFirstName
466 +)))|(% colspan="1" %)(% colspan="1" %)
467 +(((
468 +Optional. User firstname.
469 +)))
470 +|(% colspan="1" %)(% colspan="1" %)
471 +(((
472 +additionalParams
473 +)))|(% colspan="1" %)(% colspan="1" %)
474 +(((
475 +Reserved for future use.
476 +)))
477 +
478 +=== ReturnValue armSite ===
479 +
480 +|(((
481 +String
482 +)))|(((
483 +Session ID that has to be used to mark any further reporter call.
484 +)))
485 +
486 +== Initialisation through LMS ==
487 +
488 +{{code language="xml" title="Initialisierung durch LMS"}}
489 +@WebMethod(operationName = „initiateSite")
490 +public String initiateSite(
491 +@WebParam(name = „version") final Integer version,
492 +@WebParam(name = „sessionId") final String sessionId,
493 +@WebParam(name = „secretToShare") final String secretToShare,
494 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
495 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
496 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
497 +}
498 +{{/code}}
499 +
500 +=== Parameter initiateSite ===
501 +
502 +|(((
503 +version
504 +)))|(((
505 +Requested version: 1
506 +)))
507 +|(% colspan="1" %)(% colspan="1" %)
508 +(((
509 +sessionId
510 +)))|(% colspan="1" %)(% colspan="1" %)
511 +(((
512 +SessionId, as returned by armSite.
513 +)))
514 +|(((
515 +secretToShare
516 +)))|(((
517 +Shared secret. Has to remain identical at every communication.
518 +)))
519 +|(((
520 +students
521 +)))|(((
522 +List of students with their results. See below.
523 +)))
524 +|(((
525 +optionalContentPackage
526 +)))|(((
527 +Optional. Content Package (zipped) as byte array.
528 +)))
529 +|(((
530 +additionalParams
531 +)))|(((
532 +Reserved for future use.
533 +)))
534 +
535 +=== ReturnValue initiateSite ===
536 +
537 +|(((
538 +String
539 +)))|(((
540 +Absolute URL of the reporter site for the frame. It has to be enriched by the LMS with the following URLparameters:
541 +
542 +* sid: Session ID as returned by armSite
543 +* (((
544 +uid: Student ID as registrated in the initiateSite at the ONYX Reporter.
545 +)))
546 +)))
547 +
548 +{{code language="xml"}}
549 +public class ResultsForStudent {
550 +   private String studentId = „";
551 +   private String firstname = „";
552 +   private String lastname = „";
553 +   private String groupname = „";
554 +   private String tutorname = „";
555 +   private File contentFile = null;
556 +   private byte[] resultsFile = null;
557 +}
558 +{{/code}}
559 +
560 +== Deconnection through the LMS ==
561 +
562 +
563 +
564 +{{code}}
565 +@WebMethod(operationName = „disarmSite")
566 +public Boolean disarmSite(
567 +@WebParam(name = „version") final Integer version,
568 +@WebParam(name = „sessionId") final String sessionId,
569 +@WebParam(name = „secretToShare") final String secretToShare,
570 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
571 +}
572 +{{/code}}
573 +
574 +
575 +
576 +=== Parameter disarmSite ===
577 +
578 +|(((
579 +version
580 +)))|(((
581 +Requested version: 1
582 +)))
583 +|(% colspan="1" %)(% colspan="1" %)
584 +(((
585 +sessionId
586 +)))|(% colspan="1" %)(% colspan="1" %)
587 +(((
588 +SessionId, as returned by armSite.
589 +)))
590 +|(((
591 +secretToShare
592 +)))|(((
593 +Shared secret. Has to remain identical at every communication.
594 +)))
595 +|(((
596 +additionalParams
597 +)))|(((
598 +Reserved for future use.
599 +)))
600 +
601 +=== ReturnValue disarmSite ===
602 +
603 +|(((
604 +Boolean
605 +)))|(((
606 +True if successful, otherwise false.
607 +)))
608 +
609 +== Request of learning results through the LMS ==
610 +
611 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
612 + @WebMethod(operationName = „getResultValues")
613 +public HashMapWrapper getResultValues(
614 + @WebParam(name = „version") final Integer version,
615 + @WebParam(name = „sessionId") final String sessionId,
616 + @WebParam(name = „secretToShare") final String secretToShare,
617 + @WebParam(name = „requestedValues") final HashMap<String, String>
618 + requestedValues,
619 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
620 +}
621 +{{/code}}
622 +
623 +=== Parameter getResultValues ===
624 +
625 +|(((
626 +version
627 +)))|(((
628 +Requested version: 1
629 +)))
630 +|(% colspan="1" %)(% colspan="1" %)
631 +(((
632 +sessionId
633 +)))|(% colspan="1" %)(% colspan="1" %)
634 +(((
635 +SessionId, as returned by armSite.
636 +)))
637 +|(((
638 +secretToShare
639 +)))|(((
640 +Shared secret. Has to remain identical at every communication.
641 +)))
642 +|(((
643 +requestedValues
644 +)))|(((
645 +Can be empty, thus all result variables will be returned. If it contains keys, only those will be returned.
646 +)))
647 +|(((
648 +additionalParams
649 +)))|(((
650 +Reserved for future use.
651 +)))
652 +
653 +=== ReturnValue getResultValues ===
654 +
655 +|(((
656 +HashMap<String, String>
657 +)))|(((
658 +Map of result variables, key is the variable name, value the corresponding value (HashMap is wrapped)
659 +)))
660 +
661 +== Request of result variables through the LMS ==
662 +
663 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
664 + @WebMethod(operationName = „getResultVariables")
665 +public HashMapWrapper getResultVariables(
666 +@WebParam(name = „version") final Integer version,
667 +@WebParam(name = „contentPackage") final byte[] contentPackage,
668 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
669 +}
670 +{{/code}}
671 +
672 +=== Parameter getResultVariables ===
673 +
674 +|(((
675 +version
676 +)))|(((
677 +Requested version: 1
678 +)))
679 +|(((
680 +contentPackage
681 +)))|(((
682 +Content package (zipped) as byte array.
683 +)))
684 +|(((
685 +additionalParams
686 +)))|(((
687 +Reserved for future use.
688 +)))
689 +
690 +=== ReturnValue getResultVariables ===
691 +
692 +|(((
693 +HashMap<String, String>
694 +)))|(((
695 +Map of result variables, key is the variable name, value the corresponding
696 +value (HashMap is wrapped).
697 +)))
698 +
699 +== Wrapper ==
700 +
701 +As the transmission of maps and lists generate problems via JAX-WS (lists filled by the customer are sent without any data and thus reach the server without data) they have to be wrapped.
702 +
703 +=== Wrapper for HashMap<String, String> ===
704 +
705 +HashMapWrapper.java:
706 +
707 +[[image:attach:HashMapWrapperjava.png]]
708 +
709 +[[image:attach:HashMapWrapperjava2.png]]
710 +
711 +=== Wrapper for the ArrayList<ResultsForStudent> ===
712 +
713 +ResultsForStudentsWrapper.java:
714 +
715 +[[image:attach:ResultsForStudentsWrapperjava.png]]
133 133  {{/layout-cell}}
134 134  {{/layout-section}}
135 135  {{/layout}}
719 +{{/sv-translation}}
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -3342392
1 +182190540
url
... ... @@ -1,1 +1,1 @@
1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342392/Schnittstelle ONYX Reporter
1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/182190540/Schnittstelle ONYX Reporter