Hilfe beim Einfügen eigener Layer benögtigt [bin OSM-Anfänger]

Hallo OSM-Community,
bin bisher ein recht unbeschriebenes Blatt was OSM anbelangt, das vorneweg.

Ich habe die Aufgabe von meiner Firma bekommen, unsere Geodaten nutzbar zu machen, was das heißt, versuche ich mal im folgenden zu umreißen.

Die Geodaten liegen bei uns im Microsoft CRM vor und dieses zieht es aus einer Datenbank.

  1. Ziel ist es, die OSM-Karte in das MS CRM einzubinden. → Geht/Darf man das? Wenn ja, ich habe etwas von der Möglichkeit eines eigenen Servers gehört, wo liegt hier der genaue Vorteil/Nachteil? Was braucht man dafür (je für eigenen Server oder die Online-Lösung), einschließlich der Kenntnisse über evtl. Programmiersprachen etc.?

  2. Ziel ist es, einzelne Layer auf die OSM-Karte hinzuschalten zu können (8 verschiedene Layer - z.B. Auftrag, Vertrag,…). Dabei soll aber auch gleichzeitiges Zuschalten möglich sein.
    Die Layer würden jeweils recht viele Punkte anhand der Geodaten anzeigen sollen.
    Die Layer sollen erst ab einem bestimmten Zoomlevel anwählbar sein.
    Es soll eine Art “Umkreissuche” geben, d.h., es sollen vorhandene Geodaten, die in der Nähe liegen, hinzugeschaltet werden können.
    Ist das möglich? Wenn ja, wie könnte man das Problem ungefähr angehen?

Ich habe bereits etwas im Wiki rumgestöbert, aber die zündenden Ideen kamen noch nicht.
Ich wäre sehr dankbar für Hilfestellungen!

Mit freundlichen Grüßen

Alberto866

Moin moin,

und erst einmal willkommen im Forum.

Das schaut nach einer rein internen Anwendung aus, die der Gemeinschaft nichts zurück gibt.

Ich empfehle, einen kommerziellen Dienstleister zu beauftragen.

Gruß Wolf

Willkommen, Alberto!

Uns freut, dass deine Firma erwägt, OSM-Daten zu nutzen. Wenn das so möglich ist wie gewünscht, werden wir dich zum Ziel leiten.

Schau vielleicht erstmal auf die bereits verwirklichten Lösungen unter
http://wiki.openstreetmap.org/wiki/DE:Using_OpenStreetMap
und
http://wiki.openstreetmap.org/wiki/List_of_OSM_based_Services

Sind dort irgendwelche Seiten, die deiner Darstellung schon nahe kommen?

Meinst du mit CRM das hier? http://de.wikipedia.org/wiki/Customer-Relationship-Management

In welchem Format genau unds mit welchen Parametern liegen die Geodaten in eurer Datenbank vor? Wie sind die Export-Möglichkeiten?

Vielen Dank erstmal für die zügigen ersten Rückmeldungen :slight_smile:

@ Netzwolf: Kannst du im groben einschätzen, was so eine Lösung kosten würde? Kann mir vorstellen, das dadurch sehr schnell zu hohe Kosten entstehen…

@ stephan75: Also das CRM ist im groben so wie bei Wikipedia beschrieben. Das ganze ruft man bei uns über einen Browser auf, sollte also von der Einbindung der Karte her nicht all zu kompliziert werden (?)

Wie die Daten genau vorliegen, reiche ich nochmal nach, nachdem ich den Verantwortlichen gesprochen habe.

Das letztendliche Ziel könnte man sich ungefähr so vorstellen:
http://osm.t-i.ch/bicycle/map/
Die “Bedienleiste” kommt da nah an unsere Wünsche heran, natürlich müssten dann nicht einzelne Wege etc. eingefärbt werden, sondern es müssten einzelne Punkte eingeblendet werden (Am besten wäre es, wenn man dann noch auf diese draufklicken könnte für weitere Informationen zu dem jeweiligen Punkt.)

Edit: Das hier trifft es noch mehr:
http://www.tappenbeck.net/osm/maps/deu/index.php?id=1015
http://wheelmap.org/

Edit 2: Die Daten liegen in Form von Längen- und Breitengraden und Adressen vor

Hi Alberto,

selbstverständlich darftst du die “OSM-Karte” als Hintergrund für eigene Anwendungen verwenden, wenn deren Nutzung in einem erträglichen Maß lieg.
Ab einer gewissen, leider nicht fest definierten, Nutzung werden wir dich bitten, diesen Hintergrund selber zu erstellen (selbstverständlich unter freier Nutzung der OSM-Rohdaten)
oder von externen Dienstleistern zu beziehen (z.b. mapquest?)

Ganz grob würde ich das Projekt in mehrere Abschnitte teilen:

  • Stufe 1: Nutzung der OSM-Karte mit eigenen Layers für die “eigenen” Daten
  • Stufe 2: Ersatz der OSM-Karte durch eigene, selbst gerenderte Karten

