コード例 #1
0
 def check_correctness(self):
     errs = []
     if is_blank(self.name.get_text()):
         errs.append(u'Необходимо указать имя счета')
     vv = self.currency_combo.get_value()
     if is_null_or_empty(vv):
         errs.append(u'Нужно указать название валюты')
     if len(errs) > 0:
         show_error(reduce(lambda a, b:u'{0}\n{1}'.format(a, b), errs), self.window)
         return False
     return True
コード例 #2
0
 def load_open_ru(self, account, filename):
     if not self._parent.connected():
         return
     try:
         xs = sources.open_ru_report_source(filename)
         xs.check_file()
         self._parent.model.get_from_source_in_account(account, xs)
         self._parent.call_update_callback()
     except Exception as e:
         show_error(e.__str__(), self._parent.window.builder.get_object("main_window"))
         print(traceback.format_exc())
コード例 #3
0
 def load_data(self, ):
     """\brief load data into selected account
     """
     account = self.account_control.get_value()
     if account == None:
         show_error(u'You need to select account to load data into', self.window)
         return False
     loader = open_ru_loader()
     try:
         loader.load(self._parent._parent.get_model(),
                     open_ru_source(self.window.get_filename(),
                                    self.account_control.get_value(), # account id
                                    self.repo.get_active(), # load repo deals
                                    self.accounts.get_active())) # load account IO
         return True
     except Exception as e:
         show_and_print_error(e, self.window)
         return False
コード例 #4
0
 def check_correctness(self):
     errs = []
     if not self.price.get_lower_value() > 0:
         errs.append(u'Необходимо указать цену открытия')
     if not self.price.get_upper_value() > 0:
         errs.append(u'Необходимо указать цену закрытия')
     if is_null_or_empty(self.instrument.get_value()):
         errs.append(u'Необходимо выбрать инструмент')
     if is_null_or_empty(self.account.get_value()):
         errs.append(u'Необходимо выбрать класс инструмента')
     if not self.count.get_value() > 0:
         errs.append(u'Неоходимо указать количество бумаг в позиции')
     if len(errs) > 0:
         show_error(reduce(lambda a, b:u'{0}\n{1}'.format(a, b),
                           errs),
                    self.builder.get_object("padder"))
         return False
     else:
         return True
コード例 #5
0
    def check_correctness(self):
        """\brief check if all data inserted correctly
        \retval True all data corect
        \retval False some data incorrect

        When checking, displey message about input mistakes if exists
        """
        mss = []
        if self.account.get_value() == None:
            mss.append(u"Вы должны указать счет")
        if self.instrument.get_value() == None:
            mss.append(u"Вы должны указать инструмент")
        if self.price.get_value() <= 0:
            mss.append(u"Вы должны указать цену контракта")
        if self.count.get_value() <= 0:
            mss.append(u"вы должны указать количество котрактов")
        if len(mss) > 0:
            show_error(reduce(lambda a, b: u"{0}\n{1}".format(a, b), mss), self.builder.get_object("deal_adder"))
            return False
        else:
            return True
コード例 #6
0
 def import_from_old_database(self):
     if self._parent.model.connection == None:
         return
     win = self.builder.get_object("main_window")
     ch = self._parent.model.get_changes()
     if ch > 0:
         show_error(u'Перед импортом нужно завершить транзакцию выполните Rollback или Commit', win)
         return
     diag = gtk.FileChooserDialog(title = u'Открыть базу', parent = win, action = gtk.FILE_CHOOSER_ACTION_OPEN)
     diag.add_button(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL)
     diag.add_button(gtk.STOCK_OPEN, gtk.RESPONSE_ACCEPT)
     fl = gtk.FileFilter()
     fl.add_mime_type('application/x-sqlite3')
     diag.set_filter(fl)
     if diag.run() == gtk.RESPONSE_ACCEPT:
         try:
             self._parent.model.load_from_old_version(diag.get_filename())
         except Exception as e:
             show_and_print_error(e, win)
     diag.destroy()
     fl.destroy()