Имя: Пароль:
1C
1С v8
ошибка блокировок таблицы в 1с
, ,
0 nlira
 
26.01.12
16:28
файловый вариант. Как исправить эту беду? 2 день пользователи у меня не могут работать. При проведении документов зависает конкретно и выдает эту ошибку
1 nlira
 
26.01.12
16:30
попробовала ChDBFl.exe - не помогло
2 depthzer0
 
26.01.12
16:30
ТиИ?
3 nlira
 
26.01.12
16:31
что за ТиИ?
4 Живой Ископаемый
 
26.01.12
16:31
2(1,2) что, если потестировать базу, то в файловом варианте при проведении документа не станут таблицы блокироваться целиком?
5 depthzer0
 
26.01.12
16:32
(4) хз, может быть реиндексация поможет
6 depthzer0
 
26.01.12
16:32
(3) Тестирование и исправление
7 Живой Ископаемый
 
26.01.12
16:34
2(5) поможет настолько что таблицы не станут блокироваться? а только конкретные записи? Точно?
8 nlira
 
26.01.12
16:41
при проведении любых доков зависает прога. Затем пишет: мол ошибка блокировки таблицы Jornal58 допустим
9 nlira
 
26.01.12
16:42
боженька помоги. Поставила на тестирование и исправление
10 Живой Ископаемый
 
26.01.12
16:42
2(8) даже когда один пользователь в базе?
11 nlira
 
26.01.12
16:43
когда я сама только сижу, у меня нет проблем. А когда пользователи подключаются - ну прямо беда
12 rs_trade
 
26.01.12
16:44
(9) мы будем молиться за тебя ))
13 Живой Ископаемый
 
26.01.12
16:44
2(11) сколько пользователей?
14 nlira
 
26.01.12
16:44
10 примерно.
15 nlira
 
26.01.12
16:44
в среднем 8-9
16 Живой Ископаемый
 
26.01.12
16:47
2(14,15) ну так а почему вы думаете что ваша ситуация не штатная?
17 nlira
 
26.01.12
16:47
дали 2 часа времени. Блински, я вот думаю а может мне еще сохранить БД а потом прогрузить снова?
18 nlira
 
26.01.12
16:48
2 дня мучились в итоге попало в нос по самое не могу
19 nlira
 
26.01.12
16:48
я про операторов,что они мучились
20 Живой Ископаемый
 
26.01.12
16:49
2(17) еще насыпьте зерна кругом и на всякий случай треугольником, один из способов точно поможет
21 nlira
 
26.01.12
16:49
До этого все хорошо работало, пока не написала общую функцию проверки на существование документа с таким-то номером. И на эту функцию обращаются разные документы.
22 Живой Ископаемый
 
26.01.12
16:50
а...
23 Reset
 
26.01.12
16:50
опа!
24 Reset
 
26.01.12
16:50
ну, тогда ТиИ точно поможет)
25 nlira
 
26.01.12
16:51
(24) правда! Значит сейчас я на правильном пути.
26 Живой Ископаемый
 
26.01.12
16:51
2(24) и зерна кругом - стопудов... круг как раз от функций по проверке номеров...
27 Reset
 
26.01.12
16:51
(25) Это сарказм, простите
28 nlira
 
26.01.12
16:52
сейчас реиндексирует. Я на всякий случай поставила все галочки, кроме персчета итогов и за ним какую то не отметила
29 nlira
 
26.01.12
16:52
блин ну что же делать то?
30 nlira
 
26.01.12
16:53
(27) я на работе погибну.
31 Живой Ископаемый
 
26.01.12
16:53
продолжайте трансляцию... это по крайней мере весело
32 nlira
 
26.01.12
16:56
функция по проверке номеров что делает? ищет указанный номер в этом году, и передает ссылку на этот док.
33 nlira
 
26.01.12
16:56
и все
34 Живой Ископаемый
 
26.01.12
16:57
о... отличный способ....
А как долго она это делает?
35 nlira
 
26.01.12
16:57
после этого если есть такой док и проведен, то ничего не делается. Если не проведен то добавляется инфо и записывается док программно. И все
36 nlira
 
26.01.12
16:58
это делает быстро, я проверяла отладчиком. Застревает при проведении документа, абсолютно левого
37 nlira
 
26.01.12
16:58
в котором даже нет этой проверки
38 nlira
 
