Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2014, 09:12   #21
Lokos
Форумчанин
 
Регистрация: 29.09.2009
Сообщений: 587
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
а что случиться то с 100500 пользователями? ну запросили, и что?
допустим реч идет о денежных операциях
1 бухгалтер просматривает запись сотрудника и начисляет ему 1000р
в это время 2 бухгалтер просматривает эту же запись и тоже начисляет ему 1000р
это просто грубый пример
Lokos вне форума Ответить с цитированием
Старый 15.05.2014, 09:17   #22
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Lokos Посмотреть сообщение
допустим реч идет о денежных операциях
1 бухгалтер просматривает запись сотрудника и начисляет ему 1000р
в это время 2 бухгалтер просматривает эту же запись и тоже начисляет ему 1000р
это просто грубый пример
ну и какие проблемы.
В таблице документов о начислении будет ДВА документа о начислении сотруднику. У каждого документа будет свой автор (бухгалтер).
Тому, который начислил неверно (полез не в своё дело) дадут по ушам, запись сторнируют.
В чём тут косяк ПРОГРАММИСТА?!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.05.2014, 09:32   #23
Lokos
Форумчанин
 
Регистрация: 29.09.2009
Сообщений: 587
По умолчанию

вы описали добавление новой записи а не изменение существующей.
Да и реч не о примере а о том как избежать одновременной правки одной и той же записи несколькими пользователями

Последний раз редактировалось Lokos; 15.05.2014 в 09:35.
Lokos вне форума Ответить с цитированием
Старый 15.05.2014, 09:41   #24
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
вы описали добавление новой записи а не изменение существующей.
а тут что? было 1000 оно и осталось, нет проблем...

вы правильно подметили надо смотреть на бизнес процесс, и решать в зависимости, а не просто так мол плохо, а ничего плохого как выяснилось и нет
eval вне форума Ответить с цитированием
Старый 15.05.2014, 10:02   #25
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

Если у Вас будет пользователей +100500 то надо будет еще из кэшированием разбираться.
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Старый 15.05.2014, 10:26   #26
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от Lokos Посмотреть сообщение
допустим реч идет о денежных операциях
1 бухгалтер просматривает запись сотрудника и начисляет ему 1000р
в это время 2 бухгалтер просматривает эту же запись и тоже начисляет ему 1000р
это просто грубый пример
при денежных операциях не редактируется запись(работаю в банке, поверьте знаю)
у нас решается это статусами документов, то есть каждый операционист не лезет в чужой документ, а ведет свой с начала.
а так вы просто можете поле locked ввести например.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 15.05.2014, 10:46   #27
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
1 бухгалтер просматривает запись сотрудника и начисляет ему 1000р
в это время 2 бухгалтер просматривает эту же запись и тоже начисляет ему 1000р
Это, стесняюсь спросить, в какой же бухгалтерии такое допустимо? О_о
Расчетчики никогда не пойдут на такое разделение труда, и все начисления делаются между прочим согласно приказам одновременно, а не по человеку.
Поясняю: Программа создает некий документ, в который расчетчик набивает список людей, коим производится начисление (это конечно если речь не идет о постоянных начислениях). Пока этот документ не закрыт - любой из людей имеет право его редактировать как угодно и сколько угодно. Будь там хоть мульен задвоений и переначислений это не важно.
А теперь внимание вопрос - почему?
Да потому что после начислений идет сверка аналитики
И расчетчик, отвечающий за это четко видит, что сумма начислений не сходится.
в результатте закрытый и расчитанный документ начислений разблокировывается, редактируется заново и закрывается пересчитавшись.
Даже если команда расчетчиков будет саботировать друг друга копейки в бухгалтерии не сойдутся, а значит выдавать эти начисления через банки или кассы просто никто не возмется - подсудное дело.
Поэтому я бы не парился насчет блокировок на этом этапе.
Главное - сверка после формирования и пересчета документов, вот тогда док можно залочить на редактирование.

Короче проблема высосана из пальца. Не будет таких ситуаций в реале, ты даже не представляешь как бузи дрожат за каждую копейку.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
INSERT в MySQl базу типа InnoDB. Кодировка. webber9989 PHP 0 09.01.2014 14:45
Конфигурация MySQL InnoDB stepka SQL, базы данных 0 05.06.2011 15:00
Блокировка таблицы Liones БД в Delphi 5 16.07.2010 11:45
блокировка таблицы при одновременном доступе dalien БД в Delphi 3 12.08.2009 16:44