Files

73 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
tags:
- process/goal
type: Leben
---
> [!note]+ Ziel
> Progress:: `$= dv.view('progress', {file: 'Wohnung'})`
> Target:: `$= dv.view('target', {file: 'Wohnung'})`
> Bar:: `$= dv.view('total-progress-bar', {file: 'Wohnung'})`
> Projects:: `$= const projects = dv.page('Wohnung').file.inlinks.where(p => { const mp = dv.page(p.path); return mp.tags?.includes('process/project') && mp.status != 'Archiv'}); if (projects.length > 0) { dv.header(4, projects.length > 1 ? "Projects" : "Project"); dv.list(projects) }`
## Wie sieht der Erfolg aus? Was soll erreicht werden?
-
## Related core values
-
## Projekte, um das Ziel zu erreichen
### Ideen
- [ ] Baumarkt: Paulownia Holz erfragen
- [x] Kann Martin Transporte übernehmen? [start:: 2022-10-25] [scheduled:: 2022-10-27] [completion:: 2023-07-12]
### Offene Projekte
```dataviewjs
const pages = dv.current().file.inlinks.where(p => dv.page(p.path).tags?.includes('process/project'));
let projects = new Set();
for (let projectPage of pages) {
const page = dv.page(projectPage.path);
const tasks = page.file.inlinks.where((p) => {
    const mp = dv.page(p.path);
    return mp.tags?.includes("process/task");
});
const totalProjectTasks = page.file.tasks.length;
const totalProjectTasksCompleted = page.file.tasks.where(t => t.fullyCompleted === true).length;
let totalTasksCompleted = 0;
let totalTasks = 0;
tasks.values.reduce((acc, p) => {
    const mp = dv.page(p.path);
    totalTasksCompleted += mp.file.tasks.where( (t) => t.fullyCompleted === true).length;
    totalTasks += mp.file.tasks.length;
    return mp.file.tasks.length;
}, 0);
const progress = totalProjectTasksCompleted + totalTasksCompleted;
const total = totalProjectTasks + totalTasks;
if (progress != total) {
projects.add([page.file.link, page.status, progress, total]);
}
}
dv.table(["Project", "Status", "Completed", "Tasks"], Array.from(projects));
```
### Projekte
```dataviewjs
const pages = dv.current().file.inlinks.where(p => dv.page(p.path).tags?.includes('process/project'));
dv.table(["Project", "Status", "Completed", "Tasks"], pages.map(p => {
const page = dv.page(p.path);
const tasks = page.file.tasks;
return [
page.file.link,
page.status,
tasks.where(t => t.fullyCompleted === true).length,
tasks.length
]
}));
```