CORE-POS / IS4C

Cooperative Operational Retail Environment
http://www.core-pos.com
GNU General Public License v2.0
64 stars 44 forks source link

Call Agenda 30May14 #350

Closed gohanman closed 10 years ago

gohanman commented 10 years ago

Primary discussion topic is multistore item management. We plan to use screenshare to look at how some existing systems work.

Summary of some methodologies discussed:

  1. One record per-product per-store. This approach is in use at Harvest.
  2. One master record per product, plus an additional per-store record. This is an approximation of what SMS does. Its approach sounds more denormalized than CORE but that's outside the scope of representing per-store customizations to products.
  3. One master table of all products with one record per product, and one supplementary table at each store representing products sold in that store. This is the approach used by Counter Point.
  4. One master record per product, plus an additional per-store record only if customizations are needed. This was my own initial suggestion and it can probably be dismissed. There's deduplication, but disk space is cheap and it's not that much data to justify the extra complexity. The other three approaches have all been used successfully in real operations, too.

I find (3) appealing aesthetically, although it adds some minor backend complexity. A server would need to know whether or not it's the master to determine where to save its edits. Using per product, per store records each store could simply be assigned an ID and always edit the appropriate record.

chaploeb commented 10 years ago

My apologies for missing the call today-- I had planned to show Counterpoint's item schema along with some external tools used by Weavers Way to handle certain per-store issues. An offsite meeting I was in with our management team ran much longer than expected and I'm just getting back to my desk now-- my apologies for not being able to present today. If possible I'd love to hear a brief summary of where we went with this today, and I can promise to be available for the next call if people still want to see our stuff.

gohanman commented 10 years ago

Not a problem. I brought #352 to everyone's attention. It has become less pressing for me as some internal projects changed shape, but I think it's still worth getting opinions on what an ideal membership structure should look like. @DavidHermann suggested that decoupling discount from member type with a table of valid discounts and foreign keys to each in the membership record.

We talked extensively about a company Harvest is dealing with called Instacart that is a personal shopping service. Members [of Harvest] tell Instacart what they want, freelancers loosely associated with Instacart pick it up and deliver it. Notable wrinkles:

The solution we ultimately settled on was adding a comment to the transaction as an Instacart tag but otherwise ringing it up under the member's account. I don't think it's ideal but the situation is tricky.

chaploeb commented 10 years ago

Thanks for the recap, especially of the Instacart conversation (we've been talking about working with them, so hearing what Harvest is running into is really helpful).

roberski commented 10 years ago

Wow, I totally spaced this one. Thanks for the write up.