Index: trunk/BNC/rinex/rnxnavfile.cpp
===================================================================
--- trunk/BNC/rinex/rnxnavfile.cpp	(revision 4218)
+++ trunk/BNC/rinex/rnxnavfile.cpp	(revision 4219)
@@ -239,7 +239,23 @@
 // 
 ////////////////////////////////////////////////////////////////////////////
-void t_rnxNavFile::writeHeader() {
+void t_rnxNavFile::writeHeader(const QMap<QString, QString>* txtMap) {
 
   bncApp* app = (bncApp*) qApp;
+
+  QString     runBy = app->userName();
+  QStringList comments;
+
+  if (txtMap) {
+    QMapIterator<QString, QString> it(*txtMap);
+    while (it.hasNext()) {
+      it.next();
+      if      (it.key() == "RUN BY") {
+        runBy = it.value();
+      }
+      else if (it.key() == "COMMENT") {
+        comments = it.value().split("\\n", QString::SkipEmptyParts);
+      }
+    }
+  }
 
   if (version() < 3.0) {
@@ -258,6 +274,6 @@
   *_stream << QString("%1%2%3")
     .arg(app->pgmName(), -20)
-    .arg(app->userName(), -20)
-    .arg(currentDateAndTimeGPS().date().toString("dd-MMM-yyyy"), -20)
+    .arg(runBy.trimmed().left(20), -20)
+    .arg(QDateTime::currentDateTime().toUTC().toString("yyyyMMdd hhmmss UTC"), -20)
     .leftJustified(60)
            << "PGM / RUN BY / DATE\n";
Index: trunk/BNC/rinex/rnxnavfile.h
===================================================================
--- trunk/BNC/rinex/rnxnavfile.h	(revision 4218)
+++ trunk/BNC/rinex/rnxnavfile.h	(revision 4219)
@@ -58,5 +58,5 @@
   void   setVersion(double version) {_header._version = version;}
   bool   glonass() const {return _header._glonass;}
-  void   writeHeader();
+  void   writeHeader(const QMap<QString, QString>* txtMap = 0);
   void   writeEph(const t_eph* eph);
 
