IObjLinkProvider on client

G

Graham

Hello,

Is it possible to use the Object Link Provider interface (PjObjPrv.dll
IObjLinkProvider) on the client-side -- for example, in a Project add-in --
or is it only accessible from the server?

Perhaps I am not using it as intended anyway. I would like to be able to
link a Navision job to a Project project and assume this is a reasonable way
to do it. Maybe there are better ways?

I was considering developing an Add-in that would use IObjLinkProvider to
add links to Navision from the current project. I would prefer to use PDS
but it doesn't seem to have a method for adding links. The other option I
suppose would be to write a server-side PDS Extender that does all the dirty
work of using IObjLinkProvider on the server.

I'm really new to Project development so I might be doing things really
silly. Maybe another option is the Project Object Model? I'm not sure if
the links are available from the object model though.

Any feedback, experience or ideas are appreciated. If I'm way out there a
sharp slap across the face is OK too.

Thanks,
Graham.
 
E

Ed Morrison

Graham,
PJobjProv.dll is a server side component, so you do not want to use it in a
client app.
I would use the Project object model through VBA if the code is associated
with the project and runs only when the project is open. I would use a PDS
extension if I am creating a client side app that needs to use the Project
Server security. Finally, I would create straight SQL code if I am not
concerned with security.

What type of link are you trying to define? Is this a link between tasks
either within the project or another project, a link from a task to an
external file, or some other type of linkage?

Ed
 
G

Graham

Ed,

Thank you very much for the reply. I appreciate your advice -- it is very
reasonable.

I am developing a system to provide some integration between Microsoft
Project Server and Microsoft Navision -- so, basically it falls into the
third party application category described in the IObjLinkProvider
documentation. I know absolutely nothing about Navision at this point but
the goal is to create and link a Navision "job" from Project. The job in
Navision would be used for client billing invoices based on time entered to
tasks in project.

I'm tempted to use the object model but I like the idea of using PDS for
security. Also, I would like to develop the features using an add-in and
suspect that in time I will be asked to support the same functionality
through PWA -- where using the object model I assume is more difficult, and
reusing a PDS solution will be much more fun.

I'm afraid of making changes in the database -- for example adding triggers.
Is that common and accepted practice in Project? I worked for a commercial
software vendor and we used to discourage people from making changes to our
database because it created support problems, versioning problems and
occasionally locked us into designs we would have liked to change.

Thanks again, Ed.

Graham.
 
E

Ed Morrison

Graham,
First, I think you should find out how the Navision job is initiated. This
will determine how to "link" it to a Project plan. For example, it may
start by putting an XML file in a directory. If this is the case, its not a
traditional link, but merely a file writing operation.

It is also important to know when the job should run and using which data.
Is it a scheduled job? If so, it should run on the server. Does the PM
initiate it? If so, it can be in VBA or a separate app. Some other user
starts it? If so, it should be a separate app so the user does not need
access to the project plan.

If the job is using the raw data that the resources enter into PWA, then you
should use the msp_web_work table. On the other hand, if you want the PM
approved (updates accepted) and possibly modified data, you want to go to
msp_assignments (possibly unpublished info) or msp_view_proj_assn_std /ent
(published info) or the project plan via PDS.

Remember, a PDS extension is a direct read and/or write to the database and
is therefore dependent on the database design and can cause all of the
problems you listed below.

--
Ed Morrison
msProjectExperts
"We wrote the books on Project Server"
http://www.msprojectexperts.com
FAQ - http://www.projectserverexperts.com
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top