Ahhh muchas gracias razpeitia... mira esto es lo que llevo en el script python.
Código:
tipo = 'Anotacion'
resultados = context.portal_catalog.searchResults(Type=tipo, Creator=idusuario)
elementos = []
for brain in resultados:
elementos.append((brain.Creator, brain.CreationDate, brain.ModificationDate, brain.Title, brain.review_state, brain.getResponsibleManager, brain.Description, brain.getIssueType, brain.getArea))
print '<registros>'
for a in elementos:
print '<reg>'
print '<rut>' + a[0] + '</rut>'
print '<creacion>' + a[1] + '</creacion>'
print '<modificado>' + a[2] + '</modificado>'
print '<titulo>' + a[3] + '</titulo>'
print '<revision>' + a[4] + '</revision>'
print '<responsable>' + a[5] + '</responsable>'
print '<descripcion>' + a[6] + '</descripcion>'
print '<tipo>' + a[7] + '</tipo>'
print '<area>' + a[8] + '</area>'
print '</reg>'
print '</registros>'
return printed
Finalmente pude ordenar todo en un arreglo y luego enviarlo a la pantalla.
Ahora voy a hacer una instalacion de plone 2.5, python 2.5.4 y zope 2.1 en un servidor virtual para hacer pruebas de actualizacion.
Mi idea es poder llegar a Zope 2.11 al menos y phyton 3... ya que hay muchos mas productos para instalar algun SOAP y algun producto de XML.
Por ahora ya tengo los datos y solo me falta poder exportarlos a XML por un Webservice.
De todas maneras dejo la explicacion del codigo por si alguien la necesita
Código:
#tipo contiene el filtro para la busquead en catalog.
#idusuario es un parametro obtenido por URL GET
tipo = 'Anotacion'
resultados = context.portal_catalog.searchResults(Type=tipo, Creator=idusuario)
#arreglo de elementos que contendra la informacion buscada por searchResults
elementos = []
#ciclo for para revisar los resultados y agregarlos al arreglo
#utilizo brain por un consejo que me dieron ya que getObject() utiliza mas recursos de la maquina
for brain in resultados:
#los elementos de brain se encuentran en ZMI->portal_catalog->pestaña metadata
elementos.append((brain.Creator, brain.CreationDate, brain.ModificationDate, brain.Title, brain.review_state, brain.getResponsibleManager, brain.Description, brain.getIssueType, brain.getArea))
#esto era una prueba para revisar si podia transformarlo directamente a xml
print '<registros>'
#ahora reviso el arreglo elementos para ordenar los datos a mi gusto
for a in elementos:
#lo relevante aca es a[numero] que es donde vienen los datos
print '<reg>'
print '<rut>' + a[0] + '</rut>'
print '<creacion>' + a[1] + '</creacion>'
print '<modificado>' + a[2] + '</modificado>'
print '<titulo>' + a[3] + '</titulo>'
print '<revision>' + a[4] + '</revision>'
print '<responsable>' + a[5] + '</responsable>'
print '<descripcion>' + a[6] + '</descripcion>'
print '<tipo>' + a[7] + '</tipo>'
print '<area>' + a[8] + '</area>'
print '</reg>'
print '</registros>'
#devuelvo a pantalla todo lo que se ha quedado en print
return printed
Seguire buscando como instalar SOAP y algun producto de XML para agregar al zope
Suerte!