Вопрос по организации хранения переменных для расчетов

Автор calc4fem, 29 июня 2016, 17:08

0 Пользователи и 1 гость просматривают эту тему.

calc4fem

Электронные таблицы используются в организации для выполнения несложных расчетов. Человек задает исходные параметры и получает результат = окей или не окей. Таблиц и проверок достаточно много, и при их использовании возникают определенные сложности. Например работник запросто может забыть посчитать что то или обновить переменные. Второй вариант - не лучше, когда параметры меняются и расчетов много, потом сложно понять какой актуальный.
Конечно можно придумать правила (и они есть) - типа переименовывать файлы и двигать их в разные папки, но практика показывает, что такие правила не выполняются.
Вот есть идея организовать расчеты таким образом (на сервере, с использованием интерфейса электронных таблиц). А именно человек открывает файл, указывает код проекта и вносит значения переменных. Либо меняет их (либо вводит дополнительные переменные). Переменные уходят в некую единую базу данных (которую желательно тоже сделать просто - типа текстового файла, благо что переменных не так много и они однотипные). После чего возвращается результат для всего массива параметров - окей или нет. А при желании можно посмотреть что и почему.
В чем состоит вопрос - как проще эти переменные хранить и к ним обращаться.
1. Хранить в текстовых файлах и на бэйсике написать функцию которая парсит эти текстовые файлы
2. Хранить в электронных таблицах и опять же с помощью какой то функции (типа VLOOKUP) обращаться к этим переменным
3. Разобраться с базами данных и хранить переменные в них.

kompilainenn

Цитата: calc4fem от 29 июня 2016, 15:083. Разобраться с базами данных и хранить переменные в них.
вот это для сервера самое нормальное решение
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут

Strannik61


calc4fem

А вероятность обращения сразу нескольких человек одновременно к базе очень мала в данном случае.

economist

Решал подобную задачу - "незаметный", то есть никак не напрягающий сбор некоторых важных значений их множества XLS-файлов сотен пользователей в одно место.

Оказалось, что TXT-файл с разделителем Tab в режиме Append прекрасно справляется с десятком одновременных команд на запись по сети, включающей и оптику, и WiFi, и даже коаксиалку 10Мbit/s.

Наибольшую сложность представлял сам способ сбора. Пришли к такому выводу: при закрытии XLS файла с сохранением - каждая одиночная именованная ячейка с именем вида "_Имя" - должна экспортироваться в TXT.
Файл это лежит на сервере и выглядит примерно так:

2015.03 _Электроэнергия            123456 ivanov S:\Расчеты.xls
2015.03 _Произведено_панелей    50000 petrov D:\Users\Documents\Книга1.xlsx
...

Первый столбец - имя листа, обозначает еще и период. При повторной выгрузке - старые данные затираются (история не нужна). Так как размер файла с "самыми полезными данными" стал около 50 кбайт - его скрипт подсасывать в SQLite базу данных, прилинкованную к ODB и через F4 всё что нужно попадает в OpenOffice и LibreOffice.

Конечно, можно класть данные сразу в базу, причем серверную FireBird или PostgreSQL. Но это из пушки по воробьям...




 
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...