Discussione:
Unità risorse "dinamiche"
(troppo vecchio per rispondere)
NicolaG
2009-02-03 13:29:00 UTC
Permalink
Vorrei rendere dinamiche (come ho fatto con successo con le assegnazioni
orarie) le unità massime delle risorse, in modo per esempio che posso dire
"TEAM binario" in novembre 2008 ha unità max 60, in dicembre 70 nel diagramma
delle risorse. Uso il metodo TimeScaleData, pe`rò non riesco a capire dove
sbaglio...ecco il mio codice della macro:

ActiveProject.Resources(1).TimeScaleData(StartDate:="02.10.10",
EndDate:="02.11.10", Type:=pjResourceTimescaledUnitAvailability,
TimeScaleUnit:=pjTimescaleMonths).Item(1).Value = "53"

Grazia a tutti
Pat
2009-02-05 21:43:56 UTC
Permalink
Post by NicolaG
Vorrei rendere dinamiche (come ho fatto con successo con le assegnazioni
orarie) le unità massime delle risorse, in modo per esempio che posso dire
"TEAM binario" in novembre 2008 ha unità max 60, in dicembre 70 nel diagramma
delle risorse. Uso il metodo TimeScaleData, pe`rò non riesco a capire dove
ActiveProject.Resources(1).TimeScaleData(StartDate:="02.10.10",
EndDate:="02.11.10", Type:=pjResourceTimescaledUnitAvailability,
TimeScaleUnit:=pjTimescaleMonths).Item(1).Value = "53"
Ciao NicolaG,
l'unità delle risorse è un attributo di ogni risorsa e non delle
assegnazioni nella scala cronologica; per modificarla devi leggere l'elenco
risorse (o il pool risorse dell'organizzazione se lavori sul server) e per
ognuna devi modificare la relativa tabella di disponibilità.

Puoi farlo in questo modo per il primo periodo, che di default contine "NA"
nelle date:
ActiveProject.Resources(1).Availabilities(1).AvailableFrom = "02/02/2009"
ActiveProject.Resources(1).Availabilities(1).AvailableTo = "28/02/2009"
ActiveProject.Resources(1).Availabilities(1).AvailableUnit = 30

o questo per aggiungere periodi:
ActiveProject.Resources(1).Availabilities.Add "01/03/2009", "31/03/2009", 50

Ciao
--
Pat (Microsoft Office Project MVP)
-- http://patitaly0.spaces.live.com
NicolaG
2009-02-09 14:13:01 UTC
Permalink
Post by Pat
Ciao NicolaG,
l'unità delle risorse è un attributo di ogni risorsa e non delle
assegnazioni nella scala cronologica; per modificarla devi leggere l'elenco
risorse (o il pool risorse dell'organizzazione se lavori sul server) e per
ognuna devi modificare la relativa tabella di disponibilità.
Puoi farlo in questo modo per il primo periodo, che di default contine "NA"
ActiveProject.Resources(1).Availabilities(1).AvailableFrom = "02/02/2009"
ActiveProject.Resources(1).Availabilities(1).AvailableTo = "28/02/2009"
ActiveProject.Resources(1).Availabilities(1).AvailableUnit = 30
ActiveProject.Resources(1).Availabilities.Add "01/03/2009", "31/03/2009", 50
Ciao
--
Pat (Microsoft Office Project MVP)
-- http://patitaly0.spaces.live.com
Grazie mille, ora funziona =)

Avrei altre 3 domande, abbastanza simili da porti:

1.
Come posso leggere (via codice macro) le ore complessive di lavoro
(assegnate) di una certa risorsa generica in un determinato lasso di tempo
(per esempio le ore lavoro complessive di “team binario” dal 1.1.2010 al
31.1.2010)? In altre parole come posso avere il valore che viene
rappresentato dal grafico “Diagramma risorse”?

2.
(con Project 2002) È possibile rappresentare in uno stesso “Diagramma
risorse” più risorse contemporaneamente?

3.
Come funziona la proprietà UniqueID, per esempio
ActiveProject.Tasks.UniqueID(113).Assignments.UniqueID(2097286).TimeScaleData(…
gli indici 113 e 2097286 in base a cosa sono definiti? (ho visto che non è
per esempio “riga Task” = “UniqueID della Task”)?
(Mi serve per poter leggere le assegnazioni per fare un grafico dove si vede
la ripartizione percentuale delle risorse (assegnate) per ogni attività in un
determinato mese, per esempio mese di mazo 2010: 50% delle risorse per
attività 1, 25% per attività 2, 25% per attività 3.)

Grazie ancora
Pat
2009-02-16 20:48:07 UTC
Permalink
[...]
Post by NicolaG
Grazie mille, ora funziona =)
Prego!
ricorda, quando hai domande nuove devi fare nuovi post, uno per domanda.
Questo per facilitare le risposte, le ricerche e la comprensione da parte di
tutti.
Post by NicolaG
1.
Come posso leggere (via codice macro) le ore complessive di lavoro
(assegnate) di una certa risorsa generica in un determinato lasso di tempo
qui si che servono le funzioni TimeScaleData
Post by NicolaG
2.
(con Project 2002) È possibile rappresentare in uno stesso “Diagramma
risorse” più risorse contemporaneamente?
no
Post by NicolaG
3.
Come funziona la proprietà UniqueID, per esempio
ActiveProject.Tasks.UniqueID(113).Assignments.UniqueID(2097286).TimeScaleData(…
gli indici 113 e 2097286 in base a cosa sono definiti? (ho visto che non è
per esempio “riga Task” = “UniqueID della Task”)?
l'indice rappresenta la posizione dell'oggetto all'interno dell'insieme.
Post by NicolaG
Grazie ancora
Prego.

Ciao
--
Pat (Microsoft Office Project MVP)
-- http://patitaly0.spaces.live.com
Continua a leggere su narkive:
Loading...