Skip to content

Editering

Jacob Wodzyński edited this page Aug 22, 2023 · 6 revisions

Verktyget för editering (Edit) används för att redigera och skapa objekt i fördefinierade redigeringstjänster. Via redigeringstjänsten sparas objekten ner till en databas. Verktyget låter användaren på ett enkelt sätt skapa och uppdatera information i olika kartlager.

Användargränssnitt

Användaren väljer först vilket lager som ska redigeras längst ner i fönstret. Därefter kan man välja att skapa nya objekt eller redigera befintliga.

Skapa nytt objekt

Vid skapande av nya objekt kan man bara välja att skapa de geometrityper som administratören har satt upp som möjliga för redigeringstjänsten, de andra geometrityperna inaktiveras. Vid linje- eller polygonritning så ritas nya noder ut med enkelklick och objektet avslutas med dubbelklick. När man lagt till ett nytt objekt får man välja att mata in attributvärden i de attribut som finns i redigeringstjänsten. Inmatningstyperna (flerval, lista, mm.) ställs in av administratören som sätter upp redigeringstjänsten.

Ändra objekt

För att ändra objekt väljs verktyget Ändra och därefter trycker man på objektet som ska ändras. Det går då att dra i befintliga noder samt skapa nya noder genom att dra i linjen mellan befintliga noder. De attributvärden som objektet har går att redigera i fönstret.

Flytta objekt

För att flytta hela objekt används verktyget Flytta. Verktyget väljs och därefter klickar man på ett objekt och håller in musknappen för att flytta hela objektet.

När redigeringarna är klara sparas ändringar ner till databas med Spara.

1 2

Administration

I administrationsgränssnittet sätts nya redigeringslager upp i fliken Redigeringstjänster. För att sätta upp ett redigeringslager krävs att man har tillgång till en kartserver (ex. Geoserver eller ArcGIS Server) som har en eller flera WFS-T-tjänster uppsatta.

Det är viktigt att man ser till att korrekta skrivbehörigheter tilldelats för den tabell och sekvens (gäller t ex PostGIS-databaser) som 'WFS-T'-tjänsten bygger på. Annars kommer inte verktyget Editering att fungera. (Ett vanligt fel kan vara att det bara blir "tomt" i menyn vid användning, vilket t ex kan bero på att skrivbehörigheterna är felaktiga i databasen).

HAJK letar själv upp kolumnnamnet på geometrikolumnen om det finns data sen tidigare i databastabellen. Finns det inte så antas det att kolumnen heter geometry.

Här nedan förklaras de plugin-specifika inställningar som ställs in i HAJK:s administrationsgränsnitt.

Visningsnamn

Namn på lagret som kommer att visas för användaren när redigeringslager ska väljas.

URL

Länk till den server och wfs-service som ska användas. Exempel med Geoserver: https://domannamn.se/geoserver/wfs. HAJK lägger sedan automatiskt till ?service=WFS&request=GetCapabilities för att hämta alla tillgängliga tjänster. För att få upp listan med tillgängliga lager och fortsätta konfigurationen så trycker man på knappen Ladda lager.

Namespace Uri

Som Namespace URI ska du ange värdet på fältet Namnutrymme URI (på engelska heter det kort och gott Namespace URI) som finns definierat i GeoServers Arbetsyta som lagret tillhör.

För att få fram värdet antar vi att vi har ett lager som i GeoServer heter geoservertest:jointConsultationRanagaard. Som bekant är delen innan kolon (":") arbetsytans namn. I exemplet heter alltså arbetsytan geoservertest.

För att få fram Namespace URI öppnar vi arbetsytan geoservertest och tittar i värdet i det andra fältet som står direkt under arbetsytans namn. Där finns det en URI (ser ut som en webbadress). Det är det värdet vi använder i Hajks administration.

Projektion

Projektion på data i det lager man ska använda för redigering. Väljs i lista.

Lagerlista

Efter att man tryckt på Ladda lager visas här alla lager som servern erbjuder. Det går endast att välja ett lager som ska användas per redigeringstjänst. Valt lager visas ovanför när man tryckt i knappen framför lagernamnet samt så hämtas alla attribut och visas under Redigerbara fält.

Redigerbara fält

När man valt ett lager fylls alla attribut/fält i här. För att ett fält ska kunna fyllas i samt redigeras av användaren kryssas Redigerbar i. Kryssas Dold i så kommer fältet inte att dyka upp i användargränssnittet alls. Om datatypen på fältet är string kommer man att kunna välja olika typer av inmatningsmetoder i kolumnen Typ. Tillgängliga metoder är Fritext, Datum, Lista (enkelval i rullista), Flerval (kryssboxar) och Url. För typerna Lista och Flerval behöver fördefinierade val läggas till i kolumnen Listvärden. Detta görs genom att skriva ett värde och trycka Enter, fortsätt sen att fylla på valfritt antal värden på samma sätt. Ett standardvärde som är ifyllt/valt från början går även att fylla i under Standardvärde.

Notera att i äldre versioner av HAJK (3.6 och bakåt) finns möjlighet att bocka i att geometrin (geom) kan vara redigerbar. Gör INTE detta (för då fungerar inte verktyget). Den ska m a o inte vara ibockad, trots att "logiken kanske säger så". I bilden nedan ser man också att geometrin ej är ibockad som redigerbar, vilket är korrekt här. I de nyare versionerna av HAJK (3.7 och framåt) är geometrifältet inte med som ett alternativ bland redigerbara fält, och därmed är problemet borta.

3

Geometrityper

Vid geometrityper ställer man in vilka geometrier som ska vara möjliga att rita in. De geometrityper man tillåter måste även databastabellen man skriver mot tillåta.

Förenklat editeringsläge

Sedan Hajk 3.13 finns möjligheten att förenkla användarupplevelsen och endast tillåta så kallat "enkelt redigeringsläge". Se issue #1377 för beskrivning av funktionaliteten.

Nedan följer dokumentation av nödvändiga inställningar som måste göras direkt i JSON-filerna.

De två nycklar som tillkommer är:

  • simpleEditWorkflow
  • correspondingWMSLayerId
// Example of how to setup the Edit plugin to use the new simple workflow for a certain source
{
      "type": "edit",
      "index": 0,
      "options": {
        "target": "toolbar",
        "instruction": "",
        "activeServices": [
          {
            "id": "eb113d24-9704-9ac1-49d7-1a1244e1e23e", // corresponds to the ID in layers.json->wfstlayers
            "visibleForGroups": [],
            "simpleEditWorkflow": true, // This enables the simple workflow
            "correspondingWMSLayerId": "ulh1ou" // Corresponds to the WMS layer that will
             // be enabled automatically once user enables the edit sources. The ID is the same as in 
             // layers.json->wmslayers
          }
        ],
        "visibleAtStart": false,
        "visibleForGroups": []
      }
    }