def finish(self): missing = get_missing_items(self.model, self.store) if missing: run_dialog(MissingItemsDialog, self, self.model, missing) return False invoice_ok = InvoiceSetupEvent.emit() if invoice_ok is False: # If there is any problem with the invoice, the event will display an error # message and the dialog is kept open so the user can fix whatever is wrong. return # FIXME: If any issue happen at any point of the "send process", # trying to issue it again would make some products have their stock # decreased twice. Make sure we undo it first. # The issue itself was related to missing stock. Why get_missing_items # failed above? self.store.savepoint('before_send_transfer') try: self.model.send() except Exception as e: warning(_("An error happened when trying to confirm the transfer"), str(e)) self.store.rollback_to_savepoint('before_send_transfer') raise self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(self.model) # Commit before printing to avoid losing data if something breaks self.store.confirm(self.retval) self._receipt_dialog(self.model)
def finish(self): missing = get_missing_items(self.model, self.store) if missing: run_dialog(MissingItemsDialog, self, self.model, missing) return False order = TransferOrder( open_date=self.model.open_date, receival_date=self.model.receival_date, source_branch=self.model.source_branch, destination_branch=self.model.destination_branch, source_responsible=self.model.source_responsible, destination_responsible=self.model.destination_responsible, store=self.store) for item in self.model.get_items(): transfer_item = order.add_sellable(item.sellable, quantity=item.quantity, batch=item.batch) transfer_item.send() # XXX Waiting for transfer order receiving wizard implementation order.receive() self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(order) self._receipt_dialog(order)
def finish(self): missing = get_missing_items(self.model, self.store) if missing: run_dialog(MissingItemsDialog, self, self.model, missing) return False order = TransferOrder( open_date=self.model.open_date, receival_date=self.model.receival_date, source_branch=self.model.source_branch, destination_branch=self.model.destination_branch, source_responsible=self.model.source_responsible, destination_responsible=self.model.destination_responsible, store=self.store) for item in self.model.get_items(): transfer_item = order.add_sellable(item.sellable, batch=None, quantity=item.quantity) transfer_item.send() # XXX Waiting for transfer order receiving wizard implementation order.receive() self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(order) self._receipt_dialog(order)
def finish(self): missing = get_missing_items(self.model, self.store) if missing: run_dialog(MissingItemsDialog, self, self.model, missing) return False self.model.send() self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(self.model) self._receipt_dialog(self.model)
def finish(self): missing = get_missing_items(self.model, self.store) if missing: run_dialog(MissingItemsDialog, self, self.model, missing) return False self.model.send() self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(self.model) # Commit before printing to avoid losing data if something breaks self.store.confirm(self.retval) self._receipt_dialog(self.model)
def finish(self): missing = get_missing_items(self.model, self.store) if missing: run_dialog(MissingItemsDialog, self, self.model, missing) return False invoice_ok = InvoiceSetupEvent.emit() if invoice_ok is False: # If there is any problem with the invoice, the event will display an error # message and the dialog is kept open so the user can fix whatever is wrong. return self.model.send() self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(self.model) # Commit before printing to avoid losing data if something breaks self.store.confirm(self.retval) self._receipt_dialog(self.model)
def finish(self): order = TransferOrder( open_date=self.model.open_date, receival_date=self.model.receival_date, source_branch=self.model.source_branch, destination_branch=self.model.destination_branch, source_responsible=self.model.source_responsible, destination_responsible=self.model.destination_responsible, store=self.store) for item in self.model.get_items(): transfer_item = TransferOrderItem(store=self.store, transfer_order=order, sellable=item.sellable, quantity=item.quantity) order.send_item(transfer_item) #XXX Waiting for transfer order receiving wizard implementation order.receive() self.retval = self.model self.close() StockTransferWizardFinishEvent.emit(order) self._receipt_dialog(order)