Hi, I have one problem, Regarding Medical store distributuin Store have two users i mean two sales persons, they are distributing medicine to patients. Store having 50 colpol tablets, both users are trying to sale 40 colpol tablets at a same time, it means 80 tablets but store having 50 colpols only. For this i want reserve the stock while form entry itself,as well as i dont want to use database level. any ruby or rails concept is there....? advance thanks -- Posted via http://www.ruby-forum.com/.
actually, if it is the same database, then there is no way to happen at the same time, right? I don''t know, maybe something like this: class Tablet < ActiveRecord::Base validate :must_have_in_stock def must_have_in_stock qnt = Tablet.find(product_id).quantity erros.add(:quantity, ''There is only '' + qnt + '' in stock.'') if quantity > qnt end end -- Posted via http://www.ruby-forum.com/.
On Jun 15, 7:00 am, Le Sa <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> actually, if it is the same database, then there is no way to happen at > the same time, right? >Unfortunately, not true. Anything working purely at the ruby level (such as a validation) will run into race conditions doing this. One of Rails'' answers to this is optimistic locking (described in the active record api docs). Fred> I don''t know, maybe something like this: > > class Tablet < ActiveRecord::Base > > validate :must_have_in_stock > > def must_have_in_stock > qnt = Tablet.find(product_id).quantity > erros.add(:quantity, ''There is only '' + qnt + '' in stock.'') > if quantity > qnt > end > end > -- > Posted viahttp://www.ruby-forum.com/.
Frederick Cheung wrote:> On Jun 15, 7:00�am, Le Sa <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote: >> actually, if it is the same database, then there is no way to happen at >> the same time, right? >> > Unfortunately, not true. > > Anything working purely at the ruby level (such as a validation) will > run into race conditions doing this. One of Rails'' answers to this is > optimistic locking (described in the active record api docs). > > FredMr. Frederick Cheung thanks for replying, As u said, backend i have validated everythig. the person who submits first get saved and for the second person it should display stock not available.. But my expectation is once the first user has selected the quantity then for the second user the stock displayed should be available quantity minus first user selected quantity. note : This should work before both the users save the form. -- Posted via http://www.ruby-forum.com/.
On Jun 15, 8:28 am, Gopi Govind <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> > As u said, backend i have validated everythig. the person who submits > first get saved and for the second person it should display stock not > available.. > > But my expectation is once the first user has selected the quantity > then for the second user the stock displayed should be available > quantity minus first user selected quantity. > > note : This should work before both the users save the form.Then you''re going to have to spend quite a lot of time coming up with some sort of ajaxy notification thing to track all this. Fred> -- > Posted viahttp://www.ruby-forum.com/.
Frederick Cheung wrote:> On Jun 15, 8:28�am, Gopi Govind <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> > wrote: >> >> � As u said, backend i have validated everythig. the person who submits >> first get saved and for the second person it should display stock not >> available.. >> >> � But my expectation is once the first user has selected the quantity >> then for the second user the stock displayed should be available >> quantity minus first user selected quantity. >> >> note : This should work before both the users save the form. > > Then you''re going to have to spend quite a lot of time coming up with > some sort of ajaxy notification thing to track all this. > > Fredyes mr. Fred for that we need to keep the data commonly for all users , where we can keep except database?. whether we can save it anywhere in our application, that can be editable? -- Posted via http://www.ruby-forum.com/.
Gopi Govind wrote:> Frederick Cheung wrote: >> On Jun 15, 8:28�am, Gopi Govind <rails-mailing-l...-ARtvInVfO7m5VldFQK4jKA@public.gmane.orgt> >> wrote: >>> >>> � As u said, backend i have validated everythig. the person who submits >>> first get saved and for the second person it should display stock not >>> available.. >>> >>> � But my expectation is once the first user has selected the quantity >>> then for the second user the stock displayed should be available >>> quantity minus first user selected quantity. >>> >>> note : This should work before both the users save the form. >> >> Then you''re going to have to spend quite a lot of time coming up with >> some sort of ajaxy notification thing to track all this. >> >> Fred > > yes mr. Fred > > for that we need to keep the data commonly for all users , where we can > keep except database?. > > whether we can save it anywhere in our application, that can be > editable?once our input get saved, then we will detete that user related data from that storage. if we go for data base using ajax it will slow in frontend itself. -- Posted via http://www.ruby-forum.com/.