26.01.12
16:59
да и вообще любого документа при проведении
39 shuhard
 
26.01.12
17:00
(37) верни всё как было, ты своим кривым запросом блокируешь всю базу
40 nlira
 
26.01.12
17:00
с чего это кривой запрос. Вот сейчас выложу
41 Живой Ископаемый
 
26.01.12
17:01
2(40) он кривой потому что после него все стало плохо
42 nlira
 
26.01.12
17:02
Функция ПоискЗаданиеНаОтгрузку(Контрагент,Номер) Экспорт
   Запрос = Новый Запрос;
   Если Контрагент <>Неопределено Тогда
       ВставкаВЗапрос = "
       |    И ЗаданиеНаОтгрузку.Контрагент = &Контрагент";
   Иначе
       ВставкаВЗапрос = "";
   КонецЕсли;
   Запрос.Текст = "ВЫБРАТЬ
   |    ЗаданиеНаОтгрузку.Ссылка КАК Ссылка
   |ИЗ
   |    Документ.ЗаданиеНаОтгрузку КАК ЗаданиеНаОтгрузку
   |ГДЕ
   |    ЗаданиеНаОтгрузку.Дата >= &Дата
   |    И ЗаданиеНаОтгрузку.НомерДокументаКлиента = &Номер "+ ВставкаВЗапрос + "
   |
   |УПОРЯДОЧИТЬ ПО
   |    Ссылка УБЫВ";
   Если Контрагент <>Неопределено Тогда
       Запрос.УстановитьПараметр("Контрагент",Контрагент );
   КонецЕсли;
   Запрос.УстановитьПараметр("Номер",СокрЛП(Номер));
   Запрос.УстановитьПараметр("Дата",НачалоГода(ТекущаяДата()));
   Результат = Запрос.Выполнить().Выгрузить();
   Если Результат.Количество() > 0 Тогда
       рез =  Результат[0].ссылка;
   Иначе
       рез = "";
   КонецЕсли;
   Возврат рез;
КонецФункции
43 Живой Ископаемый
 
26.01.12
17:02
2(35) то есть внутри проведения документа документ записывается программно?
44 nlira
 
26.01.12
17:02
ну и чего тут кривого?
45 nlira
 
26.01.12
17:03
43 нет
46 Живой Ископаемый
 
26.01.12
17:04
2(45) то есть вы пишите то чего нет?
47 depthzer0
 
26.01.12
17:05
(7) нет конечно
48 nlira
 
26.01.12
17:05
не внутри проведения. А просто записывается программно. А потом пользователи проверяют и проводят сами.
49 nlira
 
26.01.12
17:07
(42) чего кривого?
50 Живой Ископаемый
 
26.01.12
17:07
2(48) вы смотрели доктора хауса?
51 nlira
 
26.01.12
17:21
(50) ну вот,сразу доктор хаус
52 nlira
 
26.01.12
17:22
понятное дело что при проведении сначала док записывается, если вы про это
53 Fragster
 
гуру
26.01.12
17:23
терминал?
54 nlira
 
26.01.12
17:25
(53)? что?
55 nlira
 
26.01.12
17:28
ладно, если не получится - отпишусь. Еще вопрос, как мне урезать БД. А то она распухает с 2008 года
56 Живой Ископаемый
 
26.01.12
17:28
Нет, я не про это...
Я про то как он диагностирует... Например можно выявить вирус - есть реагенты на все 400 известных... но это заставляет нас сделать 400 экспериментов, что требует времени... Либо можно например предположить наиболее вероятные болезни - на основании среды (или изменений среды)и дать лекарство и быть готовым к реакции огранизма на это лекарстов, например есть два наиболее вероятных заболевания.. но пока точно не известно какое из них. если одно - то лекарство его вылечит, если другое, то например ухудшится что-то другое, но тогда мы успеем а) отменить лекарство, б) будем точно знать что это вторая из веротяных болезней, и тогда мы точно знаем как лечить...


В вашем случае рецепт совсем простой - закоментарить к монахам весь ваш недавний копрокод, и пустить пользователей... И если блокировок не будет, то значит таки виноват он... И тогда уже на копии баы ставить эксперименты почему блокировки могут возникать
57 nlira
 
26.01.12
17:33
(56) понятно. Все таки я сомневаюсь, но вы правы. Закменчу если что. Так до этого проблем не было, вместо этой функции стояло вот это:
НовыйДок = Документы.ЗаданиеНаОтгрузку.НайтиПоРеквизиту("НомерДокКлиента", НомерКлиента);
58 nlira
 
