Счетчик суммарного объема файлов.

mEdvEd71

Client
Регистрация
03.01.2021
Сообщения
167
Благодарностей
7
Баллы
18
Добрый день. Помогите, пожалуйста с решением задачи. На обменнике установлено ограничение по объему загружаемых файлов в сутки. Файлы скачиваются в один и тот же каталог. Мне нужно получать размер каждого скачанного файла и помещать его в таблицу, к примеру. Потом эти значения суммировать и сравнивать с объемом, разрешенным на ФО. После чего или продолжать заливку или делать остановку, например, на 24 часа. Подскажите, как лучше это реализовать?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 135
Баллы
113
  • Спасибо
Реакции: mEdvEd71

mEdvEd71

Client
Регистрация
03.01.2021
Сообщения
167
Благодарностей
7
Баллы
18
Благодарю, Вас. Код работает, возвращает размер в байтах. Подскажите, пожалуйста, как записывать результат в таблицу и суммировать значения? Или может без таблицы как-то это сделать можно?
 
Последнее редактирование:

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 820
Баллы
113
Благодарю, Вас. Код работает, возвращает размер в байтах. Подскажите, пожалуйста, как записывать результат в таблицу и суммировать значения? Или может без таблицы как-то это сделать можно?
Сохраняйте кол-во скачанных байт в файл. И при каждом новом скачивании обновляйте значение в этом файле.
Арифметические операции можно сделать с помощью экшена JavaScript.
 
  • Спасибо
Реакции: mEdvEd71

mEdvEd71

Client
Регистрация
03.01.2021
Сообщения
167
Благодарностей
7
Баллы
18
Спасибо. А как это прописать в коде?

FileInfo file = new FileInfo(project.Variables["Path"].Value); // Path - переменная пути к файлу
return file.Length; // Возвращает размер в байтах.
 

mEdvEd71

Client
Регистрация
03.01.2021
Сообщения
167
Благодарностей
7
Баллы
18
Мне нужно суммировать объем файлов в течение суток до определенного значения, скажем до 15GB, например, залили 5 файлов по 3GB на ФО и выполнение шаблона должно остановиться на сутки. Долгосрочное хранение общего объема всех скачанных файлов, вообще, не требуется.
 

mEdvEd71

Client
Регистрация
03.01.2021
Сообщения
167
Благодарностей
7
Баллы
18
Подскажите, пожалуйста, как записать размер в переменную?

FileInfo file = new FileInfo(project.Variables["Path"].Value); // Path - переменная пути к файлу
return file.Length; // Возвращает размер в байтах.
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 820
Баллы
113
Мне нужно суммировать объем файлов в течение суток до определенного значения, скажем до 15GB, например, залили 5 файлов по 3GB на ФО и выполнение шаблона должно остановиться на сутки. Долгосрочное хранение общего объема всех скачанных файлов, вообще, не требуется.
Сохраняйте значение в простой текстовый файл. В начале каждого расчётного периода сбрасывайте значение в этом файле в 0.

Подскажите, пожалуйста, как записать размер в переменную?

FileInfo file = new FileInfo(project.Variables["Path"].Value); // Path - переменная пути к файлу
return file.Length; // Возвращает размер в байтах.
В настройках экшена снимите чекбокс "Не возвращать значение" и укажите переменную, в которую запишется результат.
75489
 
  • Спасибо
Реакции: mEdvEd71

mEdvEd71

Client
Регистрация
03.01.2021
Сообщения
167
Благодарностей
7
Баллы
18
Благодарю.
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)