Имя: Пароль:
1C
1С v8
Медленная работа 1с8.2
0 lakich
 
09.03.13
14:37
Есть обработка простая
СпрН = Справочники.Номенклатура.Выбрать();
   
   Пока СпрН.Следующий() Цикл
       
       Товар=СпрН.ПолучитьОбъект();
       Товар.Удалить();
       
       
   КонецЦикла;
Пытаюсь чистить Спр Номенклатуры,чистит но оочень медленно,и вообще почему 8.2 так медленно работает..???
1 lakich
 
09.03.13
14:39
может в обработке что не так?
2 Miss1C
 
09.03.13
14:39
(0) Записей много, поэтому и долго
3 Miss1C
 
09.03.13
14:40
СпрН.Количество(), что показывает отладка?
4 lakich
 
09.03.13
14:40
12 тысяч,это вместе с группами..вроде ни о чем??
5 Miss1C
 
09.03.13
14:41
(4) Ну не скажи, прилично записей)
6 Miss1C
 
09.03.13
14:41
(4) Запросом пробовал?
7 lakich
 
09.03.13
14:42
семерка вертела их на раз..закачал в 8.2,теперь хочу почистить и уже рабочую базу делать-и вот чищу..(
8 lakich
 
09.03.13
14:42
нет,не пробовал
9 lakich
 
09.03.13
14:43
конфа файловая,на самом сервере лежит,все локально..ппц просто
10 Miss1C
 
09.03.13
14:44
(8) Попробую запросом данные выбрать
11 lakich
 
09.03.13
14:45
попробую обязательно..других вариантов нет?
12 Miss1C
 
09.03.13
14:46
(11) Прямой запрос не предлагаю)
13 Miss1C
 
09.03.13
14:47
Попробуй в запросе выбрать порциями, первые 4000 например
14 lakich
 
09.03.13
14:47
а вообще почему 8.2 так медленно работает?открытие доков,справочников,база по сути пустая?
15 Miss1C
 
09.03.13
14:47
(14) У меня на старой работе быстро работала
16 Miss1C
 
09.03.13
14:48
(14) Конфа и платформа какая?
17 Defender aka LINN
 
09.03.13
14:48
(14) Потому что вы базу на 386DX40 держите?
18 lakich
 
09.03.13
14:48
8.2 ут 11.09.15
19 lakich
 
09.03.13
14:49
8.2.16.368
20 Defender aka LINN
 
09.03.13
14:49
(18) Там при удалении, кажись, хренова гора всего делается. Загляни в модуль
21 lakich
 
09.03.13
14:50
не там,ксеоны е5-2620 и 32 гига оперы
22 Miss1C
 
09.03.13
14:51
(21) закомментируй процедуру ПриУдалении
23 Miss1C
 
09.03.13
14:52
+(22) В модуле Объекта и попробуй удалить своей обработкой
24 lakich
 
09.03.13
14:52
ок,попробую..спасибо
25 probably
 
09.03.13
15:41
+(20) и попробуй транзакциями
26 Sol78
 
09.03.13
16:09
в своём цикле допиши:

СпрН.ОбменДанными.Загрузка = Истина;
27 Живой Ископаемый
 
09.03.13
17:13
а зачем их удалять?
ну удаляй в транзакции порциями по 100-500
28 Живой Ископаемый
 
09.03.13
17:14
2(78) ну только
Товар.ОбменДанными.Загрузка = Истина;
29 kiruha
 
09.03.13
18:27
(0)
Выборка формируется динамически.
Результат Вашей обработки вообще непредсказуем.

Сначала надо сформировать список номенклатуры - например ТЗ,
а потом только удалять

Удалять порциями по 100-200 элементов в транзакции

Если ссылок точно нет - заходишь в менеджмент студио
TRUNCATE TABLE
только это на свой страх и риск(!)
30 Живой Ископаемый
 
09.03.13
19:59
2(29) а как менеджемент студио подключить к файловой базе? есть ОДБС-драйвера?
31 kiruha
 
09.03.13
22:39
(30)
В заголовке не было про файловую
для файловой видел где то попытки написания драйверов
по типу доступа как у
Tool_1CD http://infostart.ru/public/19633/
32 Живой Ископаемый
 
09.03.13
22:43
и что, это правда годный метод удалить 12 тысяч элементов справочника? Вы рекомендуете такой всем и сами им пользуетесь?
33 Кокос
 
09.03.13
22:45
(0) а заключить код в

НачатьТранзакцию()
ЗафиксироватьТранзакцию()

пробовал?
34 H A D G E H O G s
 
09.03.13
22:46
УстановитьПривилегированныйРежим(Истина);
Запрос=Новый Запрос;
Запрос.Текст=
"Выбрать Товары.Ссылка Из Справочник.Номенклатура как Товары";
МассивСсылок=Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
УдалитьОбъекты(МассивСсылок);
УстановитьПривилегированныйРежим(Ложь);
35 kiruha
 
09.03.13
23:18
(32)
Сам могу. Другим не рекомендую
Для них
"Сначала надо сформировать список номенклатуры - например ТЗ,
а потом только удалять

Удалять порциями по 100-200 элементов в транзакции "
36 Живой Ископаемый
 
10.03.13
07:52
2(35) именно от того что он е делает первое у него медленно?
37 vogenut
 
10.03.13
18:33
(0)

1. Удаляй все в транзакции
2. Попробуй 8.2.18
38 Speshuric
 
10.03.13
20:14
(0)
1. Запустить код на сервере, желательно в привилегированном модуле или режиме, а не на клиенте.
2. Ссылки выгрести лучше запросом (Выборка слишком много лишнего делает).
3. Удалять в одной транзакции или в крупных транзакциях
4. ОбменДанными.Загрузка = Истина (если обмен не требуется)
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой