diff --git a/src/Model/Friction/Friction.py b/src/Model/Friction/Friction.py
index 45e17cc984f3ae8813317076ff21829b97564a28..1718ced9469ca2b74715f63956ac4edaee58a9d5 100644
--- a/src/Model/Friction/Friction.py
+++ b/src/Model/Friction/Friction.py
@@ -26,11 +26,21 @@ logger = logging.getLogger()
 
 
 class Friction(SQLSubModel):
-    def __init__(self, name: str = "", status=None):
+    _id_cnt = 0
+
+    def __init__(self, id: int = -1, name: str = "",
+                 status=None):
         super(Friction, self).__init__()
 
         self._status = status
 
+        if id == -1:
+            self.id = Friction._id_cnt
+        else:
+            self.id = id
+
+        Friction._id_cnt = max(self.id, Friction._id_cnt+1)
+
         self._name = name
         self._edge = None
         self._begin_kp = 0.0
@@ -42,7 +52,7 @@ class Friction(SQLSubModel):
     def _db_create(cls, execute):
         execute("""
           CREATE TABLE friction(
-            id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+            id INTEGER NOT NULL PRIMARY KEY,
             ind INTEGER NOT NULL,
             begin_kp REAL NOT NULL,
             end_kp REAL NOT NULL,
@@ -70,28 +80,29 @@ class Friction(SQLSubModel):
         stricklers = data["stricklers"].stricklers
 
         table = execute(
-            "SELECT ind, begin_kp, end_kp, begin_strickler, end_strickler " +
+            "SELECT id, ind, begin_kp, end_kp, begin_strickler, end_strickler " +
             f"FROM friction WHERE reach = {reach.id}"
         )
 
         for row in table:
-            ind = row[0]
+            id = row[0]
+            ind = row[1]
             # Get stricklers
-            if int(row[3]) == -1:
+            if int(row[4]) == -1:
                 bs = None
             else:
-                bs = next(filter(lambda s: s.id == row[3], stricklers))
+                bs = next(filter(lambda s: s.id == row[4], stricklers))
 
-            if int(row[4]) == -1:
+            if int(row[5]) == -1:
                 es = None
             else:
-                es = next(filter(lambda s: s.id == row[4], stricklers))
+                es = next(filter(lambda s: s.id == row[5], stricklers))
 
             # Create friction
             sec = cls(status=status)
             sec.edge = reach
-            sec.begin_kp = row[1]
-            sec.end_kp = row[2]
+            sec.begin_kp = row[2]
+            sec.end_kp = row[3]
             sec.begin_strickler = bs
             sec.end_strickler = es
 
@@ -112,10 +123,11 @@ class Friction(SQLSubModel):
 
         execute(
             "INSERT INTO " +
-            "friction(ind, begin_kp, end_kp, " +
+            "friction(id, ind, begin_kp, end_kp, " +
             "reach, begin_strickler, end_strickler) " +
             "VALUES (" +
-            f"{ind}, {self._begin_kp}, {self._end_kp}, " +
+            f"{self.id}, {ind}, " +
+            f"{self._begin_kp}, {self._end_kp}, " +
             f"{self._edge.id}, " +
             f"{b_s_id}, {e_s_id}" +
             ")"
diff --git a/src/Model/Stricklers/Stricklers.py b/src/Model/Stricklers/Stricklers.py
index 10b8aaf3b3629832e9e125a547146cb1b1065f75..285373e204dd893d40e11aba86fc69f05501f3fb 100644
--- a/src/Model/Stricklers/Stricklers.py
+++ b/src/Model/Stricklers/Stricklers.py
@@ -120,6 +120,8 @@ class Stricklers(SQLSubModel):
 
     @property
     def name(self):
+        if self._name == "":
+            return f"K{self.id + 1}"
         return self._name
 
     @name.setter