Re: [zope-pt] problemas com manipulação de funções

2008-02-15 Por tôpico Maurício Victor
é isso mesmo meu amigo, não sabia que era necessário colocar estes códigos.
muito obrigado!

2008/2/14 Leonardo Miranda [EMAIL PROTECTED]:

   manda ai  pra me ver como que ta sua função, pois esse problema é que vc
 nao chamou o *BaseObject *e o *CatalogMultiplex*..
 esta faltando coisa no metodo... *(EU ACHO)*

 da uma olhada ai no meu metdo...

 security.declarePrivate('manage_beforeDelete')

 def manage_beforeDelete(self, item, container):
 *BaseObject.manage_beforeDelete(self, item, container)
 CatalogMultiplex.manage_beforeDelete(self, item, container)*
 #deleta a acao do banco
 ano = self.getValueAno
 plinvest = self.getValuePlinves
 eixo = self.getValueEixo
 subeixo = self.getValueSubEixo
 agregadora = self.getValueAgregadora
 nivel = self.getValueNivelAgregadora
 self.delete_historico_acao(ano,plinvest,eixo,subeixo,agregadora,nivel)
 self.delete_acao_transversal(ano,eixo,subeixo,agregadora,nivel)

 repare as duas primeiras linhas do metodo...

 o restante é o que eu quero fazer.. na hora de deletar um archetype...

 nao se esqueça de importar:

 *from Products.Archetypes.CatalogMultiplex  import CatalogMultiplex
 from Products.Archetypes.BaseObject import BaseObject*


 Abs,
 Leonardo Miranda



 2008/2/14 Maurício Victor [EMAIL PROTECTED]:

Me parece que ao usar o portal_factory quando o objeto temporário é
  apagado ele chama o manage_beforeDelete pra depois chamar o
  post_create_script.
 
  Até aí tudo bem.
  O problema é que está sendo criado no catalog um registro duplo do
  objeto.
  No site fica mostrado como se existissem 2 objetos. Somente realizando
  update_catalog que o registro errado é apagado.
 
  Se eu comento a função manage_beforeDelete tudo volta a funcionar
  normalmente.
  O que eu faço agora? eu preciso da função...
 
 
 
  2008/2/14 Maurício Victor [EMAIL PROTECTED]:
 
   Opa, o email foi enviado antes de acabar de digitar. Desculpa.
  
   Estou com o mesmo problema que você hoje. Conseguiu resolver?
  
   Só descobri que a função manage_beforeDelete está sendo chamada ao
   adicionar o objeto, o que não está correto.
  
   Seu alguém puder me ajudar...
  
   Plone 2.5.5
   Zope 2.9.8
   Python 2.4.4
  
   2008/2/14 Maurício Victor [EMAIL PROTECTED]:
  
   Amigo Gabriel, blz?
   
Estou
   
2007/8/21 Gabriel Monnerat [EMAIL PROTECTED]:
   
  Bom estou com um problema que quem puder me ajudar desde já
 agradeço. Tenhu um produto que nele exitem dois sub-produtos
 folderprofessor e professor. No folderprofessor só pode adicionar 
 o
 arquivo professor. no folder existe um campo carga horarias total, 
 onde
 você coloca o maximo de horas que podem ser usadas pelos professores. 
 O
 problema está ai, quando um professor é adicionado:
 def at_post_create_script(self):
 self.aq_parent.setCarga(int(self.aq_parent.getCarga()) -
 int(self.getCargahoraria()))
  ou seja, a carga do professor é diminuida da total(no folder).
 só que adicionei mais uma função:
 def manage_beforeDelete(self, item, container):
 self.aq_parent.setCarga(int(self.aq_parent.getCarga())
 + int(self.getCargahoraria()))
 BaseObject.manage_beforeDelete(self, item, container)
 CatalogMultiplex.manage_beforeDelete(self, item,
 container)
 -- essa função eu copiei do proprio plone e adicionei para somar
 a carga horaria do professor novamente quando o mesmo fosse deletado.
 Só que quando é adicionado a carga horaria é diminui depois somada
 novamente pela classe manage_beforeDelete e quando o arquivo é 
 apagado
 ocorre corretamente.
 Em suma, porque quando adiciono o objeto ele é diminuido e somado
 novamente e não só diminuir a carga horaria?

 zope 2.9.6
 plone 2.5
 archetypes 1.4

 desde já agradeço a atenção

   
   
   
