Modif. dans BD MS Project Server : calendrier de ressource
6 réponses
Maxime P.
Bonjour,
Peut-=EAtre que certains d'entre vous ont d=E9j=E0 essay=E9 de=20
r=E9cup=E9rer/modifier des informations contenues dans la Base=20
de Donn=E9es de MS Project Server ; j'aurais besoin d'une=20
aide sur une partie pr=E9cise de cette Base de Donn=E9es.
Je cherche =E0 modifier le contenu du calendrier des jours=20
ch=F4m=E9s d'une ressource (le calendrier du projet "global",=20
donc pas seulement pour un seul projet).
- J'ai consult=E9 la documentation de PDS (Project Data=20
Service), une API de Project Server permettant de lui=20
communiquer des commandes en XML, en utilisant le=20
protocole SOAP. Malheureusement, aucune fonction=20
disponible ne permet de modifier le calendrier "global"=20
d'une ressource.
- A l'aide d'un petit script, j'ai enregistr=E9 le contenu=20
de toutes les tables dans deux fichiers (une fois *avant*=20
et une fois *apr=E8s* avoir fait une modification sur le=20
calendrier "global" d'une ressource depuis un "client" MS=20
Project). En faisant un "diff" des deux fichiers,=20
j'obtiens quelques modifications (sans grande importance)=20
au niveau des dates de derni=E8re =E9dition du projet "global"=20
et de la ressource modifi=E9e, mais surtout au niveau du=20
champ GLB_BINARY_DATA de la table MSP_RES_GLOBAL_BINARY.
Cette table MSP_RES_GLOBAL_BINARY semble, comme son nom=20
l'indique, contenir des informations sur les ressources=20
globales, mais il s'agit d'informations cod=E9es=20
(..._BINARY) dans lesquelles il m'est impossible de=20
retrouver la moindre date...
D'o=F9 cette question : est-il possible de modifier le=20
calendrier global d'une ressource dans la Base de Donn=E9es=20
de MS Project Server, autrement qu'en utilisant un=20
logiciel "client" MS Project ?
D=E9sol=E9 pour le roman, et si je me suis tromp=E9 de forum,=20
mais je suppose que si une personne peut r=E9pondre =E0 cette=20
question elle devrait se trouver par ici...
Merci d'avance pour toute r=E9ponse,
Maxime
PS. Je dispose de MS Project Server 2003, sur Win Server=20
2003, avec MS SQL Server 2000 mis =E0 jour comme il faut ;=20
et d'un "client" MS Office Project Professionnal 2003.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred BROUARD
En principe ces infos binaires servent de contrôle de cohérence afin d'empêcher des utilisateurs de ton genre de polluer les données de la base et de venir ensuite se plaindre parce que l'application ne marche plus.
En conclusion il faut passer par l'API spécifique et heureusement !!!
A +
Maxime P. a écrit:
Bonjour,
Peut-être que certains d'entre vous ont déjà essayé de récupérer/modifier des informations contenues dans la Base de Données de MS Project Server ; j'aurais besoin d'une aide sur une partie précise de cette Base de Données.
Je cherche à modifier le contenu du calendrier des jours chômés d'une ressource (le calendrier du projet "global", donc pas seulement pour un seul projet).
- J'ai consulté la documentation de PDS (Project Data Service), une API de Project Server permettant de lui communiquer des commandes en XML, en utilisant le protocole SOAP. Malheureusement, aucune fonction disponible ne permet de modifier le calendrier "global" d'une ressource.
- A l'aide d'un petit script, j'ai enregistré le contenu de toutes les tables dans deux fichiers (une fois *avant* et une fois *après* avoir fait une modification sur le calendrier "global" d'une ressource depuis un "client" MS Project). En faisant un "diff" des deux fichiers, j'obtiens quelques modifications (sans grande importance) au niveau des dates de dernière édition du projet "global" et de la ressource modifiée, mais surtout au niveau du champ GLB_BINARY_DATA de la table MSP_RES_GLOBAL_BINARY.
Cette table MSP_RES_GLOBAL_BINARY semble, comme son nom l'indique, contenir des informations sur les ressources globales, mais il s'agit d'informations codées (..._BINARY) dans lesquelles il m'est impossible de retrouver la moindre date...
D'où cette question : est-il possible de modifier le calendrier global d'une ressource dans la Base de Données de MS Project Server, autrement qu'en utilisant un logiciel "client" MS Project ?
Désolé pour le roman, et si je me suis trompé de forum, mais je suppose que si une personne peut répondre à cette question elle devrait se trouver par ici...
Merci d'avance pour toute réponse,
Maxime
PS. Je dispose de MS Project Server 2003, sur Win Server 2003, avec MS SQL Server 2000 mis à jour comme il faut ; et d'un "client" MS Office Project Professionnal 2003.
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
En principe ces infos binaires servent de contrôle de cohérence afin
d'empêcher des utilisateurs de ton genre de polluer les données de la
base et de venir ensuite se plaindre parce que l'application ne marche plus.
En conclusion il faut passer par l'API spécifique et heureusement !!!
A +
Maxime P. a écrit:
Bonjour,
Peut-être que certains d'entre vous ont déjà essayé de
récupérer/modifier des informations contenues dans la Base
de Données de MS Project Server ; j'aurais besoin d'une
aide sur une partie précise de cette Base de Données.
Je cherche à modifier le contenu du calendrier des jours
chômés d'une ressource (le calendrier du projet "global",
donc pas seulement pour un seul projet).
- J'ai consulté la documentation de PDS (Project Data
Service), une API de Project Server permettant de lui
communiquer des commandes en XML, en utilisant le
protocole SOAP. Malheureusement, aucune fonction
disponible ne permet de modifier le calendrier "global"
d'une ressource.
- A l'aide d'un petit script, j'ai enregistré le contenu
de toutes les tables dans deux fichiers (une fois *avant*
et une fois *après* avoir fait une modification sur le
calendrier "global" d'une ressource depuis un "client" MS
Project). En faisant un "diff" des deux fichiers,
j'obtiens quelques modifications (sans grande importance)
au niveau des dates de dernière édition du projet "global"
et de la ressource modifiée, mais surtout au niveau du
champ GLB_BINARY_DATA de la table MSP_RES_GLOBAL_BINARY.
Cette table MSP_RES_GLOBAL_BINARY semble, comme son nom
l'indique, contenir des informations sur les ressources
globales, mais il s'agit d'informations codées
(..._BINARY) dans lesquelles il m'est impossible de
retrouver la moindre date...
D'où cette question : est-il possible de modifier le
calendrier global d'une ressource dans la Base de Données
de MS Project Server, autrement qu'en utilisant un
logiciel "client" MS Project ?
Désolé pour le roman, et si je me suis trompé de forum,
mais je suppose que si une personne peut répondre à cette
question elle devrait se trouver par ici...
Merci d'avance pour toute réponse,
Maxime
PS. Je dispose de MS Project Server 2003, sur Win Server
2003, avec MS SQL Server 2000 mis à jour comme il faut ;
et d'un "client" MS Office Project Professionnal 2003.
--
Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto:brouardf@club-internet.fr ******************
En principe ces infos binaires servent de contrôle de cohérence afin d'empêcher des utilisateurs de ton genre de polluer les données de la base et de venir ensuite se plaindre parce que l'application ne marche plus.
En conclusion il faut passer par l'API spécifique et heureusement !!!
A +
Maxime P. a écrit:
Bonjour,
Peut-être que certains d'entre vous ont déjà essayé de récupérer/modifier des informations contenues dans la Base de Données de MS Project Server ; j'aurais besoin d'une aide sur une partie précise de cette Base de Données.
Je cherche à modifier le contenu du calendrier des jours chômés d'une ressource (le calendrier du projet "global", donc pas seulement pour un seul projet).
- J'ai consulté la documentation de PDS (Project Data Service), une API de Project Server permettant de lui communiquer des commandes en XML, en utilisant le protocole SOAP. Malheureusement, aucune fonction disponible ne permet de modifier le calendrier "global" d'une ressource.
- A l'aide d'un petit script, j'ai enregistré le contenu de toutes les tables dans deux fichiers (une fois *avant* et une fois *après* avoir fait une modification sur le calendrier "global" d'une ressource depuis un "client" MS Project). En faisant un "diff" des deux fichiers, j'obtiens quelques modifications (sans grande importance) au niveau des dates de dernière édition du projet "global" et de la ressource modifiée, mais surtout au niveau du champ GLB_BINARY_DATA de la table MSP_RES_GLOBAL_BINARY.
Cette table MSP_RES_GLOBAL_BINARY semble, comme son nom l'indique, contenir des informations sur les ressources globales, mais il s'agit d'informations codées (..._BINARY) dans lesquelles il m'est impossible de retrouver la moindre date...
D'où cette question : est-il possible de modifier le calendrier global d'une ressource dans la Base de Données de MS Project Server, autrement qu'en utilisant un logiciel "client" MS Project ?
Désolé pour le roman, et si je me suis trompé de forum, mais je suppose que si une personne peut répondre à cette question elle devrait se trouver par ici...
Merci d'avance pour toute réponse,
Maxime
PS. Je dispose de MS Project Server 2003, sur Win Server 2003, avec MS SQL Server 2000 mis à jour comme il faut ; et d'un "client" MS Office Project Professionnal 2003.
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
Maxime P.
Merci pour votre réponse, c'est ce que je craignais.
Mais heureusement, j'ai découvert l'existence de l'API COM (Component Object Model), qui me permettra à partir d'un script de n'importe quel langage supportant COM de manipuler les calendriers de ressources avec des fonctions faites pour ça (ex. ResourceCalendarEditDays ;-)), disponibles avec VBA dans MS Project.
Disons que j'aurais trouvé quand même plus pratique d'avoir : - Soit une doc. claire sur la structure de la base de données => les utilisateurs de mon genre sauraient ce qu'ils font ! - Soit une API permettant d'interagir avec la BD sans devoir passer par l'application elle-même ; il existe PDS mais je trouve cette librairie plutôt restreinte. - Ou les deux, ce qui permettrait de développer facilement ses propres fonctions :-) Cela m'aurait évité d'essayer de comprendre moi-même cette BD pour la "triturer"...
Merci en tout cas ! Ca m'apprendra à ne pas caresser MS Project dans le sens du poil :-)
A+
Merci pour votre réponse, c'est ce que je craignais.
Mais heureusement, j'ai découvert l'existence de l'API COM (Component Object Model), qui me permettra à partir d'un script de n'importe quel langage supportant COM de manipuler les calendriers de ressources avec des fonctions faites pour ça (ex. ResourceCalendarEditDays ;-)), disponibles avec VBA dans MS Project.
Disons que j'aurais trouvé quand même plus pratique d'avoir :
- Soit une doc. claire sur la structure de la base de données => les utilisateurs de mon genre sauraient ce qu'ils font !
- Soit une API permettant d'interagir avec la BD sans devoir passer par l'application elle-même ; il existe PDS mais je trouve cette librairie plutôt restreinte.
- Ou les deux, ce qui permettrait de développer facilement ses propres fonctions :-)
Cela m'aurait évité d'essayer de comprendre moi-même cette BD pour la "triturer"...
Merci en tout cas ! Ca m'apprendra à ne pas caresser MS Project dans le sens du poil :-)
Merci pour votre réponse, c'est ce que je craignais.
Mais heureusement, j'ai découvert l'existence de l'API COM (Component Object Model), qui me permettra à partir d'un script de n'importe quel langage supportant COM de manipuler les calendriers de ressources avec des fonctions faites pour ça (ex. ResourceCalendarEditDays ;-)), disponibles avec VBA dans MS Project.
Disons que j'aurais trouvé quand même plus pratique d'avoir : - Soit une doc. claire sur la structure de la base de données => les utilisateurs de mon genre sauraient ce qu'ils font ! - Soit une API permettant d'interagir avec la BD sans devoir passer par l'application elle-même ; il existe PDS mais je trouve cette librairie plutôt restreinte. - Ou les deux, ce qui permettrait de développer facilement ses propres fonctions :-) Cela m'aurait évité d'essayer de comprendre moi-même cette BD pour la "triturer"...
Merci en tout cas ! Ca m'apprendra à ne pas caresser MS Project dans le sens du poil :-)
Fred BROUARD > "En conclusion il faut passer par l'API spécifique et heureusement !!!"
Apparemment l'API "spécifique" n'est disponible qu'à partir de MS Project "client" uniquement. Il faudrait donc installer un client MS Project sur la machine où tourne mon script de "mise à jour de calendriers de ressources", ce qui signifierait l'achat d'une licence supplémentaire "exprès" pour ce script, licence dont le coût est loin d'être négligeable...
Pour résumer la situation, il n'existe aucun moyen de modifier directement les données dans la BD, puisque c'est codé de façon à ce que personne ne puisse y toucher. Et l'API permettant d'exécuter des commandes sur Project Server (PDS) n'est pas suffisamment riche pour permettre une mise à jour des calendriers des ressources globales. Mais il semble que cette API soit "extensible" et qu'on puisse écrire ses propres fonctions... Je vais donc orienter mes recherches de ce côté là.
J'aimerais simplement savoir si je m'oriente dans la bonne direction... Merci pour votre aide.
Re-bonjour,
Fred BROUARD > "En conclusion il faut passer par l'API spécifique et heureusement !!!"
Apparemment l'API "spécifique" n'est disponible qu'à partir de MS Project "client" uniquement. Il faudrait donc installer un client MS Project sur la machine où tourne mon script de "mise à jour de calendriers de ressources", ce qui signifierait l'achat d'une licence supplémentaire "exprès" pour ce script, licence dont le coût est loin d'être négligeable...
Pour résumer la situation, il n'existe aucun moyen de modifier directement les données dans la BD, puisque c'est codé de façon à ce que personne ne puisse y toucher.
Et l'API permettant d'exécuter des commandes sur Project Server (PDS) n'est pas suffisamment riche pour permettre une mise à jour des calendriers des ressources globales. Mais il semble que cette API soit "extensible" et qu'on puisse écrire ses propres fonctions... Je vais donc orienter mes recherches de ce côté là.
J'aimerais simplement savoir si je m'oriente dans la bonne direction... Merci pour votre aide.
Fred BROUARD > "En conclusion il faut passer par l'API spécifique et heureusement !!!"
Apparemment l'API "spécifique" n'est disponible qu'à partir de MS Project "client" uniquement. Il faudrait donc installer un client MS Project sur la machine où tourne mon script de "mise à jour de calendriers de ressources", ce qui signifierait l'achat d'une licence supplémentaire "exprès" pour ce script, licence dont le coût est loin d'être négligeable...
Pour résumer la situation, il n'existe aucun moyen de modifier directement les données dans la BD, puisque c'est codé de façon à ce que personne ne puisse y toucher. Et l'API permettant d'exécuter des commandes sur Project Server (PDS) n'est pas suffisamment riche pour permettre une mise à jour des calendriers des ressources globales. Mais il semble que cette API soit "extensible" et qu'on puisse écrire ses propres fonctions... Je vais donc orienter mes recherches de ce côté là.
J'aimerais simplement savoir si je m'oriente dans la bonne direction... Merci pour votre aide.
Fred BROUARD
Oui, c'est bien cela.
Il est "normal" que l'éditeur se borde par un cadre strict pour ce qui est du maniement des données.
Il est courant que ce genre d'API soient payante. Je me souvient que pour une compta genre SAGE la dll valait 10 000 F...
A +
Maxime P. a écrit:
Re-bonjour,
Fred BROUARD > "En conclusion il faut passer par l'API spécifique et heureusement !!!"
Apparemment l'API "spécifique" n'est disponible qu'à partir de MS Project "client" uniquement. Il faudrait donc installer un client MS Project sur la machine où tourne mon script de "mise à jour de calendriers de ressources", ce qui signifierait l'achat d'une licence supplémentaire "exprès" pour ce script, licence dont le coût est loin d'être négligeable...
Pour résumer la situation, il n'existe aucun moyen de modifier directement les données dans la BD, puisque c'est codé de façon à ce que personne ne puisse y toucher. Et l'API permettant d'exécuter des commandes sur Project Server (PDS) n'est pas suffisamment riche pour permettre une mise à jour des calendriers des ressources globales. Mais il semble que cette API soit "extensible" et qu'on puisse écrire ses propres fonctions... Je vais donc orienter mes recherches de ce côté là.
J'aimerais simplement savoir si je m'oriente dans la bonne direction... Merci pour votre aide.
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
Oui, c'est bien cela.
Il est "normal" que l'éditeur se borde par un cadre strict pour ce qui
est du maniement des données.
Il est courant que ce genre d'API soient payante. Je me souvient que
pour une compta genre SAGE la dll valait 10 000 F...
A +
Maxime P. a écrit:
Re-bonjour,
Fred BROUARD > "En conclusion il faut passer par l'API spécifique et heureusement !!!"
Apparemment l'API "spécifique" n'est disponible qu'à partir de MS Project "client" uniquement. Il faudrait donc installer un client MS Project sur la machine où tourne mon script de "mise à jour de calendriers de ressources", ce qui signifierait l'achat d'une licence supplémentaire "exprès" pour ce script, licence dont le coût est loin d'être négligeable...
Pour résumer la situation, il n'existe aucun moyen de modifier directement les données dans la BD, puisque c'est codé de façon à ce que personne ne puisse y toucher.
Et l'API permettant d'exécuter des commandes sur Project Server (PDS) n'est pas suffisamment riche pour permettre une mise à jour des calendriers des ressources globales. Mais il semble que cette API soit "extensible" et qu'on puisse écrire ses propres fonctions... Je vais donc orienter mes recherches de ce côté là.
J'aimerais simplement savoir si je m'oriente dans la bonne direction... Merci pour votre aide.
--
Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto:brouardf@club-internet.fr ******************
Il est "normal" que l'éditeur se borde par un cadre strict pour ce qui est du maniement des données.
Il est courant que ce genre d'API soient payante. Je me souvient que pour une compta genre SAGE la dll valait 10 000 F...
A +
Maxime P. a écrit:
Re-bonjour,
Fred BROUARD > "En conclusion il faut passer par l'API spécifique et heureusement !!!"
Apparemment l'API "spécifique" n'est disponible qu'à partir de MS Project "client" uniquement. Il faudrait donc installer un client MS Project sur la machine où tourne mon script de "mise à jour de calendriers de ressources", ce qui signifierait l'achat d'une licence supplémentaire "exprès" pour ce script, licence dont le coût est loin d'être négligeable...
Pour résumer la situation, il n'existe aucun moyen de modifier directement les données dans la BD, puisque c'est codé de façon à ce que personne ne puisse y toucher. Et l'API permettant d'exécuter des commandes sur Project Server (PDS) n'est pas suffisamment riche pour permettre une mise à jour des calendriers des ressources globales. Mais il semble que cette API soit "extensible" et qu'on puisse écrire ses propres fonctions... Je vais donc orienter mes recherches de ce côté là.
J'aimerais simplement savoir si je m'oriente dans la bonne direction... Merci pour votre aide.
-- Frédéric BROUARD - expert SQL, spécialiste : SQL Server / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
Maxime P.
Fred BROUARD > "Il est "normal" que l'éditeur se borde par un cadre strict pour ce qui est du maniement des données."
Tout à fait d'accord, pourvu que ce cadre soit facilement accessible.
Fred BROUARD > "Il est courant que ce genre d'API soient payante. Je me souvient que pour une compta genre SAGE la dll valait 10 000 F..."
*Argh*... Le problème est comparable en ce qui me concerne. Pour éviter d'avoir une licence supplémentaire, en ce moment je m'arrache les cheveux avec PDS (Project Data Service), l'API de MS Project Server basée sur SOAP/XML, qui me permettrait de manipuler les données de Project Server sans passer par une application client qui coûte des sous...
En tout cas merci de votre réponse ; si j'arrive à mes fins je rajouterai un message dans ce sujet pour éviter la même galère à d'autres personnes.
A+
Fred BROUARD > "Il est "normal" que l'éditeur se borde par un cadre strict pour ce qui
est du maniement des données."
Tout à fait d'accord, pourvu que ce cadre soit facilement accessible.
Fred BROUARD > "Il est courant que ce genre d'API soient payante. Je me souvient que
pour une compta genre SAGE la dll valait 10 000 F..."
*Argh*...
Le problème est comparable en ce qui me concerne.
Pour éviter d'avoir une licence supplémentaire, en ce moment je m'arrache les cheveux avec PDS (Project Data Service), l'API de MS Project Server basée sur SOAP/XML, qui me permettrait de manipuler les données de Project Server sans passer par une application client qui coûte des sous...
En tout cas merci de votre réponse ; si j'arrive à mes fins je rajouterai un message dans ce sujet pour éviter la même galère à d'autres personnes.
Fred BROUARD > "Il est "normal" que l'éditeur se borde par un cadre strict pour ce qui est du maniement des données."
Tout à fait d'accord, pourvu que ce cadre soit facilement accessible.
Fred BROUARD > "Il est courant que ce genre d'API soient payante. Je me souvient que pour une compta genre SAGE la dll valait 10 000 F..."
*Argh*... Le problème est comparable en ce qui me concerne. Pour éviter d'avoir une licence supplémentaire, en ce moment je m'arrache les cheveux avec PDS (Project Data Service), l'API de MS Project Server basée sur SOAP/XML, qui me permettrait de manipuler les données de Project Server sans passer par une application client qui coûte des sous...
En tout cas merci de votre réponse ; si j'arrive à mes fins je rajouterai un message dans ce sujet pour éviter la même galère à d'autres personnes.