Exemplo n.º 1
0
def _onInitSpravTree(obj, bRefresh=True):
    """ 
    Обработчик события инициализации дерева справочника.
    """
    try:
        evalSpace = obj.GetContext()
        sprav = evalSpace[CONTEXT_SPRAV_NAME]
        _tab = sprav.getStorage()._tab

        tree = evalSpace.GetObject(SPR_TREE_NAME)
        tree.GetParent().Freeze()
        tree.begin_load()
        sprav_tree = sprav.getStorage().getLevelTree()
        tree.LoadTree(sprav_tree)
        tree.GetParent().Thaw()
        # Получить таблицу
        level_tab_tuple = sprav.getStorage().getLevelTable(None)
        level_tab = [list(rec) for rec in level_tab_tuple]
        if level_tab is not None:
            grid = evalSpace.GetObject(SPR_GRID_NAME)
            # Устанвливаем буфер изменений, [0] - задает список индексных колонок
            buff = icsimpledataset.CChangeBuff([0])
            grid.GetDataset().set_change_buff(buff)
            dataset = grid.GetDataset()
            if dataset:
                dataset.SetDataBuff(level_tab)
            #
            len_cod = sprav.getLevelByIdx(0).getCodLen()
            grid.GetDataset().SetStructFilter({'cod': [len_cod]})
            if bRefresh:
                grid.RefreshGrid()
    except:
        ic_log.icLogErr(u'Ошибка инициализации дерева справочника.')
Exemplo n.º 2
0
    def test_CChangeBuff(self):
        """ test ."""
        r1 = data[0]
        r2 = data[1]
        buff = icsimpledataset.CChangeBuff([0])
        buff.reg_add(r1)
        k1 = ('1', )
        self.failUnlessEqual(buff.add_rows_dct[k1], r1)
        buff.reg_del(r1)
        self.failUnlessEqual(buff.del_rows_dct[k1], r1)
        self.failUnlessEqual(k1 in buff.add_rows_dct, False)

        buff.reg_update(r1)
        self.failUnlessEqual(buff.update_rows_dct[k1], r1)

        buff.reg_add(r1)
        self.failUnlessEqual(k1 in buff.del_rows_dct, False)
        self.failUnlessEqual(k1 in buff.update_rows_dct, True)
Exemplo n.º 3
0
def spravGrid_onInit(obj, evt):
    # Устанавливаем буфер изменений у датасета
    buff = icsimpledataset.CChangeBuff([0])
    obj.context.GetObject(SPR_GRID_NAME).GetDataset().set_change_buff(buff)