validation

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

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

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

Frederick Cheung 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

Mr. 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.

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