Вход | Регистрация


1С:Предприятие ::

Метки:

Переиндексирование автоматом

Я
   Никитос
 
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'а ...
Ну, или АЛьФ'а, на худой конец ...
   lemon
 
7 - 25.08.04 - 19:06
(5) одно не исключает другого, нередко возможно удачное сочетание
   Никитос
 
8 - 25.08.04 - 19:14
Про само понятие "переиндексирование" и как его делать мне известно. Вопрос в другом: как ночью запустить 1с в монопольном режиме, не вводить пароль, не отвечаь на запрос о переиндексации, а после выполнения оной - закрыть 1с чтобы разрешить доступ к базе юзерам.
А также: как выполнить то же самое днем, но не автоматически, а лишь если 1с была завершена аварийно (без моего участия)
   It is me
 
9 - 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
Уже хоть что-то. Спасибо. А как выйти из базы сразу после запуска?
 
  Рекламное место пустует
   Z1
 
11 - 25.08.04 - 19:36
(9) Только неувязочка есть переиндексировать базу 1с можно только при монопольном режиме. Лихо ты cdx удаляешь ведь с базой в этот момент может кто-то работать и/или болтаться подвисшая сессия.
сегодня уже дискутировал по аналогич теме ( самая длинная ветка сегодня ) там же и решение. Чуть чуть внимательнее
(6) Рупор ты что не отметился в самой длинной ветке ? (Можно ли делать копии с работающей базы (v 7.7))
   ЧеТоКакТо
 
11 - 25.08.04 - 19:36
создаешь еще одну пустую базу(ПБ)-она у тябя будет работать в фоновом режме.
Создаешь там обработку(ОБ) для удаления инднксных файлов в нужной базе(НБ)
делаешь обработку ожидания чтобы ровно в 0-00 она запускала ОБ.
апосля этого ОБ должна запустить 1С в пакетном режмиме для запуска НБ монопольно. При этом она у тебя ничего не спросит, а тихо переиндексит файлы.
Чтобы НБ у тебя закрылась после переиндексации(т.е. после открытия) делаешь какое нибудь условие (вариантов куча) ПриНачалеРаботыСистемы(), и если это условие выполняется, то  СтатусВозврата(0); Возврат;
По идее должно все работать гладко и без косяков
   Никитос
 
13 - 25.08.04 - 19:40
И вообще, в таком случае все стопится на окне с выбором базы...
   SnarkHunter
 
14 - 25.08.04 - 19:57
Да? У тебя же в командной строке и путь к базе прописан и юзер и пароль...
   Z1
 
15 - 25.08.04 - 20:04
(14) Да ошибся в букве или русская буква вот и не срабатывает. еще не помешает
enterprise
   It is me
 
16 - 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) Читал сегодня ... Мне было очень стыдно за всех вас ...
   wolk
 
18 - 25.08.04 - 20:27
(16) - Вместо /dc:\1cv77\data\ следует писать /dПолныйПутьКТвоейБазеБлин
И ещё: у юзера под которым заходишь (/n) обязательно должен быть непустой пароль без русских букв.
   wolk
 
19 - 25.08.04 - 20:27
Или по случайному совпадению твоя база лежит в c:\1cv77\data\ ?
   Никитос
 
20 - 25.08.04 - 22:31
(18) Нет, все дело было именно в (16)
Остался вопрос с выходом из базы...
   It is me
 
21 - 25.08.04 - 22:35
(20)Заведи юзера Робот, затем в процедуре ПриНачалеРаботыСистемы проверяй имя юзера и если Робот, то ЗавершитьРаботуСистемы. Если запускаешь ночью, можно делать проверку на время - в полночь мало кто работать будет - так делал.
   Никитос
 
22 - 25.08.04 - 22:55
(21) Гм... А где эта процедура? Вообще, вариант с проверкой времени меня очень даже устраивает, но где сделать эту проверку???
   romix
 
23 - 26.08.04 - 00:03
   ЧеТоКакТо
 
24 - 26.08.04 - 00:13
(0)А зачем тебе вабще нужна автопереиндексация
   romix
 
25 - 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С (если у вас она куплена) или в Яндексе.



Список тем форума
  Рекламное место пустует
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует