Business Objects XI SDK Example, Part 2 Business Objects XI SDK Ejemplo, Parte 2
Continued from Business Objects XI SDK Example, part 1 Viene de Business Objects XI SDK Ejemplo, parte 1
In this post, we'll go over how we can use a python script to process BO XI Java SDK CSV output. En este puesto, nos vamos más de cómo podemos utilizar un script de python para procesar BO XI SDK Java CSV de salida.
The python script makes an http request to the web app and receives the contents. La secuencia de comandos Python hace una petición HTTP a la aplicación web y recibe el contenido.
The configuration file stores information to email a report. El fichero de configuración almacena la información a enviar un informe. It contains the following information: Que contiene la siguiente información:
#report-mailer.py
REMOVE_HEADER_ROW = True
#REMOVE_HEADER_ROW = False
COLUMN_SEPARATOR = " "
#COLUMN_SEPARATOR = ","
to = "noreply@noreply.com,noreply2@noreply.com "
sentfrom = "noreply@noreply.com"
User = "testuser "
Password = "password"
docIdentifier = "442005"
The contents of the config file should be self-explanatory. El contenido del archivo de configuración debe ser auto-explicativo. It allows for the option of removing the header report from the dat Permite la opción de eliminar el encabezado informe de la dat
The "#" is the python comment symbol. El "#" es el símbolo de comentario python.
Python is case sensitive. Python es sensible a mayúsculas y minúsculas. Be aware of this when creating configuration files. Ser conscientes de ello al crear archivos de configuración.
The above code is read inline from the python script report-mailer.py (it is executable python code). El código anterior se lee en línea de la secuencia de comandos Python-mailer.py informe (que es código ejecutable python). The config files sets the appropriate values that are needed by report-mailer.py. Los archivos de configuración fija los valores adecuados que se necesitan según el informe-mailer.py.
Here's the contents of the python script: He aquí el contenido de la secuencia de comandos:
import sys
import smtplib
from email.MIMEText import MIMEText
import urllib
REMOVE_HEADER_ROW = True
COLUMN_SEPARATOR = " "
#COLUMN_SEPARATOR = ","
CSV_EXTRACT_URL = "http://dev1:8080/dpvalues/loginforward.jsp"
auth = "secEnterprise"
CMS = "ersdev1"
to = "noreply@noreply.com"
sentfrom = "noreply@noreply.com"
config_file = sys.argv[1]
#read in config info, and overwrite defaults set above
execfile(config_file)
params = urllib.urlencode({'CMS': CMS, 'User': User, 'Password': Password, 'auth':auth, 'docIdentifier':docIdentifier })
print str(params)
f = urllib.urlopen(CSV_EXTRACT_URL, params)
raw = f.read()
rows = raw.split("\n")
if REMOVE_HEADER_ROW:
rows = rows[1:]
buf = ""
for x in rows:
cln = x.strip()
if len(cln) < 3:
continue
sp = cln[1:-1].split('";"')
buf = COLUMN_SEPARATOR.join( sp ) "\n"
msg = MIMEText(buf)
msg['Subject'] = 'csv values'
msg['From'] = sentfrom
msg['To'] = to
s = smtplib.SMTP()
s.connect()
s.sendmail(sentfrom, [to], msg.as_string())
s.close()
Continued on Business Objects XI SDK Example, part 3 Continúa en Business Objects XI SDK Ejemplo, parte 3
Spread the word Corra la voz
Trackback uri TrackBack URI
http://www.boguru.com/business-objects-xi-sdk-example-1-part-2/trackback/ http://www.boguru.com/business-objects-xi-sdk-example-1-part-2/trackback/



















2 Comments on Business Objects XI SDK Example, Part 2 » 2 Comentarios sobre Business Objects XI SDK Ejemplo, Parte 2 »
Business Objects XI Java SDK Example, Part 3 @ 1:25 pm (Pingback) Business Objects XI SDK Java Ejemplo, Parte 3 @ 1:25 pm (Pingback)
[…] Continued from Business Objects XI Java SDK Example, Part 2 […] [...] Viene de Business Objects XI SDK Java Ejemplo, Parte 2 [...]
Business Objects XI SDK Example, Part 1 @ 1:26 pm (Pingback) Business Objects XI SDK Ejemplo, Parte 1 @ 1:26 pm (Pingback)
[…] in Business Objects XI SDK Example, Part 2 Filed under Business Objects SDK, Business Objects XI by […] [...] En Business Objects XI SDK ejemplo, guardado en la parte 2 del SDK de Business Objects, Business Objects XI por [...]