|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Здравствуйте! Я тут немного запутался. Прошу подсказать. Есть проблема. Имеются несколько excel-их файлов со сложными таблицами. Где Файл B формируется из файла A, Файл С формируется из файла A, а файл D формируется из файла B. Файлы между собой синхронизирутся либо кропотливой ручной работы, либо макросами с помощью сопоставления. Но если меняется структура, то нужно менять во всех файлах. И нужно делать осторожно и не поломать формулы. Это очень геморно. А иногда нужно из этих файлов формировать файлы E, F и G. Поэтому считаю что нужно в одном месте все вводить и исходя из этого формировать нужные excel-ие файлы. Возможное решение. В Access есть заданные таблицы "Элементы" и "Подэлементы". Из этих двух таблиц формируется Таблица1 с нужной структурой без данных по месяцам. Дальше Таблица1 выводится на специальной форме для просмотра и редактирования. Должна выводиться как в Excel-ом файле с промежуточными строками. То есть создали пустую таблицу с нужной структурой. Далее нужно вручную вводить данные в тех строках, у которых нету потомков (в excel-ом файле синий курсив). У тех строк, которые есть потомки прошиты формулы. Понятно что в Access-таблице1 в промежуточных строках нету формул как прописано в Excel-ом файле. Поэтому важно учесть следующее: 1. У каких то Элементов присутствуют Подэлементы, а некоторых - отсутствуют. См. Excel-ий файл. 2. На форме должна быть кнопка "Сохранить". После того как ввели данные в строки, у которых нету потомок, нажимается на кнопку и сохранятся таблица. 3. Позже эта таблицу будет корректироваться. Открывается на этой специальной форме. Непосредственные корректировки. Если были корректировки в некоторых ячейках - закрашивается. 4. Возможно появится необходимость скорректировать структуру. То есть данные внесли, но нужно добавить строку без потерей введенных данных и для дальнейшей корректировки. 5. На следующий год формируестя подобная таблица, но возможно немного с измененной структурой, например в "Элементах" изменилась иерархия или в "Подэлементах" добавился еще подэлемент. Таблица за предыдущий год сохраняется в общей таблице. Пытаюсь сообразить как реализовать. Похоже тут я не правильно начал делать. Прикладываю Access-ий файл. Чую, что надо по другому делать. Подскажите, как тут нужно двигаться? Может кто то имел подобный опыт. Каким образом должны редактироваться данные? Возможно нужны какие то промежуточные таблицы. В Access то реально реализовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 20:09 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 20:11 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
ferzmikk4. Возможно появится необходимость скорректировать структуру. То есть данные внесли, но нужно добавить строку без потерей введенных данных и для дальнейшей корректировки. ваша проблема в том, что вы дали уровням безликие имена (элемент/под'элемент) вам было бы легче понять задачу при смысловых именах например заводские расходыстатьяполе сортировки электричество10 вода30 транспорт20....водагорячая10холодная20дистиллированная21вода холодная техническая40питьевая30 итоги накапливаются по иерархии, а печатаются по сортировке(всегда можно добавить строку в середину или переставить) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 21:34 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
EAV(по желанию) + иерархический справочник(и) + самописная отчетная система вывода в Excel, позволяющая на базе ранее описанных нескольких шаблонов строить множество отчетов, типа: 1. Список шаблонов и построенных на их основе отчетов (за крестиками): ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 22:17 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
2. Данные отчета: ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 22:18 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
3. Данные строки (тип=данные) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 22:19 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
4. Данные строки (тип=формула) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 22:19 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
И в итоге все выплевывается в книгу Excel по заданным шаблоном алгоритмам, форматам и т.п. с установленными отчетом критериями/настройками. Как-то так. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 22:21 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
ПЕНСИОНЕРКАferzmikk4. Возможно появится необходимость скорректировать структуру. То есть данные внесли, но нужно добавить строку без потерей введенных данных и для дальнейшей корректировки.ваша проблема в том, что вы дали уровням безликие имена (элемент/под'элемент) вам было бы легче понять задачу при смысловых именахТут логика такая, что у некоторых элементов есть подэлементы. И эти подэлементы повторяются в некоторых других элементах. См. скриншот. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 07:30 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
ferzmikkТут логика такая, что у некоторых элементов есть подэлементы. И эти подэлементы повторяются в некоторых других элементах. См. скриншот. подэлемент 6 из 1.1 и 1.2 --это разные понятия, хотя их имя может совпадать хотя у меня были стат-формы, когда рядовые строки входили в разные итоговые строки например подэлемент 6 из всех элементов суммировался в конце отчета в строку --итого по элементу 6 ............... --в процентах к строке ВСЕГО ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 07:48 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Predeclared, По скриншотам примерно понятно. Но не понятно как работают Данные строки (тип=данные) и Данные строки (тип=формула), то есть как вытягивают нужные данные. Есть ли ссылка или похожий пример, чтобы понять логику и как работает, какова структура данных? ferzmikk4. Возможно появится необходимость скорректировать структуру. То есть данные внесли, но нужно добавить строку без потерей введенных данных и для дальнейшей корректировки.И важно учесть такой логический нюанс ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 07:48 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Похоже надо делать так. Имеем справочные таблицы "Элементы" и "Подэлементы". Создается промежуточная справочная таблица, где указывается Год, Элементы и Подэлементы. В этой промежуточной таблице присутствует нужная структура элементов с сохраненными ссылками на определенный год. Следует учесть, что в разных годах какие то Элементы и/или Подэлементы присутствуют или отсутствуют. Если что то не учитываю или не правильно делаю, то поправьте меня. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 08:02 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
ПЕНСИОНЕРКАferzmikkТут логика такая, что у некоторых элементов есть подэлементы. И эти подэлементы повторяются в некоторых других элементах. См. скриншот. подэлемент 6 из 1.1 и 1.2 --это разные понятия, хотя их имя может совпадатьТогда какая структура данных должна быть в данном случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 08:04 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Подскажите, какие должны быть таблицы в Access для данной задачи? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 20:55 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
В простейшем случае, достаточно этого: ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 21:31 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
PredeclaredВ простейшем случае, достаточно этого:Сначала создается Справочник_Элементы и Справочник_Подэлементы. Потом Документ_Элементы и Документ_Подэлементы, которые задаются для определенных годов. И далее Документ_ЭлементыИПодэлементы, где для для Элементов, у которых должны быть потомки, привязываются Подэлементы для определенных годов. На скриншоте указана схема данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 22:23 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 22:24 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Кажется в таблице Документ_ЭлементыИПодэлементы связи неправильно указал ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 22:26 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Для хранения исходных данных вашей задачи достаточно того, что я выше изобразил. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2017, 23:38 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
PredeclaredДля хранения исходных данных вашей задачи достаточно того, что я выше изобразил.Насколько я правильно понял, в одной таблице как справочник создаем элементы (включая подэлементы), а во второй как документ указываем год, выбираем элементы (подэлементы) и ставим значения по месяцам. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2017, 17:58 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
ferzmikk..., в одной таблице как справочник создаем элементы (включая подэлементы), ... Да. ferzmikk...указываем год, выбираем элементы (подэлементы) и ставим значения по месяцам. Нет. Значения вводим либо на конкретные даты расходов, если нужна такая детализация, либо агрегированные значения за месяц на последнюю дату месяца. (я пользую одновременно оба варианта, потому как для части расходов важны конкретные даты) Год и месяц от даты в отчетах легко получаются штатными инструментами из значений дат расходов. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2017, 18:09 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Predeclaredferzmikk...указываем год, выбираем элементы (подэлементы) и ставим значения по месяцам. Нет. Значения вводим либо на конкретные даты расходов, если нужна такая детализация, либо агрегированные значения за месяц на последнюю дату месяца. (я пользую одновременно оба варианта, потому как для части расходов важны конкретные даты) Год и месяц от даты в отчетах легко получаются штатными инструментами из значений дат расходов.По датам не нужно, по месяцам. ГодМесяцЭлемент (Подэлемент)Значение2017Январь Элемент 1 102017Январь Элемент 1.1 20............2017Февраль Элемент 1 30 Так? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2017, 18:17 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Predeclared... Год и месяц от даты в отчетах легко получаются штатными инструментами из значений дат расходов. Что непонятного в этом предложении? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2017, 18:26 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
Теперь если выводить таблицу на специальную форму, ты выводим на обычную табличную форму, не TreeView. Потомки имеют отступы для удобства восприятия иерархической таблицы. Если есть родительские строки, то они не доступны для ввода. Если введена сумма на конечной потомке, то меняется цвет ячейки и идет пересчет в родительских строках как зависимые строки. Для вывода и корректировок данных выводим на объект типа подчиненная форма? Как задать формулы для зависимых строк и каким образом будут образовыватьcя формулы на форме? Для образования формул для зависимых строк, то достаточно ориентироваться на родителя? Есть ли подобная ссылка или пример для изучения? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2017, 19:04 |
|
Запутался над решением проблемы по автоматизации
|
|||
---|---|---|---|
#18+
При работе с базами данных, в том числе и в Access, нужно выкинуть из головы все плоские Excel-подобные приемы работы. Необходимо четко разделять методы: хранения данных, ввода данных, извлечения данных и отображения данных в отчетах. Вы же все время пытаетесь смешать в единое Excel - подобное решение и хранение, и ввод, и вывод. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2017, 19:26 |
|
|
start [/forum/topic.php?fid=45&fpage=67&tid=1612085]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
others: | 25ms |
total: | 176ms |
0 / 0 |