26.01.12
17:34
а найтиПоРеквизиту находит только один элемент найдет элемент 2010 года и дальше пошел код, хотя элемент есть в 2012 году
59 Живой Ископаемый
 
26.01.12
17:34
2(57) конечно я могу быть не прав.. но просто проверить можно только единственным способом.. если вы закоментарите и блокировки продолжаться.. Но если такое будет, тогда этому есть другое объяснение - пора переходить на клиент-серверный вариант
60 nlira
 
26.01.12
17:34
я поэтому и пристроила эту функцию, чтбы искал только на 2012 год. Остальное молоимущий фактор
61 Живой Ископаемый
 
26.01.12
17:35
2(58) избавьте меня от этой парнухи.. Нет никакого желания знать какой она была и какой стала, не зная всей задачи целиком
63 nlira
 
26.01.12
17:37
(59) вы правы на 100%. спасибо. А (62) вообще офигел
64 nlira
 
26.01.12
17:37
(62) иди на свой матрас и спи
65 nlira
 
26.01.12
17:42
(61) Раньше нумерация документов была уникальная. а теперь в течении года только уникальна.
Задача такая: при загрузке заявок проверяется есть ли док с таким номером, если есть, то табл часть очищается и добавляются данные. Если нет то создается док, заполняется табл часть и записывается.
66 nlira
 
26.01.12
17:43
и все, чего не понятно. Неужели из-за этого будут блокироваться данные?
67 nlira
 
26.01.12
17:44
(66) продолжение - блокируется не только при проведении задания на отгрузку но и всяческие другие документы
68 Живой Ископаемый
 
26.01.12
17:46
2(66) они будут буквально блокироваться из-за того, что в файловом варианте , когда проводиться документ, то блокируется ВСЯ ТАБЛИЦА целиком этого вида документа, а также регистров, для которых он является регистратором.
И если вы вдруг как-то увеличили время проведения (транзакции), то другой пользователь, который попытается провести документ и будет например использовать тот же регистр - схватит блокировку... Правда это не должно привести к вылету программы.
69 Vovan1975
 
26.01.12
17:46
ну в запросе нелишне использовать "Выбрать первые 1" вместо выбрать....
70 Живой Ископаемый
 
26.01.12
17:47
2(67) да плевать. используется РИБ, используется например РБ Хозрасчетный, или РС Версионирование - те другие документы включены в состав планаобмена/делают проводки по РБ Хозрасчетный/Делают записи в версионирование - все, возможность для блокировок обеспечена
71 Vovan1975
 
26.01.12
17:48
потом я бы посмотрел что просходит В сробытии ПриЗаписи() ПередЗаписью() этой вашей заявки...
72 nlira
 
26.01.12
17:50
как прервать тестирование и исправление? Если через диспетчер задач скину, ничего не произойдет? Что то очень долго
73 nlira
 
26.01.12
17:50
сейчас идет проверка логической целостности
74 Vovan1975
 
26.01.12
17:50
и вообще, сортировать в вашем случае нуна по дате а не по ссылке...
75 nlira
 
26.01.12
17:51
(74) да
76 nlira
 
26.01.12
17:52
(72) 73 если прерву, ничего не случится или еще хуже испорчу?
77 hhhh
 
26.01.12
17:53
(75) а вот это поле в документе

НомерДокументаКлиента

у вас точно-точно проиндексировано?
78 БибиГон
 
26.01.12
17:53
лучше дождать окончания
79 Живой Ископаемый
 
26.01.12
17:54
да лучше было и не начинать вообще сейчас.. спроси ее - что она хотела этим добиться - не ответит же..
80 nlira
 
26.01.12
17:54
(77) да, проиндексировано.
81 nlira
 
26.01.12
18:08
(77) какая разница? НомерДокКлиента - ревизит должен быть проиндексирован обязательно если выбираю методом Выбрать(ДатаНач,ДатаКон,отбор,сортировка)
82 nlira
 
26.01.12
18:38
УРА,заработало!!! Выгрузила конфу и тут же загрузила. И УРА!!! О БОЖЕ!!! УРА!!!
83 nlira
 
26.01.12
18:38
СПАСИБО ВСЕМ!!!
AdBlock убивает бесплатный контент. 1Сергей