(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Настройка системы для увеличения быстродействия при работе с деревом папок

Источник: dvprofessionals

Для подсветки непрочитанных карточек в папке, для каждого пользователя, выполняется SQL процедура, которая определяет и подсчитывает количество непрочитанных пользователем карточек. Выполнение этой процедуры, влияет на время загрузки дерева папок, навигацию по вложенным узлам дерева папок, отображение содержимого папки, особенно для папок с большим количеством карточек.

Для увеличения быстродействия при работе с деревом папок рекомендуется отключать подсветку непрочитанных карточек на всех папках системы, кроме личных папок пользователей.

Ниже приведен скрипт, отключающий подсветку непрочитанных карточек на всех папках, кроме личных папок пользователей.

 
01.SET XACT_ABORT ON;
02. 
03.IF OBJECT_ID('dbo.FolderInfo') IS NULL
04.BEGIN
05.  CREATE TABLE dbo.FolderInfo
06.  (
07.      FolderID uniqueidentifier PRIMARY KEY
08.     ,Flags    int NULL
09.  )
10.END
11. 
12.DECLARE @Folders TABLE (Id uniqueidentifier PRIMARY KEY)
13. 
14.-- Select folders from UserProfile card
15.INSERT @Folders(Id)
16.SELECT DISTINCT DefaultFolderID
17.FROM dbo.[dvtable_{C64843C3-484F-45E0-9B8A-900EA91BE54D}] WITH(NOLOCK)
18.WHERE DefaultFolderID IS NOT NULL;
19. 
20.BEGIN TRAN;
21. 
22.-- Backup old folder flags
23.WITH UserFoldersTree(FolderID, NestLevel)
24.AS
25.(
26.  SELECT
27.      Id
28.     ,1
29.  FROM @Folders
30. 
31.  UNION ALL
32. 
33.  SELECT
34.      RowID
35.     ,tPrev.NestLevel + 1
36.  FROM dbo.[dvtable_{FE27631D-EEEA-4E2E-A04C-D4351282FB55}] tFld WITH(NOLOCK)
37.  JOIN UserFoldersTree tPrev ON tPrev.FolderID = tFld.ParentTreeRowID
38.)
39.INSERT dbo.FolderInfo
40.(
41.  FolderID
42. ,Flags
43.)
44.SELECT
45.  RowID
46. ,Flags
47.FROM dbo.[dvtable_{FE27631D-EEEA-4E2E-A04C-D4351282FB55}] tFld WITH(NOLOCK)
48.LEFT JOIN UserFoldersTree tUserFld ON tUserFld.FolderID = tFld.RowID
49.WHERE tUserFld.FolderID IS NULL
50. 
51.-- Switch off Unread count
52.UPDATE tFld
53.SET Flags = ISNULL(tFld.Flags, 0) / 4 -- NO_UNREAD_COUNT flag
54.FROM dbo.[dvtable_{FE27631D-EEEA-4E2E-A04C-D4351282FB55}] tFld WITH(TABLOCK)
55.JOIN dbo.FolderInfo tInfo WITH(NOLOCK) ON tInfo.FolderID = tFld.RowID
56. 
57.IF @@ERROR <> 0
58.  ROLLBACK TRAN;
59. 
60.COMMIT TRAN;

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 14.10.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
ABBYY Lingvo x6 Европейская Профессиональная версия, электронный ключ
Oracle Database Personal Edition Named User Plus Software Update License & Support
go1984 pro
SAP Crystal Reports XI R2 Dev 2006 INTL WIN NUL License (Version 11)
IBM DOMINO COLLABORATION EXPRESS AUTHORIZED USER LICENSE + SW SUBSCRIPTION & SUPPORT 12 MONTHS
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Visual С++
Краткие описания программ и ссылки на них
Компьютерная библиотека: книги, статьи, полезные ссылки
ЕRP-Форум. Творческие дискуссии о системах автоматизации
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100