def setDao(self, dao): if dao is None: self.dao = Magazzino() self._refresh() else: # Ricrea il Dao con una connessione al DBMS SQL self.dao = Magazzino().getRecord(id=dao.id) self._refresh() return self.dao
class AnagraficaMagazziniEdit(AnagraficaEdit): """ Modifica un record dell'anagrafica dei magazzini """ def __init__(self, anagrafica): AnagraficaEdit.__init__(self, anagrafica, 'Dati magazzino', root='anagrafica_magazzini_detail_table', path='_anagrafica_magazzini_elements.glade') self._widgetFirstFocus = self.denominazione_entry def draw(self, cplx=False): pass def setDao(self, dao): if dao is None: self.dao = Magazzino() self._refresh() else: # Ricrea il Dao con una connessione al DBMS SQL self.dao = Magazzino().getRecord(id=dao.id) self._refresh() return self.dao def _refresh(self): self.denominazione_entry.set_text(self.dao.denominazione or '') self.indirizzo_entry.set_text(self.dao.indirizzo or '') self.localita_entry.set_text(self.dao.localita or '') self.cap_entry.set_text(self.dao.cap or '') self.provincia_entry.set_text(self.dao.provincia or '') self.pvcode_entry.set_text(self.dao.pvcode or '') def saveDao(self, tipo=None): if (self.denominazione_entry.get_text() == ''): obligatoryField(self.dialogTopLevel, self.denominazione_entry) daoEsistente = Magazzino().select(denominazione=self.denominazione_entry.get_text()) if daoEsistente: messageInfo(msg="""ATTENZIONE!! Un magazzino con lo stesso nome esiste già Verrà aggiornata la precedente.""") del self.dao self.dao = daoEsistente[0] self.dao.denominazione = self.denominazione_entry.get_text() self.dao.indirizzo = self.indirizzo_entry.get_text() self.dao.localita = self.localita_entry.get_text() self.dao.cap = self.cap_entry.get_text() self.dao.provincia = self.provincia_entry.get_text() self.dao.pvcode = self.pvcode_entry.get_text() self.dao.persist() def on_contatti_togglebutton_clicked(self, toggleButton): if posso("CN"): toggleButton.set_active(False) if self.dao.id is None: msg = 'Prima di poter inserire i contatti occorre salvare il magazzino.\n Salvare ?' if YesNoDialog(msg=msg, transient=self.dialogTopLevel): self.on_anagrafica_complessa_detail_dialog_response(self.dialogTopLevel, GTK_RESPONSE_APPLY) else: toggleButton.set_active(False) return from promogest.ui.Contatti.AnagraficaContatti import AnagraficaContatti anag = AnagraficaContatti(self.dao.id, 'magazzino') anagWindow = anag.getTopLevel() showAnagraficaRichiamata(self.dialogTopLevel, anagWindow, toggleButton) else: fencemsg() toggleButton.set_active(False)