Index: trunk/BNC/src/bncrinex.cpp
===================================================================
--- trunk/BNC/src/bncrinex.cpp	(revision 8642)
+++ trunk/BNC/src/bncrinex.cpp	(revision 8644)
@@ -177,5 +177,5 @@
       mtp = _mountPoint.path().mid(1,4).toLower() + ".skl";
     }
-    QUrl url(sklDir + "/" + mtp);    
+    QUrl url(sklDir + "/" + mtp);
     if (url.port() == -1) {
       if (sklDir.contains("https", Qt::CaseInsensitive)) {
@@ -335,6 +335,12 @@
 
   int statIDlength = _statID.size() -1;
-  QString ID4 = _statID.left(4);
-  ID4 = ID4.toUpper();
+  QString ID;
+  if (_rnxV3) {
+    ID = _statID.left(9);
+  }
+  else {
+    ID = _statID.left(4);
+  }
+  ID = ID.toUpper();
 
   // Check name conflict
@@ -357,7 +363,7 @@
   if (!sklExt.isEmpty()) {
     if (sklExt.indexOf("skl",0, Qt::CaseSensitive) != -1)  {
-      sklPre = ID4.toLower();
+      sklPre = ID.toLower();
     } else if (sklExt.indexOf("SKL",0, Qt::CaseSensitive) != -1) {
-      sklPre = ID4.toUpper();
+      sklPre = ID;
     }
     _sklName = path + sklPre + distStr + "." + sklExt;
@@ -378,5 +384,5 @@
     }
 
-    path += ID4 +
+    path += ID.left(4) +
             QString("%1").arg(monNum, 1, 10) +
             QString("%1").arg(recNum, 1, 10) +
@@ -392,5 +398,5 @@
   }
   else {
-    path += ID4 +
+    path += ID.left(4) +
             QString("%1").arg(datTim.date().dayOfYear(), 3, 10, QChar('0')) +
             hlpStr + distStr + datTim.toString(".yyO");