Wenn du beides strikt voneinander trennst, kannst du relativ früh war “Vorzeigbares” haben und dich bei stärkerer Nutzung auf Stufe 2 stürzen.

Da die 2. Stufe nahezu zwingend eine Postgresql/PostGis-Datenbank voraussetzt, würde ich mich damit beschäftigen und auch Stufe 1 damit realisieren.

OSM mit anderen Datenbanken als Postgresql ist mit Verlaub eine “Zumutung” an die Entwickler.

Gruss
Walter

p.s. Netzwolf hat ein wenig “geknurrt”, da wir uns immer fragen, ob die Daten, die jemand zur legalen Verfügung hat, nicht eventuell in OSM drin stehen sollten. Damit hätten alle was davon.
Es hängt aber davon ab, was für Daten du visualisieren willst. Eventuell verräts du uns ja noch ein wenig mehr.

Am einfachsten geht es mit [1]. Unter Windows erstellt man einfach eine Ubuntu-VM (z.B. mit VirtualBox) und installiert den Kram. Ist sehr einfach, funktioniert, gut beschrieben und ist erweiterbar.

Christian

[1] http://wiki.openstreetmap.org/wiki/DE:Ubuntu_tile_server

Wenn diese Lösung nicht nur optisch paßt, sondern auch als Grundlage für die technische Umsetzung infrage kommt, frag doch einfach mal Jan Tappenbeck aka User Lübeck, ob er bereit wäre, seinen Code zur Verfügung zu stellen, und was er dafür haben will. Evtl. läßt sich das ja per steuerlich absetzbarer Spende an OSM regeln :wink:
Ansonsten - ich kenne die Preise der weiter oben genannten Geofabrik (und ähnlicher kommerzieller Dienstleister) nicht, aber da Kartensysteme auf OSM-Basis deren Tagesgeschäft sind, können sie evtl. eine geringfügig adaptierte Standardlösung liefern, die dann nicht so teuer ist wie Du befürchtest - fragen kann man in jedem Fall mal. Ob eine Eigenentwicklung dann letztlich billiger oder teurer kommt, wird Deine Firma selbst einschätzen müssen. Mit den schon genannten Werkzeugen ist das Aufsetzen eines eigenen OSM-Servers (Datenbank, Rendering) in letzter Zeit deutlich einfacher geworden, aber die Einarbeitung, um spezielle Anwendungen zu realisieren, kostet natürlich dennoch Zeit.

Vielleicht versuchen wir mal die verschiedenen Teile des Vorhabens auseinanderzuklamüsern. Ich habe - wie wohl die meisten hier - von MS CRM keinerlei Ahnung. Ist folgendes richtig?

  • MS CRM verfügt selbst über keinerlei “Kartenansicht”, “geographische Darstellung” etc. Geographische Koordinaten sind für MS CRM einfach weitere Datenbankeinträge ohne spezielle Bedeutung.

  • MS CRM kann (u.a.) per Webbrowser bedient werden.

  • Dir schwebt eine Lösung vor, bei dem etwa Kundenadressen grafisch vor einer OSM-Karte als Hintergrund dargestellt werden.

  • Dies soll ebenfalls über eine Webschnittstelle geschehen.

Dann wäre die Grundaufgabe, 1.) eine Webschnittstelle ähnlich einer der oben verlinkten zu basteln, die OSM plus diverse Datenebenen enthält, 2.) die Daten von MS CRM zu "rendern", also in ein geeignetes Format zu wandeln und mehrere graphische Layer zu erstellen, in denen ausgewählte Daten dargestellt werden, plus Verknüpfung mit MS CRM (also Link auf die Daten in der CRM-Webschnittstelle). 3.) Dann noch die angesprochene Umkreissuche. Diese soll nur Daten aus dem eigenen Bestand (MS CRM) verarbeiten, oder soll sie auch in OSM suchen können?

Erstmal wieder vielen Dank für die ausführlichen Antworten hier!

@wambacher: Die Stufenregelung klingt einleuchtend.
Jedoch hätte ich noch die Frage, ab wievielen Aufrufen am Tag die Community von “viel” spricht, ich schätze die Nutzung mal auf maximal 100 Aufrufe am Tag.

Die Daten kann ich leider nicht OSM zur Verfügung stellen, da es sich um Kundenadressen handelt. Allerdings würde mir spontan auch nichts einfallen, was ihr damit anfangen könntet. Konkret soll angezeigt werden, welche Auftragspositionen/Produkte ein Kunde an Standort A, B und C hat.

@ Oli-Wan: Die Lösung über einen Dienstleister wäre nur der Notweg, falls es ohne nicht klappt. Ich möchte ja auch etwas dabei lernen :slight_smile:

Die Aussagen über MS CRM stimmen soweit, außer beim 1. Punkt, den ich wie folgt umändern würde:
[…] etc. Geographische Koordinaten sind im MS CRM stark mit anderen Daten (Kunden, Aufträgen, Verträgen,…) verknüpft.
Beim 2. Punkt würde ich das u.a. gerne entfernen, es geht ausschließlich per Browser.

