![]() |
|
Переиндексирование автоматом | ☑ | ||
---|---|---|---|---|
0
Никитос
25.08.04
✎
17:57
|
Как проще сделать переиндексирование базы в автоматическом режиме на серваке ночью? (и чтобы пароль не надо было вводить)
А можно ли сделать переиндексирование днем, если что-то случилось, а сисадмина у сервака нет? |
|||
1
Рупор абсурда
25.08.04
✎
18:06
|
Мдя ...
|
|||
2
Никитос
25.08.04
✎
18:16
|
Спасибо за полный, очень умный и грамотный ответ. Так и поступлю. Премного благодарен.
|
|||
3
Рупор абсурда
25.08.04
✎
18:19
|
(2) Обиделся? Извини ...
Я иногда забываю, что обещал Волшебнику чайников не обижать ... :(( |
|||
4
Рупор абсурда
25.08.04
✎
18:21
|
Чтоб сделать переиндексироа=вание обязательным и без вопросов, достаточно убить все индексные файлы ...
Чтоб не надо было вводить пароль, достаточно добавить его в строке запуска ... |
|||
5
Никитос
25.08.04
✎
18:51
|
Нет, не обиделся. Сам в некоторых вещах спец, но не издеваюсь над каждым чайником в этих вопросах по поводу и без. К тому же на форуме эт зачем? Форум же создан для повышения уровня народа, а не для постоянного стёба.
|
|||
6
Рупор абсурда
25.08.04
✎
19:04
|
(5) Да ..., ты прав ...
Над новичками стебаться - западло ... Мне б пита какого-нить опустить или NS'а ... Ну, или АЛьФ'а, на худой конец ... |
|||
7
lemon
25.08.04
✎
19:06
|
(5) одно не исключает другого, нередко возможно удачное сочетание
|
|||
8
Никитос
25.08.04
✎
19:14
|
Про само понятие "переиндексирование" и как его делать мне известно. Вопрос в другом: как ночью запустить 1с в монопольном режиме, не вводить пароль, не отвечаь на запрос о переиндексации, а после выполнения оной - закрыть 1с чтобы разрешить доступ к базе юзерам.
А также: как выполнить то же самое днем, но не автоматически, а лишь если 1с была завершена аварийно (без моего участия) |
|||
9
It is me
25.08.04
✎
19:26
|
(8)Напиши пакетный командный файл, который в первой строчке будет убивать cdx файлы, во второй строчке запускается 1С с ключами /dКаталогБазы /nИмяПользователя /pПарольПользователя. Что типа:
del c:\1cv77\data\*.cdx /q 1cv7.exe /dc:\1cv77\data\ /nИванов /p111 |
|||
10
Никитос
25.08.04
✎
19:34
|
Уже хоть что-то. Спасибо. А как выйти из базы сразу после запуска?
|
|||
11
Z1
25.08.04
✎
19:36
|
(9) Только неувязочка есть переиндексировать базу 1с можно только при монопольном режиме. Лихо ты cdx удаляешь ведь с базой в этот момент может кто-то работать и/или болтаться подвисшая сессия.
сегодня уже дискутировал по аналогич теме ( самая длинная ветка сегодня ) там же и решение. Чуть чуть внимательнее (6) Рупор ты что не отметился в самой длинной ветке ? (Можно ли делать копии с работающей базы (v 7.7)) |
|||
12
ЧеТоКакТо
25.08.04
✎
19:36
|
создаешь еще одну пустую базу(ПБ)-она у тябя будет работать в фоновом режме.
Создаешь там обработку(ОБ) для удаления инднксных файлов в нужной базе(НБ) делаешь обработку ожидания чтобы ровно в 0-00 она запускала ОБ. апосля этого ОБ должна запустить 1С в пакетном режмиме для запуска НБ монопольно. При этом она у тебя ничего не спросит, а тихо переиндексит файлы. Чтобы НБ у тебя закрылась после переиндексации(т.е. после открытия) делаешь какое нибудь условие (вариантов куча) ПриНачалеРаботыСистемы(), и если это условие выполняется, то СтатусВозврата(0); Возврат; По идее должно все работать гладко и без косяков |
|||
13
Никитос
25.08.04
✎
19:40
|
И вообще, в таком случае все стопится на окне с выбором базы...
|
|||
14
SnarkHunter
25.08.04
✎
19:57
|
Да? У тебя же в командной строке и путь к базе прописан и юзер и пароль...
|
|||
15
Z1
25.08.04
✎
20:04
|
(14) Да ошибся в букве или русская буква вот и не срабатывает. еще не помешает
enterprise |
|||
16
It is me
25.08.04
✎
20:08
|
(13)del c:\1cv77\data\*.cdx /q
c:\work\ssv\1cv77.ADM\bin\1cv7s.exe enterprise /dc:\1cv77\data\ /nАдминов /m - рабочий, добавлены ключи enterprise & /m |
|||
17
Рупор абсурда
25.08.04
✎
20:14
|
(11) Читал сегодня ... Мне было очень стыдно за всех вас ...
|
|||
18
wolk
25.08.04
✎
20:27
|
(16) - Вместо /dc:\1cv77\data\ следует писать /dПолныйПутьКТвоейБазеБлин
И ещё: у юзера под которым заходишь (/n) обязательно должен быть непустой пароль без русских букв. |
|||
19
wolk
25.08.04
✎
20:27
|
Или по случайному совпадению твоя база лежит в c:\1cv77\data\ ?
|
|||
20
Никитос
25.08.04
✎
22:31
|
(18) Нет, все дело было именно в (16)
Остался вопрос с выходом из базы... |
|||
21
It is me
25.08.04
✎
22:35
|
(20)Заведи юзера Робот, затем в процедуре ПриНачалеРаботыСистемы проверяй имя юзера и если Робот, то ЗавершитьРаботуСистемы. Если запускаешь ночью, можно делать проверку на время - в полночь мало кто работать будет - так делал.
|
|||
22
Никитос
25.08.04
✎
22:55
|
(21) Гм... А где эта процедура? Вообще, вариант с проверкой времени меня очень даже устраивает, но где сделать эту проверку???
|
|||
23
romix
26.08.04
✎
00:03
|
||||
24
ЧеТоКакТо
26.08.04
✎
00:13
|
(0)А зачем тебе вабще нужна автопереиндексация
|
|||
25
romix
26.08.04
✎
00:15
|
(+23) То есть, надо создать 2 файла - один с расширением bat (можно - cmd), другой - с расширением prm (можно другие расширения).
Первый файл (c расширением bat): @echo off cd "c:\Program Files\1Cv77\BIN\" start /min 1cv7.exe CONFIG /DD:\1C\db /NИмяПользователя /PПарольПользователя / @D:\1C\CMD\xxx.prm Все это - одна большая строка для запуска 1С с параметрами. Содержимое файла D:\1C\CMD\xxx.prm [General] Output=d:\1C\CMD\Log.txt Quit=1 CheckAndRepair=1 UnloadData=0 SaveData=0 AutoExchange=0 [CheckAndRepair] Repair=0 PhysicalIntegrity=1 Reindex=1 LogicalIntegrity=0 RecalcSecondaries=0 RecalcTotals=0 Pack=0 Могут меняться пути к файлам, а также 1cv7.exe (например, 1cv7s.exe для SQL-версии 1С). Подробности - в документации к 1С (если у вас она куплена) или в Яндексе. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |