Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > 1C: Предприятие, SAP, ERP и учётные системы > Нужен дельный совет!!!


Автор: bucdapus 18.9.2008, 14:46
проблема вот в чем:
есть база 1с бухгалтерия 7,7 (на сервере) в которой ведется учет деятельности торгового предприятия, есть 3 бухгалтера которые работают в своих клиентах, но они могут работать только по очереди так как если один проводит что то то второму не возможно работать так как не дает сохранять??? как им можно помочь чтобы работали одновременно.
Нужны дельные советы!!! а не типа пойди прочитай хелп и т.п...
За помощь спасибо!!!!

Автор: AkelaSQL 18.9.2008, 18:02
В 1 момент времени в 1С77 может проводиться только 1 документ 1 пользователем. Это связано с блокировками...
Как вариант могу предложить сделать распределенные базы, но тогда то-же самое будет происходить во время выполнения автообмена...

Автор: bucdapus 18.9.2008, 18:46
т.е ты хочешь сказать вести счета в разных базах а потом производить совмещение???
да но совмещение прийдется производить в ручную....
можно ли это как то автоматизировать???? если можно то как и где про это узнать по больше??
СПАСИБО,AKELASQL

Автор: sai_NT 18.9.2008, 21:13
Что значит 3 буха работают в своих клиентах, но могут проводить только по очереди?

Если они работают в одной программе 1с, то в семерке есть такой параметр как "Время ожидания захвата таблиц" (в режиме предприятия Сервис- Параметры) поставь ка его на 60 сек. И еще переведи на SQL будет полегче с очередями на модификацию объектов.

Автор: SaschaL 19.9.2008, 05:08
Выставь параметр  "Ожидание захвата". В большинстве случаев  это помогает.

Автор: bucdapus 19.9.2008, 15:07
Это не решение проблемы!!!
как насчет распределенных баз???

Автор: AkelaSQL 19.9.2008, 17:49
Это теория УРБД: http://www.mista.ru/articles1c/urbd.htm

Это как один из вариантов автоматизации автообменов: http://www.urbdmaster.com/

Лично я автоматизирую с помощью нескольких cmd(bat) файлов и виндозного планировщика задач.

Пример файла для запуска автообмена:
call D:\URBDObmen\CMD_PRM\prm_t.cmd T7_Avto80
cd "C:\Program Files\1Cv77\BIN\"
start /wait 1cv7s.exe config /D"\\Server\DATA1C\T7_Avto80\" /NЛогин /PПароль /@D:\URBDObmen\CMD_PRM\URBD_T.prm
Exit

Пример файла(prm_t.cmd) для создания файла параметров(URBD_T.prm):
for /f "tokens=* usebackq" %%i in (`date /t`) do (set maskD=%%i)
for /f "tokens=* usebackq" %%n in (`time /t`) do (set maskT=%%n)
set maskT=%maskT::=%
echo [GENERAL] > D:\URBDObmen\CMD_PRM\URBD_T.prm
echo Output="D:\URBDObmen\LOG\%1 %maskD%%maskT%.log" >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo Quit=Y >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo CheckAndRepair=N >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo UnloadData=N >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo SaveData=N >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo AutoExchange=Y >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo [CheckAndRepair] >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo [UnloadData] >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo [SaveData] >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo [AutoExchange] >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo SharedMode=Yes; >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo ReceiveFrom=; >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo ReadFrom=*; >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo WriteTo=*; >> D:\URBDObmen\CMD_PRM\URBD_T.prm
echo SendTo=; >> D:\URBDObmen\CMD_PRM\URBD_T.prm

О пакетных режимах запуска 1С77 прочитаешь тут: http://www.mista.ru/articles1c/tips.htm

Автор: sai_NT 19.9.2008, 20:51
Цитата(bucdapus @ 19.9.2008,  15:07)
Это не решение проблемы!!!

Ну тогда, батенька, проблемы в головах. Это ж как нужно пахабно писать код чтоб 3 буха не могли одновременно работать. Может пора взяться за оптимизацию?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)