Nun zu den Grundaufgaben:
1.) korrekt
2.) nicht ganz korrekt:
Die Karte soll IM CRM dargestellt werden, also in einer Art Container. Sprich, wenn ich bei einem Kunde auf Auftrag A klicke, dann wird mir innerhalb des MS CRM’s eine Karte angezeigt.
3.) nur Daten aus dem MS CRM

Ich bin jetzt auf OpenLayers gestoßen (www.openlayers.org), wäre damit potentiell eine Lösung zu erwarten? Falls ja, kennt sich vielleicht auch damit jemand aus und kann mir sagen, ob das eventuell eine Alternative/Möglichkeit wäre?

Mfg

Alberto

Ja klar, wundert mich dass das Stichwort “OpenLayers” in diesem Faden noch nicht genannt wurde.
Die Tappenbeck-Karte nutzt ebenfalls OL.

Weitere APIs zur Anzeige der OSM-Karten sind leaflet, KHTML und die google-API.

Bei der Mischung von OSM mit “nicht-freien” Daten, in Deinem Fall Kundendaten müsstest Du noch
auf die aktuelle und kommende OSM Lizenz achten.

Grüße
Chris

Hallo Chris

Da die internen Daten per Overlay-Library strikt von den OSM Daten getrennt sind, sollte das weder heute noch in Zukunft irgendein Problem darstellen.

An Alberto866:
100 Aufrufe je Tag heißt dann ca. 5000 - max. 10000 Kacheln am Tag.
Das sollte eigentlich kein Problem darstellen. Es sei denn, ihr verkauft eure Lösung an mehrere 1000 Kunden. Dann wird die Summe aus Kunden mal Aufrufe doch deutlich größer.

Was eure Kunden-Daten betrifft wären für OSM allgemeine Informationen wie Lage, Art des Betriebes, Name, Anschrift schon interessant. Das kann man aber unabhängig von eurer Firma über einen anderen OSM-Account eintragen. Ebenfalls interessant könnte es für euch sein, Zufahrtswege z.B. auf größeren Firmen-Geländen einzutragen. Da kann man dann direkt sehen, wie man zu einem bestimmten Gebäude, in dem euer Kunde sitzt, gelangen kann. Auch das geht natürlich über einen beliebigen OSM-Account.

Was sicher nicht interessant für OSM ist, sind Dinge wie, dass ihr Geschäftsbeziehungen mit dieser Firma habt oder gar Details dieser Geschäftsbeziehung.

Edbert (EvanE)

Das dürfte wohl ok sein. Wenn es irgendwann zu eng wird, wird man sich schon melden. Ist aber nur meine persönliche Auffassung!

“Wir” können alle Adressen gebrauchen. Das sind für uns einfache Nodes mit Address-Infos (Land, Stadt, Strasse, Hausnummer und Namen). Ideal mit Gebäuden.
Muss ja keiner wissen, dass das eure Kunden sind :wink:

Wenn ihr eure Adressen über unsere Karte legt, wird es Doppelgänger geben, die dann mitunter weit auseinander liegen. Sieht dann nicht so toll aus.

zu OpenLayers: allererste Wahl - machen die meissten von uns auch.
Es gibt auch andere Lösungen, die relativ neu sind, aber da wird zumindest “unser” Support nicht so gut sein können.

Gruss
Walter

EDIT: Edbert war schneller - aber ihm ist ja auch nicht kurz vom Abschicken die Katze über die Tastatur gelaufen :frowning:

LOL, you made my day
Das sind eben die ‘kleinen Freunden’, wenn man mit Katze(n) zusammen lebt. :wink:

Edbert (EvanE)

Okay, wenn CRM im Webbrowser läuft, heißt das etwa: öffne ein Fenster mit einer Karte (OSM plus verschiedene Datenlayer) und zoome auf die hinterlegten Koordinaten. Dazu müßte CRM “nur” beigebracht werden, die gespeicherten Koordinaten in die URL der OpenLayers-Karte (…?lat=…&lon=…&layers=…) umzusetzen. Das ist vermutlich relativ einfach, wenn man mit MS CRM umgehen kann.

Dann wäre wohl es am sinnvollsten, diese Suche im CRM zu implementieren und nicht noch etwas neues zu erfinden. Also wenn die Frage lautet: “welche Kundenadressen etc. haben wir noch im aktuellen Kartenausschnitt oder 5 km um seinen Mittelpunkt?”, müßte man die Koordinaten des Ausschnitts/Mittelpunkts an CRM zurückgeben und dort eine Funktion laufen lassen, die nach passenden Daten sucht. Auch dieser “Rückweg” (Koordinaten ausliefern) ist mit OpenLayers möglich.

Wenn das Vorhaben damit im wesentlichen richtig beschrieben ist, solltest Du mit OpenLayers für die Webschnittstelle gut bedient sein. Alles andere muß dann in MS CRM gemacht werden; plus noch das Rendering eigener Datenebenen.

Nimm halt nen Laptop zum posten, der funktioniert auch ohne Maus :wink:

SCNR,
ajoessen