diff --git a/src/app/entity/models/ListInstanceModelAbstract.php b/src/app/entity/models/ListInstanceModelAbstract.php
index b02aa570060d614485b78e5ad21ec60e68b7fd2b..6be940b44331f5a6d58e378c53f39796637750dd 100644
--- a/src/app/entity/models/ListInstanceModelAbstract.php
+++ b/src/app/entity/models/ListInstanceModelAbstract.php
@@ -138,14 +138,15 @@ abstract class ListInstanceModelAbstract
 
     public static function update(array $aArgs)
     {
-        ValidatorModel::notEmpty($aArgs, ['set', 'where', 'data']);
-        ValidatorModel::arrayType($aArgs, ['set', 'where', 'data']);
+        ValidatorModel::notEmpty($aArgs, ['where', 'data']);
+        ValidatorModel::arrayType($aArgs, ['set', 'postSet', 'where', 'data']);
 
         DatabaseModel::update([
-            'table' => 'listinstance',
-            'set'   => $aArgs['set'],
-            'where' => $aArgs['where'],
-            'data'  => $aArgs['data']
+            'table'     => 'listinstance',
+            'set'       => $aArgs['set'],
+            'postSet'   => $aArgs['postSet'],
+            'where'     => $aArgs['where'],
+            'data'      => $aArgs['data']
         ]);
 
         return true;
diff --git a/src/app/resource/controllers/ResController.php b/src/app/resource/controllers/ResController.php
index a37945eb27c2f61a042cb453a823e6bf6d0531ba..7aeea0c588e859c89333442bb194b71267f1a756 100755
--- a/src/app/resource/controllers/ResController.php
+++ b/src/app/resource/controllers/ResController.php
@@ -23,6 +23,7 @@ use Convert\models\AdrModel;
 use Docserver\models\DocserverModel;
 use Docserver\models\DocserverTypeModel;
 use Docserver\models\ResDocserverModel;
+use Entity\models\ListInstanceModel;
 use Group\controllers\GroupController;
 use Group\models\GroupModel;
 use Group\models\ServiceModel;
@@ -368,6 +369,11 @@ class ResController
         $response->write($fileContent);
         $response = $response->withAddedHeader('Content-Disposition', "inline; filename=maarch.{$pathInfo['extension']}");
 
+        ListInstanceModel::update([
+            'postSet'   => ['viewed' => 'viewed + 1'],
+            'where'     => ['item_id = ?', 'item_mode = ?', 'res_id = ?'],
+            'data'      => [$GLOBALS['userId'], 'cc', $aArgs['resId']]
+        ]);
         HistoryController::add([
             'tableName' => 'res_letterbox',
             'recordId'  => $aArgs['resId'],
diff --git a/src/core/models/DatabaseModel.php b/src/core/models/DatabaseModel.php
index c2fc643306548507a851fafc809ea74be6228900..ed14f7a35c6974deef789652c857bd5b28446409 100755
--- a/src/core/models/DatabaseModel.php
+++ b/src/core/models/DatabaseModel.php
@@ -195,9 +195,9 @@ class DatabaseModel
      */
     public static function update(array $args)
     {
-        ValidatorModel::notEmpty($args, ['table', 'set', 'where']);
+        ValidatorModel::notEmpty($args, ['table', 'where']);
         ValidatorModel::stringType($args, ['table']);
-        ValidatorModel::arrayType($args, ['set', 'where']);
+        ValidatorModel::arrayType($args, ['set', 'where', 'postSet']);
 
         if (empty($args['data'])) {
             $args['data'] = [];
@@ -206,12 +206,19 @@ class DatabaseModel
 
         $querySet  = [];
         $dataSet = [];
-        foreach ($args['set'] as $key => $value) {
-            if ($value == 'SYSDATE' || $value == 'CURRENT_TIMESTAMP') {
+        if (!empty($args['set'])) {
+            foreach ($args['set'] as $key => $value) {
+                if ($value == 'SYSDATE' || $value == 'CURRENT_TIMESTAMP') {
+                    $querySet[] = "{$key} = {$value}";
+                } else {
+                    $querySet[] = "{$key} = ?";
+                    $dataSet[] = $value;
+                }
+            }
+        }
+        if (!empty($args['postSet'])) {
+            foreach ($args['postSet'] as $key => $value) {
                 $querySet[] = "{$key} = {$value}";
-            } else {
-                $querySet[] = "{$key} = ?";
-                $dataSet[] = $value;
             }
         }
         $args['data'] = array_merge($dataSet, $args['data']);