|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Есть необходимость вести планирование задач, подобно тому как это реализовано в MS Project. Т.е. имеем Задачу 1, которая начинается 01.01.2019 и выполняется 10 дней. После нее имеем Задачу 2, которая начинается после окончания Задачи 1 и длится 5 дней. Потом появляется Задача 3, которая должна быть сделана после Задачи 1 и до Задачи 2. Соответственно, начало Задачи 2 должно сдвинутся на длительность Задачи 3, а сама Задача 3 должна принять датой начала дату окончания Задачи 1. В MS Project это происходит автоматически, путем вставки Задачи 3 между задачами 1 и 2. В Экселе это тоже легко делается, путем ссылок на другие ячейки. Как это автоматизировать в MSA? Как ссылаться на другие записи, чтобы учитывать все предыдущие по времени и сдвигать все последующие? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 23:08 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
По значению первичного ключа. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 23:26 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Predeclared, Т.е. они по порядку должны идти? 1,2,3...? В моем примере получается 1,3,2. Уже не по порядку. Или вы о другом? Мне бы пример БД увидеть. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 23:43 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Так, например: ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2018, 23:55 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
У Задачи 1 подчиненные 2 и 3 У Задачи 3 - 2 и т.д.? Правильно мыслю? Пока дальше ступор. Поясните, пожалуйста, более развернуто. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 00:56 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Попробую еще раз описать свой пример. Возможно, вы о вложенности одной задачи в другую говорите. А я не о том. Есть задачи 1-5. Дата начала Задачи 1 задается вручную. Длительность всех задач - тоже вручную. Дата окончания рассчитывается автоматически по формуле (дата начала + длительность). Дата начала всех последующих задач тоже рассчитывается автоматически (это дата окончания предыдущей задачи, т.е. из другой записи). Никаких подзадач не будет. Просто одна за другой (1,2,3,4,5...) Далее, например, я решаю, что Задача 4 и 2 должны поменяться местами. В Экселе, например, достаточно физически поменять эти строки местами и все остальное пересчитается автоматом. Т.е. порядковый номер можно даже не указывать - само положение в списке указывает каждой строке ее порядковый номер. В Аксессе, насколько я понял, нельзя использовать порядковый номер записи в таблице и ссылаться на него. Или можно? Если нельзя, то получается, что надо отдельно присваивать порядковый номер (ключ) каждой записи. Так? А затем в каждой последующей Задаче я должен сослаться на порядковый номер предыдущей? Если я меняю Задачи 4 и 2 местами, то мне надо в Задаче 2 поменять предшественника на 3, в Задаче 3 - на 4, 4 - на 1, 5 - на 2? Только это автоматизированно должно происходить. Т.е. нужен какой-то скрипт. А еще лучше, если это будет наглядно графически происходить. Чтобы все задачи выгружались в отдельное окно списком по порядку и, перетаскивая мышкой, их можно было бы менять местами, как в Экселе. Правильное направление? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 12:31 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Мишая, Мне, кстати, когда то посоветовали поискать файл данных проджекта в его папках. Как будто бы для бд там используется как раз бд access, просто под другим расширением. Зайти в проект, что нибудь изменить/добавить и потом поискать по дате изменения файла. Сам не пробовал, пока этот совет пришел, задача отпала. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2018, 22:09 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Игортан, Спасибо, попробую порыть в этом направлении. Насколько помню, у Проджекта файл mpp, в нем и должно все храниться. Вряд ли БД будет в отдельном файле. Ведь чтоб скопировать проект на другой комп, достаточно одного файла проекта. Проджекта у меня нет. Дистрибутива тоже. Зашел на сайт MS скачать пробную версию и так и не нашел. Нажал "Попробовать пробную версию", зарегистрировался, а дальше блуждал минут 15 по бесконечным страницам. Пока оставил. Может есть у кого ссылка? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 13:12 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
Predeclared, Ув. Predeclared, вы мне хоть намекните, я в правильном направлении двигаюсь или в принципе не понял сути вашего примера. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 13:22 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
МишаяВ Аксессе, насколько я понял, нельзя использовать порядковый номер записи в таблице и ссылаться на него. Или можно?Нельзя. По весьма прозаической причине - его не существует. Это средство отображения тебе его добавляет, для наглядности типа. По сути тебе необходим связный список, для которого определена операция перемещения узла. Более расширенной версией толкования такой структуры является дерево, с ограничением, что узел не может иметь более одного дочернего узла. Возможны различные варианты реализации требуемой функции. Мне кажется наиболее универсальным вариант формирования двух процедур. Первая выполняет разделение связного списка на два - из имеющегося списка выделяется указанный фрагмент, а оставшиеся два фрагмента "сшиваются". Вторая, наоборот, внедряет один связный список в другой в указанной точке. Соответственно операция перемещения состоит из двух этапов - вырезка из исходной точки и вставка в конечную. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 13:31 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
AkinaМне кажется наиболее универсальным вариант формирования двух процедур. Первая выполняет разделение связного списка на два - из имеющегося списка выделяется указанный фрагмент, а оставшиеся два фрагмента "сшиваются". Вторая, наоборот, внедряет один связный список в другой в указанной точке. Соответственно операция перемещения состоит из двух этапов - вырезка из исходной точки и вставка в конечную. Да, спасибо, по логике понятно твое объяснение. Это как копипаст. Вот в коде я не силен. А как бы эти процедуры подглядеть?) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 14:08 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
МишаяВот в коде я не силен.И что теперь? ручки сложим и будем сидеть да ждать? Начинайте делать... а вот как возникнут КОНКРЕТНЫЕ вопросы по вполне определённым участкам кода - так и милости просим. Авось подскажем. Мишаякак бы эти процедуры подглядеть?Найдите где - подскажем как... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 15:21 |
|
Структура проекта, как в MS Project
|
|||
---|---|---|---|
#18+
МишаяУ Задачи 1 подчиненные 2 и 3 У Задачи 3 - 2 и т.д.? Правильно мыслю?... Нет. Изначально: Задача 2 следует за задачей 1. Это описано значением поля ParentTaskID записи Задача 2 значением ключевого поля TaskID Задачи 1. (При этом значение поля ParentTaskID записи Задача 1 Is Null, так как она НЕ "привязана" в последовательности к другой задаче.) Задача 3 следует за задачей 2, это описано значением поля ParentTaskID записи Задача 3 значением ключевого поля TaskID Задачи 2. и т.д. Получается цепочка очередности, где каждая последующая задача имеет в своем описание значение ключевого поля предыдущей задачи. При необходимости изменения очередности, с шагом в +1(-1) задачу: Нужно просто поменять значения поля ParentTaskID для двух соседних записей. В транзакции, конечно. При таком описании "цепочек" задач, имеется возможность параллельно вести несколько независимых цепочек. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2018, 19:14 |
|
|
start [/forum/topic.php?fid=45&msg=39715194&tid=1611120]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
125ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 224ms |
0 / 0 |