Olá Dorneles,

Valeu pela dica, eu já tinha visto esse tutorial (muito bom por sinal!)

O meu problema é trabalhar com 1 formulário para preencher diversas tabelas
relacionadas no banco de dados, o que eu não achei tutorial nenhum ainda :(

Por enquanto estou começando a fazer manualmente com scripts Python +
métodos ZSQL, mas estou batendo em todos tipos de erros possíveis e
impossíveis hehahe.

Meu problema atual é pegar o último campo de ID auto-gerada pelo mySQL para
usar em outras tabelas. Algo assim:

ZSQL (zsql_add_pessoa):
[CÓDIGO]
BEGIN <dtml-var sql_delimiter>
INSERT INTO pessoa
VALUES (0,
   <dtml-sqlvar nome_pessoa type=string>,
   <dtml-sqlvar aniver_pessoa type=int>,
   <dtml-sqlvar end_pessoa type=string>
) <dtml-var sql_delimiter>
SELECT MAX(idpessoa) from pessoa <dtml-var sql_delimiter>
COMMIT <dtml-var sql_delimiter>
[/CÓDIGO]

Script Python:

[CÓDIGO]
request = container.REQUEST
RESPONSE =  request.RESPONSE

# Dados do Formulário vem pelo REQUEST.form
form = context.REQUEST.form

# Formata a data para o mySQL [YYYYMMDD]
form['aniver_pessoa'] = form['aniver_pessoa'].replace('-','')[0:8]

# Insere os dados e recebe ID da pessoa adicionada
idnovo = context.zsql_add_pessoa(form)

# Tenta imprimir o ID... infelizmente não imprime nada usando-se o PFG
print idnovo
return printed

#Aqui vou usar o idnovo para inserir em outras tabelas
form['pessoa_idpessoa'] = idnovo
context.zsql_add_info(form)
[/CÓDIGO]

Só que não consigo ver a saída (o print) pois o PFG coloca a página de saída
dele no lugar :-/
Ainda vou testar mais, mas é isso que consegui fazer até agora.

Valeu,

--
Paul Eipper


Em 19/01/07, Dorneles Treméa <[EMAIL PROTECTED]> escreveu:

  Olá Paul,

> Portanto, o problema que me resta é a lógica para colocar os dados do
> formulário no mySQL. Me aconselharam a tentar o Alchemist (
> http://plone.org/products/alchemist, mas não encontrei nenhum
> tutorial :( Alguém tem experiência com esse produto?
>
> Quero reduzir código próprio ao máximo, pois fica mais fácil manter
assim :)

você pode fazer isso sem usar um produto adicional. Confere o
tutorial do próprio PloneFormGen:


http://plone.org/products/ploneformgen/documentation/tutorial/sql-crud/tutorial-all-pages

Até eu me surpreendo com a quantidade de documentação existente
no http://plone.org... :-)

HTH,

--

Dorneles Treméa
X3ng Web Technology

Responder a