示例#1
0
    def ChoiceSprav(self,
                    SpravName_,
                    ParentForm_=None,
                    default_selected_code=None):
        """
        Вызов выбора значения справочника по имени.
        @param SpravName_: Имя справочника.
        @param ParentForm_: Родительское окно для формы редактирования справочника.
        @param default_selected_code: Выбранный код по умолчанию.
            Если None, то ничего не выбирается.
        @return: Функция возвращает выбранный код справочника
            или None в случае ошибки или если нажата кнопка <Отмена>.
        """
        if ParentForm_ is None:
            ParentForm_ = ic_user.icGetMainWin()

        choice_sprav = self.getSpravByName(SpravName_)
        if choice_sprav:
            result = choice_sprav.Choice(
                parentForm=ParentForm_,
                default_selected_code=default_selected_code)
            if result[0] == coderror.IC_CTRL_OK:
                return result[1]
        else:
            log.warning(u'Справочник <%s> не найден в менеджере <%s>' %
                        (SpravName_, self.name))
        return None
示例#2
0
 def Admin(self,
           ParentForm_=None,
           Title_=u'Администрирование справочников',
           MsgTxt_=u'Выберите справочник для редактирования:'):
     """
     Администрирование справочной системы, описываемой данным менеджером.
     @param ParentForm_: Родительское окно для формы редактирования справочника.
     """
     if ParentForm_ is None:
         ParentForm_ = ic_user.icGetMainWin()
     spravs = self.getContainer().getAll().values()
     choice_str = [
         sprav.name + u' - ' +
         sprav.description if sprav.description else u'' for sprav in spravs
     ]
     idx = ic_dlg.icSingleChoiceIdxDlg(ParentForm_, Title_, MsgTxt_,
                                       choice_str)
     if idx >= 0:
         edit_sprav = spravs[idx]
         log.info(u'Редактирование справочника: %d %s' %
                  (idx, edit_sprav.name))
         try:
             edit_sprav.Edit(ParentForm_=ParentForm_)
         except icexceptions.MethodAccessDeniedException:
             wx.MessageBox(
                 u'У пользователя [%s] нет прав на редактирвоние справочников.'
                 % ic.getCurUserName())
示例#3
0
def showReestrBrowser(MetaClass_):
    """
    Вывод формы браузера реестра.
    """
    #metaObj=prs.icCreateObject('reestr_doc','mtd') #IMetaplan.IMetaplan()
    metaclass = MetaClass_  #mydocsreestr.IMyDocsReestr()
    metaObj = metaclass.getObject()
    #    cls=browser.ReestrBrowser(None, 'metadata_plan',
    #                            metaObj=metaObj,
    #                            treeRootTitle='Структура планов',
    #                            treeLabels=['Планы'])
    print('>>>', metaObj.name)
    browser = ReestrBrowser(ic_user.icGetMainWin(),
                            metaObj.name,
                            metaObj=metaObj,
                            treeRootTitle='',
                            treeLabels=[''])

    #   Определяем функции пересчета модифицированных планов по базовому
    #brows.recountFunc = planUtils.genModifPlan
    #brows.recountModifPlanYear = planUtils.genModifPlanYear
    #brows.recountAllModifPlanMnth = planUtils.genAllPlanMonth

    # Устанавливает у метадерева указатель на браузер.
    #metaclass.SetUserData({'mode':'planning', 'browserInterface':brows})
    obj = browser.getObject()
    ic_user.icAddMainOrgPage(obj, u'Реестр документов')
示例#4
0
def icCloseProgressBar(Label_=''):
    """
    Закрыть прогресс бар.
    @param Label_: Надпись статусной строки.
    """
    main_win = ic_user.icGetMainWin()
    if main_win:
        return main_win.status_bar.closeProgressBar(Label_)
示例#5
0
def browseDocJournal(DocJournalRes_):
    '''
    Открыть журнал документов в режиме управления документами.
    @param DocJournalRes_: Имя ресурса журнала документов.
    '''
    doc_jrnl = icResourceParser.icCreateObject(DocJournalRes_, 'mtd')
    print('!!', doc_jrnl)
    doc_jrnl.Browse(ParentForm_=ic_user.icGetMainWin())
示例#6
0
def icUpdateProgressBar(Label_='', Value_=-1):
    """
    Обновить прогресс бар.
    @param Label_: Надпись статусной строки.
    @param Value_: Значение.
    """
    main_win = ic_user.icGetMainWin()
    if main_win:
        return main_win.status_bar.updateProgressBar(Label_, Value_)
示例#7
0
def icOpenProgressBar(Label_='', Min_=0, Max_=100):
    """
    Открыть прогресс бар статусной строки.
    @param Label_: Надпись статусной строки.
    @param Min_: Минимальное значение.
    @param Max_: Максимальное занчение.
    """
    main_win = ic_user.icGetMainWin()
    if main_win:
        return main_win.status_bar.openProgressBar(Label_, Min_, Max_)
示例#8
0
    def EditSprav(self, SpravName_, ParentForm_=None):
        """
        Вызов редактирования справочника по имени.
        @param SpravName_: Имя справочника.
        @param ParentForm_: Родительское окно для формы редактирования справочника.
        """
        if ParentForm_ is None:
            ParentForm_ = ic_user.icGetMainWin()

        edit_sprav = self.getSpravByName(SpravName_)
        if edit_sprav:
            return edit_sprav.Edit(ParentForm_=ParentForm_)
        else:
            log.warning(u'Справочник <%s> не найден в менеджере <%s>' %
                        (SpravName_, self.name))
        return None