Re: WebServices con Postgres y Perl

From: Marcos Luis Ortiz Valmaseda <marcosluis2186(at)googlemail(dot)com>
To: Mariano Reingart <reingart(at)gmail(dot)com>
Cc: David Samudio <david(dot)samudio(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: WebServices con Postgres y Perl
Date: 2010-10-08 15:35:59
Message-ID: AANLkTi=UQuabNAF68o1-fNVKWr==Q1MyundFGYccgS+J@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Aqui puedes ecnontrar lo que buscas
http://www.postgres.cz/index.php/PL/Perlu_-_Untrusted_Perl_%28en%29

Ejemplo:

CREATE OR REPLACE FUNCTION ext.amazon_search(varchar) RETURNS SETOF
ext.amazon_lst AS $$
my $dev_token='insert developer token'; my $af_tag='insert associate tag';
my $amazon_wdsl = "http://soap.amazon.com/schemas2/AmazonWebServices.wsdl";
use strict; use SOAP::Lite; my @listbooks = ();

my $amazon_search = SOAP::Lite->service("$amazon_wdsl");
my $results = $amazon_search ->

KeywordSearchRequest(SOAP::Data->name("KeywordSearchRequest")
->type("KeywordRequest")
->value(\SOAP::Data->value(
SOAP::Data->name("keyword" => $_[0]),
SOAP::Data->name("page" => "1"),
SOAP::Data->name("mode" => "books"),
SOAP::Data->name("tag" => $af_tag),
SOAP::Data->name("type" => "lite"),
SOAP::Data->name("devtag" => $dev_token),))
);

foreach my $result (@{$results->{Details}}){
$result->{UsedPrice} =~ s/\$//g;
push @listbooks, {
productname => $result->{ProductName}|| "no title",
authors => "{".join (', ', @{$result->{Authors}}) . "}",
price => $result->{UsedPrice},asin => $result->{Asin}}}
return \(at)listbooks;
$$ LANGUAGE plperlu;

SELECT * FROM ext.amazon_search('xml perl');

plperlu=# SELECT productname, authors FROM ext.amazon_search('postgresql');
productname |
authors

-------------------------------------------------------+------------------------------------------------
Beginning Databases with PostgreSQL | {"Richard
Stones","Neil Matthew"}
PostgreSQL | {"Korry
Douglas","Susan Douglas"}
PHP and PostgreSQL Advanced Web Programming | {"Ewald
Geschwinde","Hans-Juergen Schoenig"}
PostgreSQL Developer's Handbook (Developer's Library) | {"Ewald
Geschwinde","Hans-JĂźergen SchĂśenig"}
PostgreSQL Essential Reference | {"Barry
Stinson","Barry Stinson"}
PostgreSQL: Introduction and Concepts | {"Bruce Momjian"}
PostgreSQL | {"Jeff Perkins"}
(7 rows)

plperlu=# SELECT * FROM ext.read_nic('jetspeed.cz');
-[ RECORD 1 ]+-----------------------------------------------------------------
domain | jetspeed.cz
definition |
situation | The domain is booked us and is in CZ
glue | {"A - ns.inway.cz","A - ns.inway.net"}
key |
registered | 2004-03-09
expiration | 2005-03-09
registrator | {{REG-GENERAL-REGISTRY,"GENERAL REGISTRY, s.r.o.",2004-11-13, },
| {REG-INWAY,"InWay, a.s.",2004-03-09,"2004-11-13 10:25"}}
owner | {{IWS-PAVEL_STEHULE,"Ing. Pavel Stehule",2004-03-09, }}
techspr | {{INWAY-TECH,"InWay, a. s.",2004-03-09, }}

El 8 de octubre de 2010 10:58, Mariano Reingart <reingart(at)gmail(dot)com>escribió:

> Con python te podría ayudar con PySimpleSOAP, una biblioteca que
> desarrollamos para webservices:
>
> http://code.google.com/p/pysimplesoap/
>
> En su momento había armado un esquema similar (Triggers que disparaban
> una solicitud a un webservice) para factura electrónica en Argentina:
>
> http://www.pyafipws.com.ar/
> http://code.google.com/p/pyafipws/
>
> Si utilizas otro lenguaje externo, quizás podrías sincronizarlo por
> notificaciones (LISTEN/NOTIFY).
>
> Sds
>
> Mariano Reingart
> http://www.sistemasagiles.com.ar
> http://reingart.blogspot.com
>
>
> 2010/10/8 David Samudio <david(dot)samudio(at)gmail(dot)com>:
> > Hola Alvaro, los unicos lenguajes que conozco son PowerScript de
> > PowerBuilder y Oracle ya que trabaje con Oracle Forms..
> > No creo que con estos lenguajes pueda hacer algo con postgres..
> > Con PowerBuilder yo si se como consumir un webservice, por eso, otra idea
> > que tengo pero creo que sea la mejor es dejar corriendo un programa que
> este
> > esperando transacciones y cuando reciba algo, ahi llamar al webservice, o
> > algo asi, pero no lo veo muy fiable, ya que dependo de otro programa que
> > este corriendo en el servidor esperando la transaccion, simulando lo que
> > haria un webservice.
> > Para que entiendan, el esquema es algo asi.
> > Cliente1 (Sin Internet) ==> Servidor Central (Con Internet) ==>
> Servidor
> > Externo (WebService)
> > El Cliente1 (Sin Internet) se conecta al Servidor Central para hacer la
> > primera parte de las validaciones, si pasa estas validaciones, pasa los
> > datos a un WebService que esta en un Servidor Externo y asi retorna todo
> por
> > el mismo camino.
> > Si alguien tiene alguna alternativa, sera MUY bienvenida..
> > Saldos
> > --
> > Lic. David Samudio
> >
> >
> > El 7 de octubre de 2010 23:12, Alvaro Herrera <
> alvherre(at)commandprompt(dot)com>
> > escribió:
> >>
> >> Excerpts from David Samudio's message of jue oct 07 20:06:41 -0400 2010:
> >>
> >> > 2. No conozco el lenguaje perl, asi que pediria si alguien tiene algun
> >> > ejemplo de llamado de un web services a través de postgres y plperlu,
> >> > estaría muy agradecido.
> >>
> >> Si no conoces Perl, quizás no sea lo más conveniente. ¿Conoces Python?
> >> Si es así podrías usar plpythonu. Si no, ¿qué lenguaje te es familiar?
> >>
> >> --
> >> Álvaro Herrera <alvherre(at)commandprompt(dot)com>
> >> The PostgreSQL Company - Command Prompt, Inc.
> >> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
> >
> >
> -
> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org
> )
> Para cambiar tu suscripción:
> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>

--
Ing. Marcos Luís Ortíz Valmaseda
Data Lover(RDBMS and NOSQL Movement) && System Engineer

http://it.toolbox.com/blogs/sql-apprentice
http://www.linkedin.com/in/marcosluis2186/
http://www.doyoubuzz.com/marcos-ortiz

Centro de Tecnologías de Gestión de Datos (DATEC)
Linux User # 418229

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Esneiker 2010-10-08 16:41:05 división
Previous Message Mariano Reingart 2010-10-08 15:28:54 Re: WebServices con Postgres y Perl