-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
awork -> Google Sheets -> task start date #8
Comments
Moin Martin, ich habe mir deine Frage einmal angeschaut. In deinem Fall würde ich dir empfehlen, zu jedem Projekt die frühste Aufgabe über die API zu holen. Bei der Aufgabe ist das Feld Zuerst erstellst du eine neue Tabellenspalte in Zeile 62: sheet.getRange(startRow, 15).setValue(['StartOn']) und dann hinterlegst du in Zeile 77 folgenden Code um für das Projekt die frühste Aufgabe zu bekommen: sheet.getRange(currentRow, 15).setValue([getEarliestTaskForProject(project.id, options)]) und fügst die folgende Funktion am Ende des Editors ein: function getEarliestTaskForProject(projectId, options) {
var filter = "?filterby=startOn ne null&orderby=startOn"
var response = UrlFetchApp.fetch("https://api.awork.io/api/v1/projects/" + projectId + "/projecttasks" + filter, options);
var json = response.getContentText();
var data = JSON.parse(json);
if (data.length > 0 && data[0].startOn != null)
return new Date(data[0].startOn);
return null;
} Damit holst du dir zu jedem Projekt alle Aufgabe die das startOn ausgefüllt haben aufsteigend sortiert und holst dir dann das startOn des frühsten Tasks. Bezüglich der abgerechneten/abrechenbaren Zeiten könntest du dir zu jedem Projekt über den GET endpoint Probier das gerne mal aus und melde dich falls es noch Probleme gibt! Liebe Grüße |
Lieber Ian,
vielen Dank für Deine tolle Hilfe.
Ich baue das gleich mal so ein.
Vermutung (aus der Erfahrung mit den Deadlines der Projekte): sofern andere Aufgaben des Projektes KEIN Startdatum hinterlegt haben, wird automatisch der 01.01.1970 eingesetzt.
Ich versuche es aber trotzdem schonmal mit dem Code.
Falls das so ist, wie oben erwähnt, könnte ggf. eine Alternative sein, das Startdatum immer unter der Aufgabe “Projektbeginn” zu hinterlegen und dann für genau diese Aufgabe (mit genau diesem Namen) das Startdatum auszulesen.
Liebe Grüße,
Martin
Martin Jäger
—————————————————
HERR DER DINGE #fliehtihrnarren <https://www.instagram.com/lakoerfabrik/>
M +49 176 432 945 70
<tel:+4917643294570>E ***@***.*** ***@***.***>
W www.lakör.de <https://xn--lakr-7qa.de/>
Am Kreuzgraben 1A | 18146 Rostock
… On 17. May 2021, at 16:51, IanBuck-dev ***@***.***> wrote:
Moin Martin,
ich habe mir deine Frage einmal angeschaut. In deinem Fall würde ich dir empfehlen, zu jedem Projekt die frühste Aufgabe über die API zu holen. Bei der Aufgabe ist das Feld startOn das Anfangsdatum.
Zuerst erstellst du eine neue Tabellenspalte in Zeile 62:
sheet.getRange(startRow, 15).setValue(['StartOn'])
und dann hinterlegst du in Zeile 77 folgenden Code um für das Projekt die frühste Aufgabe zu bekommen:
sheet.getRange(currentRow, 15).setValue([getEarliestTaskForProject(project.id, options)])
und fügst die folgende Funktion am Ende des Editors ein:
function getEarliestTaskForProject(projectId, options) {
var filter = "?filterby=startOn ne null&orderby=startOn"
var response = UrlFetchApp.fetch("https://api.awork.io/api/v1/projects/" + projectId + "/projecttasks" + filter, options);
var json = response.getContentText();
var data = JSON.parse(json);
if (data.length > 0 && data[0].startOn != null)
return new Date(data[0].startOn);
return null;
}
Damit holst du dir zu jedem Projekt alle Aufgabe die das startOn ausgefüllt haben aufsteigend sortiert und holst dir dann das startOn des frühsten Tasks.
Probier das gerne mal aus und melde dich falls es noch Probleme gibt!
Liebe Grüße
Ian
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub <#8 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AUCBASXZNXDNIC242WU6APDTOEUPLANCNFSM445W7JWA>.
|
Lieber Ian,
vielen Dank. Das hat geklappt.
Ganz ganz vielen Dank für die tolle Unterstützung.
Liebe Grüße,
Martin
… On 17. May 2021, at 17:15, Martin von lakör ***@***.***> wrote:
Lieber Ian,
vielen Dank für Deine tolle Hilfe.
Ich baue das gleich mal so ein.
Vermutung (aus der Erfahrung mit den Deadlines der Projekte): sofern andere Aufgaben des Projektes KEIN Startdatum hinterlegt haben, wird automatisch der 01.01.1970 eingesetzt.
Ich versuche es aber trotzdem schonmal mit dem Code.
Falls das so ist, wie oben erwähnt, könnte ggf. eine Alternative sein, das Startdatum immer unter der Aufgabe “Projektbeginn” zu hinterlegen und dann für genau diese Aufgabe (mit genau diesem Namen) das Startdatum auszulesen.
Liebe Grüße,
Martin
Martin Jäger
—————————————————
HERR DER DINGE #fliehtihrnarren <https://www.instagram.com/lakoerfabrik/>
M +49 176 432 945 70
<tel:+4917643294570>E ***@***.*** ***@***.***>
W www.lakör.de <https://xn--lakr-7qa.de/>
<PastedGraphic-1.tiff>
Am Kreuzgraben 1A | 18146 Rostock
> On 17. May 2021, at 16:51, IanBuck-dev ***@***.*** ***@***.***>> wrote:
>
>
> Moin Martin,
>
> ich habe mir deine Frage einmal angeschaut. In deinem Fall würde ich dir empfehlen, zu jedem Projekt die frühste Aufgabe über die API zu holen. Bei der Aufgabe ist das Feld startOn das Anfangsdatum.
>
> Zuerst erstellst du eine neue Tabellenspalte in Zeile 62:
>
> sheet.getRange(startRow, 15).setValue(['StartOn'])
> und dann hinterlegst du in Zeile 77 folgenden Code um für das Projekt die frühste Aufgabe zu bekommen:
>
> sheet.getRange(currentRow, 15).setValue([getEarliestTaskForProject(project.id, options)])
> und fügst die folgende Funktion am Ende des Editors ein:
>
> function getEarliestTaskForProject(projectId, options) {
> var filter = "?filterby=startOn ne null&orderby=startOn"
> var response = UrlFetchApp.fetch("https://api.awork.io/api/v1/projects/ <https://api.awork.io/api/v1/projects/>" + projectId + "/projecttasks" + filter, options);
>
> var json = response.getContentText();
> var data = JSON.parse(json);
>
> if (data.length > 0 && data[0].startOn != null)
> return new Date(data[0].startOn);
>
> return null;
> }
> Damit holst du dir zu jedem Projekt alle Aufgabe die das startOn ausgefüllt haben aufsteigend sortiert und holst dir dann das startOn des frühsten Tasks.
>
> Probier das gerne mal aus und melde dich falls es noch Probleme gibt!
>
> Liebe Grüße
> Ian
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub <#8 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AUCBASXZNXDNIC242WU6APDTOEUPLANCNFSM445W7JWA>.
>
|
Lieber Ian,
ich habe noch ein Anliegen.
Wie kann ich Tags aus awork auslesen und in Google Sheets einfügen?
Ich habe den Code gemäß Anhang probiert, klappt aber nicht.
Kannst Du hier nochmal unterstützen?
Vielen Dank und liebe Grüße,
Martin
… On 17. May 2021, at 23:23, Martin von lakör ***@***.***> wrote:
Lieber Ian,
vielen Dank. Das hat geklappt.
Ganz ganz vielen Dank für die tolle Unterstützung.
Liebe Grüße,
Martin
> On 17. May 2021, at 17:15, Martin von lakör ***@***.*** ***@***.***>> wrote:
>
> Lieber Ian,
>
> vielen Dank für Deine tolle Hilfe.
> Ich baue das gleich mal so ein.
>
> Vermutung (aus der Erfahrung mit den Deadlines der Projekte): sofern andere Aufgaben des Projektes KEIN Startdatum hinterlegt haben, wird automatisch der 01.01.1970 eingesetzt.
> Ich versuche es aber trotzdem schonmal mit dem Code.
>
> Falls das so ist, wie oben erwähnt, könnte ggf. eine Alternative sein, das Startdatum immer unter der Aufgabe “Projektbeginn” zu hinterlegen und dann für genau diese Aufgabe (mit genau diesem Namen) das Startdatum auszulesen.
>
> Liebe Grüße,
> Martin
>
> Martin Jäger
> —————————————————
> HERR DER DINGE #fliehtihrnarren <https://www.instagram.com/lakoerfabrik/>
>
> M +49 176 432 945 70
> <tel:+4917643294570>E ***@***.*** ***@***.***>
> W www.lakör.de <https://xn--lakr-7qa.de/>
>
>
>
> <PastedGraphic-1.tiff>
>
> Am Kreuzgraben 1A | 18146 Rostock
>
>
>
>> On 17. May 2021, at 16:51, IanBuck-dev ***@***.*** ***@***.***>> wrote:
>>
>>
>> Moin Martin,
>>
>> ich habe mir deine Frage einmal angeschaut. In deinem Fall würde ich dir empfehlen, zu jedem Projekt die frühste Aufgabe über die API zu holen. Bei der Aufgabe ist das Feld startOn das Anfangsdatum.
>>
>> Zuerst erstellst du eine neue Tabellenspalte in Zeile 62:
>>
>> sheet.getRange(startRow, 15).setValue(['StartOn'])
>> und dann hinterlegst du in Zeile 77 folgenden Code um für das Projekt die frühste Aufgabe zu bekommen:
>>
>> sheet.getRange(currentRow, 15).setValue([getEarliestTaskForProject(project.id, options)])
>> und fügst die folgende Funktion am Ende des Editors ein:
>>
>> function getEarliestTaskForProject(projectId, options) {
>> var filter = "?filterby=startOn ne null&orderby=startOn"
>> var response = UrlFetchApp.fetch("https://api.awork.io/api/v1/projects/ <https://api.awork.io/api/v1/projects/>" + projectId + "/projecttasks" + filter, options);
>>
>> var json = response.getContentText();
>> var data = JSON.parse(json);
>>
>> if (data.length > 0 && data[0].startOn != null)
>> return new Date(data[0].startOn);
>>
>> return null;
>> }
>> Damit holst du dir zu jedem Projekt alle Aufgabe die das startOn ausgefüllt haben aufsteigend sortiert und holst dir dann das startOn des frühsten Tasks.
>>
>> Probier das gerne mal aus und melde dich falls es noch Probleme gibt!
>>
>> Liebe Grüße
>> Ian
>>
>> —
>> You are receiving this because you authored the thread.
>> Reply to this email directly, view it on GitHub <#8 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AUCBASXZNXDNIC242WU6APDTOEUPLANCNFSM445W7JWA>.
>>
>
|
Hallo Ihr Lieben,
ich verknüpfe awork derzeit mit unseren Google Tabellen.
Dabei würde ich über das Google Script gerne auslesen, welches die Aufgabe mit dem frühesten Startdatum des Projektes ist und wann das Startdatum ist. Das ist für unsere Finanzplanung extrem wichtig.
Alternativ könnte ich vielleicht auch in jedem Projekt eine Aufgabe "Startdatum" anlegen und dann das Startdatum dieser Aufgabe gezielt für jedes Projekt auslesen und in die Google Tabelle schreiben...
Nur leider bekomme ich den Code nicht auf die Kette und freue mich sehr, wenn Ihr hier unterstützen könnt.
Über welche Variable / welchen Script-Code bei Google kann ich das machen?
Gibt es weiterhin ein Möglichkeit abgerechnete und nicht abgerechnete Stunden auszulesen?
Vielen vielen Dank für Eure Hilfe und liebe Grüße,
Martin
The text was updated successfully, but these errors were encountered: