JasperReports als Reporting-Werkzeug für QGIS
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 71 | |
Author | ||
License | CC Attribution 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/14856 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Production Place | Berlin |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
5
6
7
9
10
11
13
14
15
21
23
25
30
31
32
34
38
39
43
44
45
48
49
50
51
53
54
58
63
66
70
71
00:00
Computer animation
00:23
Lecture/Conference
00:43
Digital object identifierDatabasePostgreSQLDatabaseMAX <Programm>Data modelACM <Nachrichtentechnik>Hidden Markov modelMaxima and minimaValue-added networkRelational databaseTable (information)SequenceDatabaseGeometryÄquipotenzialflächeSphereXMLComputer animation
02:17
Data modelMaxima and minimaInterface (chemistry)SurfaceData modelLecture/Conference
02:54
DatabaseDatabasePostgreSQLBusiness reportingDatabaseData modelMassTerm (mathematics)Computer animation
03:28
Coma BerenicesUniform resource locatorInterface (chemistry)DatenpfadGirderInformationRow (database)Object-oriented programmingPlug-in (computing)CHART <Programm>ForceSmart cardVersion <Informatik>Query languageProgrammer (hardware)Series (mathematics)IntranetBusiness reportingSoftwareInterface (chemistry)Data modelVerschneidungScientific modellingSequenceComponent-based software engineeringUniform resource locatorSet (mathematics)CodeLecture/ConferenceComputer animation
09:25
Maxima and minimaEditorUniformer RaumComputer wormInsertion lossInterface (chemistry)Business reportingMobile appComputer animation
10:07
World Wide WebServer (computing)Client (computing)Business reportingServer (computing)Component-based software engineeringPlug-in (computing)Series (mathematics)Computer animationLecture/Conference
11:03
Client (computing)Business reportingDatabaseXMLChief information officerMaxima and minimaLocally compact spaceNewton's law of universal gravitationInsertion lossCurve fittingConditional-access moduleBusiness reportingPlug-in (computing)Server (computing)Aktion <Informatik>DatabaseÄquipotenzialflächeComputer animation
12:17
XPathBusiness reportingPDF <Dateiformat>Computer fileComputerComputer filePDF <Dateiformat>Server (computing)Plug-in (computing)Lecture/Conference
13:10
Computer animation
14:02
Patch (Unix)TypMaxima and minimaInterface (chemistry)Smart cardGoogleComputer animation
14:29
Revision controlTypRothe-VerfahrenWorld Wide WebMaximum (disambiguation)Document management systemHidden Markov modelACIDMenu (computing)Computer wormHeat transferBus (computing)Successive over-relaxationSoftware repositoryHydraulic jumpPresentations <Programm>Interface (chemistry)Computer animation
15:31
Business reportingServer (computing)DatabaseSource codeBusiness reportingInterface (chemistry)Google MapsPlug-in (computing)Mean-Field-TheorieCircleSurfaceDatabaseState of matterServer (computing)Grand Unified TheoryComputer programmingJASPER <Programm>Lösung <Mathematik>LinieIP addressLecture/Conference
19:38
Server (computing)DatabaseSoftwareBusiness reportingRandBackupWeb serviceGoogleVector graphicsService (economics)Computer fileClient (computing)VolumenvisualisierungIntranetComputer animationLecture/Conference
23:52
Computer animation
Transcript: German(auto-generated)
00:07
Danke für die Einführung. Die Motivation für den Vortrag ist folgende. Auf der Kugelsmehlin-Liste taucht immer mal wieder die Frage auf, wie kann ich denn meine Daten mal hübsch ausgeben.
00:49
Danke. Ich sehe es hier zwar nicht, gut, dann sehe ich es da. Jetzt schaue ich mit Ihnen drauf. Gut, Problemstellungen, also folgende. Wir haben, ja super.
01:04
Problemstellungen, also folgende. Wir haben häufig die Kombination von Kugels mit einer Datenbank. Meist eine relationale Datenbank. Im Falle der Stadt Jena ist das dann eine PostGIS-Datenbank. Kann aber natürlich auch jede andere relationale Datenbank sein.
01:23
Welche Maus muss ich klicken, damit ich weiterkomme? Ja, ja, das ist schon klar, dass sie in dem Blue-Bone-Fenster sein muss. Dann muss ich auch dort klicken, ja. Ja, gut.
01:40
Ja, in einer relationalen Datenbank werden die Daten in Relation gehalten. Am besten natürlich normalisiert, ein paar sollten normalisiert gehalten werden. Das hat, sage ich mal, den gewissen Nachteil für den Nützer, dass die Daten eben in relativ komplexen Modellen vorliegen. Ich habe jetzt hier, sage ich immer gerne, weil es so schön kompliziert aussieht.
02:03
Hier Beispiel nennt sich Bauland-Kataster, beziehungsweise wir haben das hier. Also hier in dieser Tabelle liegt die Geometrie. Mit drin, wir haben das Potentialfläche genannt, also eine potenzielle Baufläche. Das wird dann sozusagen, das Bauland-Kataster ist da nur ein Teil davon,
02:22
weil nicht alle potenziell bebaubaren Flächen eben dann später zum Bauland-Kataster gehören. Wir sehen jetzt hier also die ganzen Relationen. Wir haben also hier links zum Beispiel die Art der Nutzung, also potenzielle Art der Nutzung als eine 1 zu N-Beziehung. Und hier in diesem Bereich haben wir jetzt hier diese N zu N-Beziehung,
02:41
also viele zu viele Beziehungen, zum Beispiel die aktuelle Nutzung der Fläche. Also eine Fläche kann mehrere aktuelle Nutzungen haben und dieselbe aktuelle Nutzung kann natürlich auf mehreren Flächen vorkommen, deswegen N zu N. Es ist eigentlich klar, dass es relativ umständlich ist, so komplexe Datenmodelle aus Kugis jetzt heraus abzufragen,
03:05
also für den Nutzer, der versierte Nutzer kann das aber natürlich tun. Sieh ich jetzt einen kleinen Bogen zu meinem Vortrag letztes Jahr, wenn man diese data-driven-input-Mask nimmt, dann hat man eben aus der Datenbank heraus automatisch derartige Eingabenmasken,
03:23
wo dann halt die, ja in dem Fall jetzt hier zum Beispiel eine N zu N-Beziehung, hier der Gebietssachtverarbeiter durch so eine Combo-Box dargestellt wird, oder kommen wir hier zu dieser N zu N-Beziehung, hier wieder die aktuelle Nutzung in dem ersten weißen Bereich hier oben.
03:42
Also hier, ja. Das kann eben durch solche Datenmasken dargestellt werden, das ist für den Nutzer schon mal ganz praktisch, also das ist sozusagen die Komplexität des Datenmodells, was in dem Fall aus, weiß ich nicht, 20 Modellen besteht, kann in einer Maske editiert werden, angezeigt und editiert werden.
04:04
Das Problem ist aber halt, dass die meisten Nutzer sich eigentlich nicht wirklich für Datenmodelle interessieren und sich auch nicht für die Technik dahinter interessieren, sondern die wollen Informationen. Also die wollen auch nicht Daten, die wollen Informationen. Und zwar wollen sie Informationen zur Fläche selbst, bleiben wir Beispiel Potentialfläche, Baulandkataster,
04:22
also das Objekt selbst mit allen Relationen, das können die Datenmaske abbilden, die Nutzer wollen aber meistens noch mehr, die wollen nämlich immer noch mal Informationen zu anderen Geo-Objekten, die in derselben Gegend liegen, zum Beispiel auf welchen Flurstücken liegt das Ding denn jetzt überhaupt. Auch hier der basierte Gistnutzer kann natürlich eine räumliche Abfrage machen,
04:40
lässt sich die entsprechenden Daten rein, kann die Abfrage machen, kann eine Verschneidung machen, kann damit diese Fragen lösen. Der einfache Nutzer in der Kommunalverwaltung kann das nicht, aber der will das trotzdem wissen, das heißt, der braucht auch da die Information und am besten natürlich einmal auf den Knopf drücken für die Information. Nicht viele Sachen machen, interessiert sich ja nicht für Technik,
05:01
sondern will er nur auf den Knopf drücken. Und das Ganze möchte dann bitte auch noch irgendwie hübsch sein, dass er es ausdrucken kann, diese Datenmaske kann er nicht ausdrucken. Ja, also das ist auch hier, er kann zwar die Information zur Fläche, zum Geo-Objekt selbst abfragen, aber er kann es nicht ausdrucken, einen Vorgang dranheften, er kann das auch nicht irgendeinem anders in die Hand drücken.
05:21
Ja, und hübsch aussehen tut es im Allgemeinen auch nicht, sondern es ist dann eher was Praktisches. Ja, und jetzt komme ich eigentlich so zum wesentlichen Punkt, also wer das QGIS kennt und verfolgt hat, also die Druckzusammenstellung wird mit jeder Version, vor allem jetzt auch mit dem Sprung auf die Version 2.0 deutlich besser, aber dass man solche Sachen dort machen kann,
05:42
kann man natürlich auch, es ist sehr kompliziert, auch wieder zusammenbauen. Auch das kann der Nutzer wieder nicht. Ja, das ist ihm schon wieder zu kompliziert. Das heißt an der Stelle ist eigentlich meine Meinung, dass die Lösung nun im wirklich echten Reporting-Werkzeug sein kann. Und soweit ich das überblicke, ist das die Just-by-Report-Slip,
06:02
die die da am weitesten ist, also im Bereich der freien Software, wobei das ist auch so eine Dual-Licensing-Geschichte, glaube ich, es gibt da so eine freie Version und eine Aufversion, wenn es richtig weiß. Jetzt haben wir aber das Problem, erst mal was kann die Just-by-Report-Slip eigentlich, die kann also zum Beispiel Grafiken einbinden,
06:21
das ist jetzt nicht wirklich das Tolle, aber die Grafiken, was aber ganz spannend wird, ist, dass die Grafik auch über eine URI angesprochen werden kann. Da könnte man zum Beispiel einen WMS-Get-Map-Request dahinterlegen, um sich dann eben spezielle Karten in sein Report reinzuziehen von einem WMS-Server, den man zum Beispiel selbst betreibt, damit die Daten dort noch verfügbar sind.
06:40
Ja, das kann also ganz, so alle möglichen Torten, Balken, Spider-Grafiken, dieses ganze Zeug, können eben Daten entsprechend so aufbereitet und dargestellt werden. Tabellen, Posttabellen, kann ich nicht viel zu sagen, habe ich noch nie benutzt. Was ich viel benutze, das sind diese SUP-Reports, das ist dann ganz praktisch für diese N-zu-M-Verknüpfung,
07:01
weil im Prinzip ist ein Report immer ein Datensatz, und wenn ich jetzt N-zu-M habe, habe ich ja wieder mehrere Datensätze, die zu dem einen Datensatz gehören. Das heißt, ich muss einen Unterreport machen, um dort wieder den einzelnen Datensatz ausgeben zu können. Und es kann noch eine ganze Menge mehr, manches weiß ich, vieles kenne ich wahrscheinlich auch gar nicht.
07:22
Ja, Problem bei der Geschichte ist, dass das Just-for-Reports- ist eben ein Java-Programm. Wer KUGIS kennt, weiß, das ist kein Java-Programm. Es lässt sich mit dem einfachsten eigentlich für Plugins, also mit dem Python, programmieren. An der Stelle ist jetzt die Frage, wie kann ich jetzt aus Python heraus ein Java-Programm ansprechen?
07:44
Ich habe da eine ganze Weile rumgesucht, ich habe bis eigentlich nur eine Sache gefunden, nämlich das, was man jetzt nicht sieht, das ist super, das Maus wieder weg gewesen. Nämlich die PyChasper-Geschichte, das ist auf GitHub gehostet.
08:03
Stand, soweit ich das sehe, also auch von der URL zu sehen, von der Firma Hudora, das ist eine Sportartikel-Firma. Das Problem von den PyChasper, was unter dieser URL erreichbar ist, das ist veraltet und wird offensichtlich auch nicht mehr gepflegt, der Code. Ich habe nämlich einen Fork gemacht und entsprechend die Just-for-Reports-Lib aktualisiert,
08:23
die war auf der Version 3. irgendwas. Aktuell ist jetzt die 5.5. Und ich habe dann auch einen Pull-Request gemacht, der ist aber einfach wirklich beantwortet, also passiert nichts. Deshalb habe ich hier nochmal die URL von dem Fork mit hingetan, wer sich dafür interessiert, also hier ist die aktuelle Just-for-Reports-Lib eingebunden.
08:42
Ich würde es in Folgen zeigen, was braucht man jetzt, oder was habe ich bei uns im Intranet sozusagen gemacht, um sowas zum Laufen zu bekommen, was würde man für Komponenten brauchen? Als erstes braucht man eine Report-Vorlage,
09:02
das ist also im XML-Format abgespeichert. Da gibt es ganz hübsch auch dieses Just-for-Soft-Studio. Wer mal mit Just-for-Reports gearbeitet hat, früher gab es iReport. Das gibt es jetzt nicht mehr, also es gibt es noch, aber das wird jetzt abgenügt, das Just-for-Soft-Studio. Das ist so ein What-you-see-is-what-you-get-Programm.
09:22
Ich habe hier einen Screenshot, wie sowas dann aussieht. Das ist sozusagen die Report-Vorlage in der Ansicht. Man kann sich die natürlich auch in der XML-Ansicht ansehen. Was sehen wir hier? Das ist jetzt wieder das Beispiel von dem Bauland-Kataster. Hier ist jetzt der Unterreport, der für die Daten zur planungsrechtlichen Situation
09:43
oder auch zur Planungssituation auf der Fläche gemacht wird. Wir sehen hier, wo dieses kleine Kästchen dran ist, das sind die Unterreports, die dann diese N2M-Verknüpfungen anzeigen. Was man eben auch sieht, ist, dass so ein Report natürlich sehr speziell
10:02
auf die eigenen Daten zugeschnitten werden muss. Das geht ja wirklich darum, was wollen meine Nutzer in der Stelle sehen und wo liegt das in meinen Daten? Dann braucht man einen Applikationsserver, auf dem das By-Just-for-Backend läuft. Applikationsserver, was macht der?
10:21
Der kompiliert diese XML-Reportvorlage, die vom Client übergeben wird, da komme ich gleich drauf, erzeugt aus den übergebenden Daten und dieser kompilierten Reportvorlage dann den Report als PDF und gibt den Report an den Client zurück. Was da läuft, ist ein Chatty-Server,
10:41
etwas veralteter, aber funktioniert. Ich habe das deshalb nicht angefasst, ich kenne mich auch nicht so aus. Kleiner Hinweis noch, wenn man dort Subreports einbindet, da müssen sie natürlich auf dem Server liegen. Die können nicht mit übertragen werden, sondern nur der Hauptreport übertragen. Als dritte Komponente,
11:01
das Wichtigste, was das Ganze zusammenkleistert, das ist in dem Fall ein Plug-in für Kugis, was dann diesen By-Just-for-Client implementiert. Ich mache das meistens als Lehraktion, das heißt, der Nutzer kann oben in Kugis, wie er es kennt, auf die Aktion klicken,
11:21
klickt dann in dem Fall auf seine Potentialfläche und bekommt dann eben das Datenblatt, das ich auch gleich noch mal zeigen werde in der Ausgabe. Das Plug-in liest die Daten aus der Datenbank, in meinem Fall eben wie gesagt POST, GIS. Ich benutze dafür immer das QT SQL, weil das ist bei Kugis schon dabei,
11:42
im Normalfall. Man kann aber natürlich auch wieder andere Bibliothek nehmen, um seine Datenbank anzusprechen. Wichtig ist eben, dass die Daten dann vom Plug-in als XML formatiert werden und im Report wird dann so ein X-Pass-Ausdruck benutzt.
12:02
Ich habe hier mal ein Beispiel, wie das jetzt bei mir aussieht, wie so eine Datenformatierung aussieht. Das wäre jetzt im Prinzip so ein Datenspiel, das XML, was dann an den Server übertragen wird. Auch hier sieht man wieder, das ist natürlich wieder ganz individuell. Das muss natürlich einmal individuell zu den Daten passen und natürlich auch zu dem Report, also die Reportvorlage, die ich gemacht habe,
12:21
damit das eben dann an der Stelle die Daten findet. Die Reportvorlage und die Daten werden dann entsprechend auf den Server übertragen, wo das PyChars Per Backend läuft. Und das, habe ich ja schon gesagt, rendert dann in PDF und gibt das eben sozusagen an den Kleinen zurück. Und dann muss das QGIS Plug-in natürlich dieses PDF entgegennehmen,
12:43
als Datei speichern und dann entsprechend hier irgendwie die auf dem Rechner defaultmäßig installierte PDF-Anwendung öffnen und das zur Anzeige zu bringen. Also die Schritte, die ja nötig sind. Ich habe jetzt zwei Beispiele. Da muss ich mal schnell aufmachen.
13:01
Einmal hier das Bauland-Kataster. Muss ich jetzt rüber schieben. Ja, sehr schön.
13:22
Aber, ach man, wo ist das jetzt wieder hin?
13:45
Ich habe es ja geöffnet, aber es ist weg. Das war ja kurz auch zu sehen, aber ich schiebe es rüber.
14:07
Bedankt. Wie du das gemacht hast, weiß ich nicht. Das andere Beispiel, das Gewerbekataster, ist jetzt nicht so... Bauland-Kataster zeige ich gerne auch noch mal auf einem anderen Rechner. Das, denke ich, kommt in der Zeit nicht mehr hin. Aber hier sehen wir jetzt das Gewerbekataster,
14:22
mein zweites Beispiel. Wir haben hier eine Einwendung von Karten. In dem Fall ist das direkt aus Google die Karte erzeugt worden. Bauland-Kataster mache ich sie über, was ich vorhin gesagt habe, über diese WMS-Geschichte. Das ist auch das Beispiel, was im Paper drinne ist. Wenn man jetzt hier runter scrollt,
14:41
dann findet man hier zum Beispiel eine Darstellung von solchen N-zu-M-Verknüpfungen. In dem Fall ist das so gemacht, dass alle möglichen M-Werte hier eben auftauchen. Und die, die verknüpft sind, sind mit dem Haken angezeigt. Das ist hier sicher ganz praktisch bei dem Gewerbekataster, weil man eben sieht, welche Branchen sind denn überhaupt theoretisch möglich auf der Fläche und welche tauchen dann auf diese
15:02
Gewerbefläche tatsächlich auf. Spannung steigt. Ich holte jetzt nochmal was anderes zur Presentation zurück.
15:27
Jetzt komme ich sozusagen auch schon zum Schluss. Ich würde jetzt einfach ein paar Ideen, Hinweise geben, auf was man, wenn man das tatsächlich benutzen will, achten möchte. Also einmal Kartendarstellungen. Ich denke, das ist ein Punkt, der,
15:41
weil wir uns ja im GISS-Umfeld bewegen, auch wirklich ganz wichtig ist, dass man eben tatsächlich, wenn man jetzt hier einen Report macht zu einer Fläche, dass man die Fläche auch in einer Kartenansicht sieht. So wie wir das im Gewerbekataster gesehen haben, mit dem Fall sogar zwei Kartenansichten. Einmal eben die Lage innerhalb der Stadt und dann eben nochmal eine herangesoomte Situation, wo man dann eben nochmal
16:01
was an Details auch sieht. Das geht eben einmal. Ich denke, was eine sehr schicke Sache ist, wenn man da eben WMS ansprechen kann. Das wäre die eine Variante. Die andere Variante, was ich aber auch gerne mal nutze, ist, dass einfach der Kugel scannt weiß, da gibt es im Menü die Möglichkeit Bild speichern als. Das heißt, da wird einfach die Karte gespeichert.
16:20
Das kann man eben auch über beiden ansprechen und dann wird ein PNG gespeichert. Das PNG wird auf den Server übertragen, wo das by Jasper backend läuft und dort unter einem temporären Namen abgelegt und kann dann der Name wird, der Dateiname wird sozusagen dem Report, dem XML-Daten mitgegeben und kann dann vom Report, wird dann vom Report dann entsprechend angezeigt.
16:43
Das ist also eine ganz, da kann man sich verschiedene Lösungen vorstellen, dass Jasper Reports kann auch Google Maps einbinden, wer das gerne machen möchte. Ja, was noch? Also diese Geschichte mit diesen, zum Beispiel, auf welchen Flugstücken liegt eine Fläche?
17:02
Ich mache sowas immer als Sicht auf der Datenbank. Ganz einfach, wenn sich die zugrundelegenden Daten ändern, muss ich nicht das Plug-in ändern und dann wieder an meine Nutzer verteilen, sondern ich muss eigentlich nur die zugrundelegenden Daten ändern und ich frage dann in dem Sinne eigentlich nur noch die Datensicht ab, in dem Moment, wo der Report erzeugt wird.
17:24
Ja, eigentlich auch klar, wenn man jetzt hier die Daten werden ja irgendwie bespeichert, aber jetzt im Report möchte das immer gerne hübsch aussehen, ja, also ein gutes Feld, Bebauung, ja, nein, Fläche ist bebaut, ist nicht bebaut, da kann ich natürlich
17:41
ja, nein reinschreiben, ist irgendwie ein bisschen albern, also da kann man einfach dann anfangen auch mit solchen Texten zu arbeiten, die man dann eben als Daten übergibt, dann sieht das hübscher aus. Eben auch ganz wichtig, dass man das mit möglichen Null-Werte auch auffängt, weil sonst steht in Just-Pro- Reports immer Null drin, ja, man kann das auch unterdrücken, dann wird das gar nicht ausgegeben, wenn es Null ist, dann fehlt aber das Element
18:01
eventuell im Report im Vergleich zu einem anderen Report, ich würde deshalb irgendwie keine Angabe oder irgendso was machen. Ja, das, was ich noch, was ich oder noch als nützlich erwiesen hatte, ja, universell einsetzbare Subreports vorzuhalten, dann ist diese, gerade diese Frage, auf welchen Flussstücken liegt das Ding
18:21
eigentlich, das kommt ja bei verschiedenen Fachthemen zur Geltung, und dann ist natürlich schlau, wenn man da schon einen Subreport hat, der das alles schon enthält, und den braucht man dann bloß noch aus seinem Hauptreport anzusprechen, kann sich dann relativ schnell, wenn man eben auch für diese end-to-end-Verknüpfungen schon Subreports vorhält, dann
18:41
bräuchte die nur noch einzubinden, und dann ist der Report eigentlich auch halbwegs schnell gemacht, dann ist sozusagen der größere Aufwand, ist dann die beiden Programmierungen für das Plug-in. Ja, Nutzungsmöglichkeiten, das habe ich ja einfach nur mal ein paar Beispiele aufgeschrieben, ja, Datenglätter, wie gesehen, ich könnte mir durchaus auch Serienbriefe vorstellen, man hat irgendwie eine Baumaßnahme, an der Straße will die
19:03
Anwohner oder Nachbarn Grundstücke informieren, hat man die Baumaßnahme schön als Fläche oder Linie irgendwie eingezeichnet, klicke ich meine Grundstücke an und sage, jetzt bitte Brief an alle Anlieger, falls die Adrestatenbank an der Stelle aktuell ist,
19:22
würden dann die Adressen automatisch erzeugt, und in denen könnte man dann eben so eine Serienbriefgeschichte machen, ja, Schadensberichte, was auch immer, also letztendlich kann man alle Daten, die in der Datenbank sind, irgendwie als so einen Reporter ausgeben. Ja. Zeit passt, ja.
19:45
Bevor wir jetzt zu den Fragen aus dem Publikum gehen, hätte ich eine Frage auf organisatorischer Sicht, weil mir das gerade aufgefallen ist, während des Vortrags, wer von Ihnen, der das jetzt gehört hat, würde mal völlig unverbindlich gerne im nächsten Jahr dazu einen Workshop besuchen?
20:01
Ja, könnte lohnen, denke ich mal. Nein, ich habe drüber nachgedacht, nein, der Punkt war tatsächlich, ich wollte einen Workshop anbieten, dann kam aber genau diese Umstellung, mit dem, was ich vorher sagte, dieses iReport, da war ich relativ gut eingearbeitet, dann kam dieses Just-per-Soft-Studio, ich wollte jetzt aber nicht auf der Software, die sozusagen eigentlich abgeschrieben ist, den Workshop machen und habe das deshalb dann nicht gemacht,
20:21
ja, weil das Just-per-Soft-Studio habe ich nicht erst im letzten Monat so ein bisschen rein gebastelt, das ist doch ein bisschen anders, also insofern vielleicht im nächsten Jahr, durchaus. Jetzt zur Frage im Publikum, bitte warten Sie auf das Mikrofon. Ja, ich habe eine Frage zu dem Rendern der Reports, warum passiert das
20:41
auf einem Server, kann man das nicht auf dem gleichen Rechner auch machen? Das ist jetzt theoretisch natürlich oder praktisch sicher auch, dann müsste ich das, aber da wir haben ungefähr 50 oder 60 Kugeln Nutzer, die müssten dann alle diesen Just-per-Server da haben, auf ihrem Rechner,
21:00
ist dadurch praktischer eigentlich einen zentralen Rechner zu haben, wo ich auch die Reports leichter austauschen kann, als dass ich das immer an allen kleinen, aber wenn man jetzt nur als Einzelperson unterwegs ist, dann kann man den Report auch direkt aus das Just-per-Soft-Studio rendern, da müsste man sich sozusagen nur die Daten erzeugen, man könnte dann den Report machen, man könnte auch dann direkt die Datenbank
21:21
ansprechen, hier ist das sozusagen als kleinen Serverarchitektur, weil ich eben 40, 50 verschiedene Kleins bedienen muss, deswegen ist es in der Stelle so gemacht, aber man könnte das tatsächlich auch im lokalen Rechner machen.
21:44
Es wird ja gesagt, dass man das Bild über einen WMS-Request quasi einbinden kann, aber dann ist ja das Problem, dass wenn man lokal noch Vektordaten oder ein Shapefile dazu gibt und Überlage, das ist ja dann nicht gelöst, weil man ist dann wirklich auf diesen WMS-Service angewiesen kann, dann die Vektordaten, die man lokal einbindet, ja nicht
22:00
mitmischen. Richtig, ich ging da in dem Fall davon aus, wir haben im Intranet einen WMS-Server zu laufen, da kann ich die Daten natürlich entsprechend auch vorhalten. Anders geht es natürlich nicht, es sei denn, kann man auf den WMS auch noch eigene Daten übertragen in der URL? Geht nicht so.
22:21
Das ist so wurscht, das würde ich alles in die URL packen, also das würde man dem XML übergeben und das würde dann die URL sein, also ich könnte mir auch vorstellen, SLD dann zum Beispiel mitzuübergeben, wenn das der Server kann. Also ich ging in dem Fall davon aus, dass das jetzt nicht irgendein WMS-Server von einem anderen Dienst ist, sondern dass das sozusagen mein eigener WMS-Server ist,
22:42
gleiche Sache wie hier, wir haben eben viele Clients und haben dann sozusagen einen zentralen WMS-Server und da würde ich diese Daten dann entsprechend haben und dann könnte man die anbinden an der Stelle. Sonst wäre es sicher schlauer, wenn ich jetzt hier mit eigenen Dateien arbeite, dass ich mit dem WMS reinhole, als Layer nach Kugis
23:01
und dann die zweite Variante mit dem PNG auf den Server hochladen dann benutze. Zwei Gleisigfahnen. Dann muss ich einerseits die Daten, die ich eigentlich lieber vectoriell vorliegen habe, ja auch noch renden quasi, also das heißt,
23:20
also ich muss hier einen WMS- Service haben, der mir dann die Daten rendet, also das ist halt nicht ein Mitgeben. Nein, diese zweite Variante, was ich jetzt gezeigt hatte, machte einfach den Kugis Screenshot, ja also diese PNG aus Kugis heraus und da habe ich ja die Daten so, wie sie dann, genau so wie ich den Kugis sehe, würde dann der entsprechend, das muss man natürlich
23:41
programmieren, dann dieses PNG rausgeschrieben und wenn ich dann sogar lokal arbeite, brauche ich das auch gar nicht, was ich jetzt noch dabei hatte, auf den Server übertragen, sondern das würde dann ja auf dem lokalen Rechner vorliegen, diese PNG-Datei, die dann die Karte enthält.