Spezifikation
Название: AvtoCalc
Требуется скрипт на MQL4, либо ином языке программирования, но с графической обалочкой, который:
- Считывает последовательно файлы из указанной директории (возможно ограничение в рамках песочницы)
- Считывает данные о настройках из отдельного файла- файл сценарию
- Производит обработку данных согласно сценарию и записывает результат в отдельный файл
Файл для чтения - CSV , структура разделена ";", разрядность "," - файл представляется в виде
таблицы, первая строка является шапкой этой таблицы.
Структура файла сценария - каждая строка файла - отдельный сценарий на обработку данных, состоящий
из команды фильтрации, перечисления данных подлежащих калькуляции с коммандами для калькуляции.
Сценарии выполняются последовательно после обработки всех файлов в директории.
Команда для фильтрации
Filter (Stroka, Stolbec, Metod)
Stroka - номер строки (с которой начинаются данные для фильтрации)
Stolbec - номер столбца
Metod - метод фильтрации:
0 - не фильтровать
1 - от большего значения к меньшему
-1 - от меньшего значения к большему
2 - по очередности появления нового значения в столбце
Фильтров может быть установлено больше одного, фильтрация данных происходит последовательно в
обратном порядке относительно установленных фильтров (т.е. сначала выбирается первое значения
фильтра 1, потом все значения фильтра 2). Каждый результат фильтрации подлежит калькуляции, при этом
если на один столбец приходится более одной калькуляции, то в итоговом файле создается
дополнительный стобец.
Комманды для калькуляции:
Calc(Stroka, Stolbec, Metod)
Stroka - указывается строка нахождение шапки таблицы
Stolbec - указывается столбец нахождение шапки таблицы
Metod:
Max - максимальное значение
Min - минимальное значение
Summ - сумма всех значений
AVR - среднее значение
Структура итогового файла:
Шапка:
НАЗВАНИЕ ОБРАБОТАННОГО ФАЙЛА,
НАЗВАНИЕ ОТФИЛЬТРОВАННЫХ ДАННЫХ 1,
ЗНАЧЕНИЕ ФИЛЬТРА 1,
НАЗВАНИЕ ОТФИЛЬТРОВАННЫХ ДАННЫХ N,
ЗНАЧЕНИЕ ФИЛЬТРА N,
РЕЗУЛЬТАТ КАЛЬКУЛЯЦИИ (Metod) 1,
РЕЗУЛЬТАТ КАЛЬКУЛЯЦИИ (Metod) N.
Между обработанными файлами делается разрыв "-----------".
Пример смотрите в файле Primer_01.xlsx
Название итогового файла - добавление к первоначальному файлу "_Calc_001", где 001 порядковый номер
калькуляции в директории.
Bewerbungen
1
Bewertung
Projekte
106
52%
Schlichtung
17
12%
/
65%
Frist nicht eingehalten
25
24%
Frei
2
Bewertung
Projekte
4
25%
Schlichtung
1
0%
/
100%
Frist nicht eingehalten
1
25%
Frei
3
Bewertung
Projekte
395
28%
Schlichtung
155
20%
/
52%
Frist nicht eingehalten
112
28%
Frei
4
Bewertung
Projekte
19
11%
Schlichtung
21
5%
/
86%
Frist nicht eingehalten
3
16%
Arbeitet
5
Bewertung
Projekte
1
0%
Schlichtung
1
0%
/
100%
Frist nicht eingehalten
0
Frei
6
Bewertung
Projekte
928
46%
Schlichtung
31
39%
/
29%
Frist nicht eingehalten
93
10%
Arbeitet
Projektdetails
Budget
30 USD
Für die Entwickler
27
- 27
USD
Ausführungsfristen
14 Tag(e)