project server - Using PSI Filter objects from Python -


i'm working sharepoint , projectserver 2007 via psi python.

i can't find documentation on how filter class (microsoft.office.project.server.library) objects work internally emulate behaviour in python.

any ideas?

take @ colby africa's blog post. also, msdn docs here.

edit

the generated filter xml. here filter returns data "lookuptables" table (list of lookup tables):

<?xml version="1.0" encoding="utf-16"?> <filter xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" filtertablename="lookuptables" xmlns="http://microsoft.com/projectserver/filterschema.xsd">   <fields>     <field tablename="" fieldname="lt_uid" />     <field tablename="" fieldname="lt_name" />     <field tablename="" fieldname="lt_sort_order_enum" />     <field tablename="" fieldname="lt_primary_lcid" />     <field tablename="" fieldname="lt_fill_all_levels" />     <field tablename="" fieldname="lt_checkoutby" />     <field tablename="" fieldname="lt_checkoutdate" />     <field tablename="" fieldname="mod_date" />   </fields>   <criteria /> </filter> 

here example of filters required getting data 1 table...

step 1: row lookuptable (general table info)

<?xml version="1.0" encoding="utf-16"?> <filter xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" filtertablename="lookuptables" xmlns="http://microsoft.com/projectserver/filterschema.xsd">   <fields>     <field tablename="" fieldname="lt_uid" />     <field tablename="" fieldname="lt_name" />     <field tablename="" fieldname="lt_sort_order_enum" />     <field tablename="" fieldname="lt_primary_lcid" />     <field tablename="" fieldname="lt_fill_all_levels" />     <field tablename="" fieldname="lt_checkoutby" />     <field tablename="" fieldname="lt_checkoutdate" />     <field tablename="" fieldname="mod_date" />   </fields>   <criteria>     <fieldoperator fieldoperationtype="equal">       <field fieldname="lt_uid" />       <operand xmlns:q1="http://microsoft.com/wsdl/types/" xsi:type="q1:guid">20870732-12b6-48e2-acf4-94d934dfc27a</operand>     </fieldoperator>   </criteria> </filter> 

step 2: data lookuptablestructures table (hierarchy info)

<?xml version="1.0" encoding="utf-16"?> <filter xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" filtertablename="lookuptablestructures" xmlns="http://microsoft.com/projectserver/filterschema.xsd">   <fields>     <field tablename="" fieldname="lt_struct_uid" />     <field tablename="" fieldname="lt_uid" />     <field tablename="" fieldname="lt_parent_struct_uid" />     <field tablename="" fieldname="lt_struct_cookie" />   </fields>   <criteria>     <fieldoperator fieldoperationtype="equal">       <field fieldname="lt_uid" />       <operand xmlns:q1="http://microsoft.com/wsdl/types/" xsi:type="q1:guid">20870732-12b6-48e2-acf4-94d934dfc27a</operand>     </fieldoperator>   </criteria> </filter> 

step 3: of values in lookup table

<?xml version="1.0" encoding="utf-16"?> <filter xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns:xsd="http://www.w3.org/2001/xmlschema" filtertablename="lookuptablevalues" xmlns="http://microsoft.com/projectserver/filterschema.xsd">   <fields>     <field tablename="" fieldname="lt_struct_uid" />     <field tablename="" fieldname="lcid" />     <field tablename="" fieldname="lt_uid" />     <field tablename="" fieldname="lt_value_dur" />     <field tablename="" fieldname="lt_value_num" />     <field tablename="" fieldname="lt_value_dur_fmt" />     <field tablename="" fieldname="lt_value_date" />     <field tablename="" fieldname="lt_value_text" />     <field tablename="" fieldname="lt_value_phonetic" />     <field tablename="" fieldname="lt_value_full" />     <field tablename="" fieldname="lt_value_desc" />     <field tablename="" fieldname="lt_value_sort_index" />     <field tablename="" fieldname="lt_value_localized_cookie" />   </fields>   <criteria>     <fieldoperator fieldoperationtype="equal">       <field fieldname="lt_uid" />       <operand xmlns:q1="http://microsoft.com/wsdl/types/" xsi:type="q1:guid">20870732-12b6-48e2-acf4-94d934dfc27a</operand>     </fieldoperator>   </criteria> </filter> 

it requires 3 separate filters data because split across 3 separate tables. in c#, calling readlookuptablesmultilang function each of these filters , merging returned datatables.


Comments

Popular posts from this blog

c++ - Convert big endian to little endian when reading from a binary file -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

unicode - Are email addresses allowed to contain non-alphanumeric characters? -