Index: /trunk/core/promogest/dao/TestataDocumento.py
===================================================================
--- /trunk/core/promogest/dao/TestataDocumento.py (revision 860)
+++ /trunk/core/promogest/dao/TestataDocumento.py (revision 868)
@@ -793,9 +793,11 @@
 
     def delete(self):
-        #print "PARTIAMO DA QUI"
+        print "PARTIAMO DA QUI"
         #testataMovDel = TestataMovimento().select(id_testata_documento = self.id).all()
-
         params['session'].delete(self)
         params['session'].commit()
+
+
+
 
     def filter_values(self,k,v):
@@ -874,5 +876,5 @@
 
 std_mapper = mapper(TestataDocumento, testata_documento, properties={
-        "rigadoc": relation(RigaDocumento, backref="testata_documento"),
+        "rigadoc": relation(RigaDocumento, cascade="all, delete, delete-orphan",backref="testata_documento"),
         "testata_documento_scadenza" :relation(TestataDocumentoScadenza,cascade="all, delete, delete-orphan", backref="testata_documento"),
         "PG":relation(Pagamento,primaryjoin = testata_documento.c.id_pagamento==paga.c.id),
@@ -881,10 +883,10 @@
         "PV":relation(Vettore,primaryjoin = (testata_documento.c.id_vettore==vettore.c.id)),
         "DM":relation(DestinazioneMerce, primaryjoin=(testata_documento.c.id_destinazione_merce==DestinazioneMerce.id)),
-        "TM":relation(TestataMovimento,primaryjoin = (testata_documento.c.id==testata_movi.c.id_testata_documento), backref='TD'),
+        "TM":relation(TestataMovimento,primaryjoin = (testata_documento.c.id==testata_movi.c.id_testata_documento),cascade="all, delete, delete-orphan", backref='TD'),
         "CLI":relation(Cliente,primaryjoin = (testata_documento.c.id_cliente==clie.c.id)),
         "FORN":relation(Fornitore,primaryjoin = (testata_documento.c.id_fornitore==fornitor.c.id)),
         "AGE":relation(Agente,primaryjoin = (testata_documento.c.id_agente==agen.c.id)),
         "OP":relation(Operazione,primaryjoin = (testata_documento.c.operazione==Operazione.denominazione), backref="TD"),
-        "STD":relation(ScontoTestataDocumento,primaryjoin = (testata_documento.c.id==ScontoTestataDocumento.id_testata_documento), backref="TD"),
+        "STD":relation(ScontoTestataDocumento,primaryjoin = (testata_documento.c.id==ScontoTestataDocumento.id_testata_documento),cascade="all, delete, delete-orphan", backref="TD"),
         #'lang':relation(Language, backref='user')
         }, order_by=testata_documento.c.numero)
Index: /trunk/core/promogest/dao/TestataMovimento.py
===================================================================
--- /trunk/core/promogest/dao/TestataMovimento.py (revision 734)
+++ /trunk/core/promogest/dao/TestataMovimento.py (revision 868)
@@ -103,5 +103,5 @@
             #res = params['session'].query(Riga.id_magazzino).filter(or_(Riga.id.in_(mov_query),Riga.id.in_(doc_query))).distinct().count()
             #return res
-        
+
     numeroMagazzini = property(_getNumeroMagazzini)
 
@@ -253,5 +253,5 @@
         "rigamov": relation(RigaMovimento,primaryjoin=
                 testata_mov.c.id==rigamovi.c.id_testata_movimento,
-                cascade="all, delete",
+                cascade="all, delete, delete-orphan",
                 backref="testata_movimento"),
         #"fornitore": relation(Fornitore, backref="testata_movimento"),
Index: /trunk/core/promogest/modules/Inventario/ui/GestioneInventario.py
===================================================================
--- /trunk/core/promogest/modules/Inventario/ui/GestioneInventario.py (revision 866)
+++ /trunk/core/promogest/modules/Inventario/ui/GestioneInventario.py (revision 868)
@@ -900,18 +900,19 @@
                                     idMagazzino=idMagazzino, batchSize=None)
             for s in sel:
-                righeArticoloMovimentate = Environment.params["session"]\
-                    .query(func.max(RigaMovimento.valore_unitario_netto), func.max(TestataMovimento.data_movimento))\
-                    .join(TestataMovimento, Articolo)\
-                    .filter(TestataMovimento.data_movimento.between(datetime.date(int(self.annoScorso),1, 1), datetime.date(int(self.annoScorso), 12, 31)))\
-                    .filter(RigaMovimento.id_testata_movimento == TestataMovimento.id)\
-                    .filter(Operazione.segno=="+")\
-                    .filter(Riga.id_magazzino==idMagazzino)\
-                    .filter(Riga.id_articolo==s.id_articolo)\
-                    .filter(Riga.valore_unitario_netto!=0)\
-                    .all()
-
-                if righeArticoloMovimentate and righeArticoloMovimentate[0][0]:
-                    s.valore_unitario = righeArticoloMovimentate[0][0]
-                    Environment.params['session'].add(s)
+                if s.quantita:
+                    righeArticoloMovimentate = Environment.params["session"]\
+                        .query(func.max(RigaMovimento.valore_unitario_netto), func.max(TestataMovimento.data_movimento))\
+                        .join(TestataMovimento, Articolo)\
+                        .filter(TestataMovimento.data_movimento.between(datetime.date(int(self.annoScorso),1, 1), datetime.date(int(self.annoScorso), 12, 31)))\
+                        .filter(RigaMovimento.id_testata_movimento == TestataMovimento.id)\
+                        .filter(Operazione.segno=="+")\
+                        .filter(Riga.id_magazzino==idMagazzino)\
+                        .filter(Riga.id_articolo==s.id_articolo)\
+                        .filter(Riga.valore_unitario_netto!=0)\
+                        .all()
+
+                    if righeArticoloMovimentate and righeArticoloMovimentate[0][0]:
+                        s.valore_unitario = righeArticoloMovimentate[0][0]
+                        Environment.params['session'].add(s)
             print "VALORIZZA"
             Environment.params['session'].commit()
Index: /trunk/core/promogest/ui/VistaPrincipale.py
===================================================================
--- /trunk/core/promogest/ui/VistaPrincipale.py (revision 864)
+++ /trunk/core/promogest/ui/VistaPrincipale.py (revision 868)
@@ -272,4 +272,18 @@
 
     def on_promogest_button_clicked(self, button):
+        from promogest.dao.TestataDocumento import TestataDocumento
+        daos = TestataDocumento().select(batchSize=1000)
+        if daos:
+            for d in daos:
+                print d
+    #            d.delete()
+                Environment.session.delete(d)
+            Environment.session.commit()
+            print "FINITA QUESTA TRANCE da 1000"
+        else:
+            print "FINITTIIIIIIWW"
+
+
+#        print daos
         return
 #        from promogest.dao.Inventario import Inventario