--
Maurício Victor
http://mauvictor.objectis.net
   
  
  
  
   --
   Maurício Victor
   http://mauvictor.objectis.net
  
 
 
 
  --
  Maurício Victor
  http://mauvictor.objectis.net
 



 --
 Leonardo Miranda
 




-- 
Maurício Victor
http://mauvictor.objectis.net


Re: [zope-pt] problemas com manipulação de funções

2008-02-14 Por tôpico Leonardo Miranda
manda ai  pra me ver como que ta sua função, pois esse problema é que vc nao
chamou o *BaseObject *e o *CatalogMultiplex*..
esta faltando coisa no metodo... *(EU ACHO)*

da uma olhada ai no meu metdo...

security.declarePrivate('manage_beforeDelete')
def manage_beforeDelete(self, item, container):
*BaseObject.manage_beforeDelete(self, item, container)
CatalogMultiplex.manage_beforeDelete(self, item, container)*
#deleta a acao do banco
ano = self.getValueAno
plinvest = self.getValuePlinves
eixo = self.getValueEixo
subeixo = self.getValueSubEixo
agregadora = self.getValueAgregadora
nivel = self.getValueNivelAgregadora
self.delete_historico_acao(ano,plinvest,eixo,subeixo,agregadora,nivel)
self.delete_acao_transversal(ano,eixo,subeixo,agregadora,nivel)

repare as duas primeiras linhas do metodo...

o restante é o que eu quero fazer.. na hora de deletar um archetype...

nao se esqueça de importar:

*from Products.Archetypes.CatalogMultiplex  import CatalogMultiplex
from Products.Archetypes.BaseObject import BaseObject*


Abs,
Leonardo Miranda



2008/2/14 Maurício Victor [EMAIL PROTECTED]:

   Me parece que ao usar o portal_factory quando o objeto temporário é
 apagado ele chama o manage_beforeDelete pra depois chamar o
 post_create_script.

 Até aí tudo bem.
 O problema é que está sendo criado no catalog um registro duplo do objeto.
 No site fica mostrado como se existissem 2 objetos. Somente realizando
 update_catalog que o registro errado é apagado.

 Se eu comento a função manage_beforeDelete tudo volta a funcionar
 normalmente.
 O que eu faço agora? eu preciso da função...



 2008/2/14 Maurício Victor [EMAIL PROTECTED]:

  Opa, o email foi enviado antes de acabar de digitar. Desculpa.
 
  Estou com o mesmo problema que você hoje. Conseguiu resolver?
 
  Só descobri que a função manage_beforeDelete está sendo chamada ao
  adicionar o objeto, o que não está correto.
 
  Seu alguém puder me ajudar...
 
  Plone 2.5.5
  Zope 2.9.8
  Python 2.4.4
 
  2008/2/14 Maurício Victor [EMAIL PROTECTED]:
 
  Amigo Gabriel, blz?
  
   Estou
  
   2007/8/21 Gabriel Monnerat [EMAIL PROTECTED]:
  
 Bom estou com um problema que quem puder me ajudar desde já
agradeço. Tenhu um produto que nele exitem dois sub-produtos
folderprofessor e professor. No folderprofessor só pode adicionar o
arquivo professor. no folder existe um campo carga horarias total, 
onde
você coloca o maximo de horas que podem ser usadas pelos professores. O
problema está ai, quando um professor é adicionado:
def at_post_create_script(self):
self.aq_parent.setCarga(int(self.aq_parent.getCarga()) -
int(self.getCargahoraria()))
 ou seja, a carga do professor é diminuida da total(no folder).
só que adicionei mais uma função:
def manage_beforeDelete(self, item, container):
self.aq_parent.setCarga(int(self.aq_parent.getCarga()) +
int(self.getCargahoraria()))
BaseObject.manage_beforeDelete(self, item, container)
CatalogMultiplex.manage_beforeDelete(self, item,
container)
-- essa função eu copiei do proprio plone e adicionei para somar a
carga horaria do professor novamente quando o mesmo fosse deletado.
Só que quando é adicionado a carga horaria é diminui depois somada
novamente pela classe manage_beforeDelete e quando o arquivo é apagado
ocorre corretamente.
Em suma, porque quando adiciono o objeto ele é diminuido e somado
novamente e não só diminuir a carga horaria?
   
zope 2.9.6
plone 2.5
archetypes 1.4
   
desde já agradeço a atenção
   
  
  
  
   --
   Maurício Victor
   http://mauvictor.objectis.net
 
 
 
 
  --
  Maurício Victor
  http://mauvictor.objectis.net
 



 --
 Maurício Victor
 http://mauvictor.objectis.net
  




-- 
Leonardo Miranda