►
From YouTube: MSI Open Demo. September 22, 2017
Description
Multi Source Inventory (MSI) Open Demo - https://github.com/magento-engcom/msi
Agenda:
- Reservations and Stock services by @aleron75 https://github.com/magento-engcom/msi/wiki/Reservations
- Multi-action and Stock removal, as well as new InventoryCatalog module created by @Bartłomiej Szymański
https://github.com/magento-engcom/msi/wiki/The-Concept-of-Default-Source-and-Domain-Driven-Design
- Travis update for PRs validation by @vnayda
- Contribution to Magento 2 mainline by @iminiailo
A
During
the
current
week
we
were
working
on
implementing
runtime
calculation
of
stock
quantity,
taking
into
account
the
reservations
that
story
was
assigned
to
Alessandra
and
I
believe
Alessandra,
bastarz
presentation
master
says
we
will
talk
about
next
story
in
the
full
course
and
scope
and
we
had
mutant
on
board.
His
name
is
Bartok.
He
drank
awesome
recently
before
the
magenta
peel,
so
he'll
conclude
the
presentation
and
show
his
his
work.
He
he
contributed
urine
this
week.
A
He
actually
delivered
four
pull
requests,
pretty
significant
amount
of
work
done
and
after
that,
Valera
will
show
some
updates
regarding
the
Travis
bills,
and
so
that
now
it's
possible
to
track
your
changes
and
pass
all
the
tests
on
a
Travis
builds
not
locally
and
I
will
show
the
contribution
we
are
going
to
town
for
the
magenta
to
branch.
So
I'm
stop
sharing
my
screen
and
give
a
word
to
the
Alessandra
who
will
control
the
presentation.
Yes,.
C
B
B
We,
what
we
are
going
to
see
now
is
how
reservation
implementation
is,
is
working
up
today.
So
what
we?
What
we
do
now
is
starting
from
a
blank
situation
without
any
entity
related
to
the
stock.
We
create
all
the
entities
and
we
at
the
end,
we
will
see
a
demo
of
simulation
of
what
will
happen
during
checkout
and
other
events
like
that
which
have
an
impact
on
reservation
and
stock
quantities.
So,
first
of
all,
let's
go
to
the
source
management
and,
let's
insert
some
sources.
B
B
B
For
example,
in
kids,
so
it's
in
a
cranium
location
and
ok.
Now
we
have
created
our
three
physical
product
sources
that
we
will
use
later
to
associate
products
talks
to
to
these
sources,
but
before
doing
that,
let's
create
our
Wiltord
variations
that
we
call
stock
restorer
aggregations
represent.
Ok,
these
are
our
three
warehouses.
B
B
B
B
B
B
B
Now
I
will
intentionally
generate
an
error
just
to
show
you
something
Oh.
So
what
I
do
is
appending
some
reservations,
that's
something
that
will
happen
in
the
future,
triggered
by
domain
events
just
like
placing
an
order,
but
at
the
moment
the
only
way
we
have
to
simulate
this
is
by
invoking
the
service
directly.
So
it
asks
me
for
a
product,
so
I
have
this
simple
product.
B
B
Ok,
but
ok,
thank
you
anyway.
We
we
here
we
the
demo,
wouldn't
have
run
anyway,
because
we
have
a
letter
here.
As
you
can
see,
we
we
have
the
propagation
of
this
low
level
error
up
to
the
reservation,
that's
something
that
we
will
fix
in
the
in
the
very
few
in
the
near
future.
What's
missing
here,
we
created
our
stock,
but
we
didn't
create
the
indexation.
We
didn't
run
the
indexation
process,
so
actually
Magento
doesn't
know
anything
about
his
stock,
this
stock
data
and,
if
I
go
to
my
database.
B
B
This
is
the
one
for
Italy
that
show
our
aggregation
of
of
Italian
sources
and,
if
you
remember,
we
had
one
hundred
in
Milan
and
fifteen
modern
and
the
total
quantity
of
products
is
150,
and
we
also
have
this
aggregation
for
the
Ukrainian
warehouse
that
has
only
one
source
with
200
products.
So
now
I
can
run
again
the
demo
this
time
this
time,
I
try
to
avoid
making
mistakes.
B
Okay,
this
is
my
skew
and
I
want
to
know.
I
would
want
to
work
with
stock
number.
Six,
that's
Italian
in
this
moment
the
the
survey.
The
reservation
service
is
coal.
That
asks
for
the
total
quantity
of
simple
product
the
service
that
is
used.
Is
this
one
that
I
show
you.
This
is
the
interest
of
the
service
get
product
quantity
in
stock
interface,
the
actual
implementation?
Is
this
one?
B
It
delegates
delegates
the
calculation
to
to
to
resource
models
that
calculate
into
the
total
quantity
in
our
stock,
and
this
is
taken
from
the
index
table
and
the
total
quantity
of
reservation
and
disease
taken
from
the
reservation
table.
I
can
show
you
that
in
the
at
this
moment,
we
don't
have
any
row
in
the
reservation
table,
so
we
can
continue
with
our
demo.
B
So
at
this
point
the
service
tells
me
that
we
no
more
have
150
products,
but
we
have
150
minus
5,
plus
3
okay,
so
the
actual
number
of
of
stock
quantity
is
150
here
in
the
reservation,
table
I
have
the
two
rows
that
I
created
and
let's
pay
attention
that
in
the
index
table
we
still
have
150,
even
if
I
run
the
indexation
here,
because
reservation
are
aren't
taking
into
account
during
indexation.
Okay
I
run
reservation.
Again
I
refresh
is
that
about.
Is
that
doesn't
change,
because
reservation
is
something
that
is
calculated
at
runtime,
so.
B
Another
thing
that
can
be
interesting
to
to
show
is
that
if
I
run
again,
the
demo
and
I
ask
you
to
work
with
simple
product
and
with
stock
ID
6.
It
tells
me
as
before,
that
I
have
100
148
and,
if
I
return
to
more
of
this
product,
the
total
quantity
now
here
is
150,
just
like
it
was
before,
but
I
have
in
the
reservation,
table
three
rows
whose
sum
is
zero
at
this
point.
B
D
A
C
C
C
C
C
A
Great,
actually,
your
new
module
will
help
us
to
continue
work
for
the
default
stock
and
default
source
concept.
As
I
understand.
You
already
did
too
some
from
the
story
regarding
introducing
the
default
sources
correctly.
Yeah
we'll
help
us
to
the
sea
brigade
concept
of
the
the
inventory
and
the
catalog
inventory.
So
this
new
module
will
help
us
to
to
make
a
more
modular
food
and
all
that
catalog
dependent
code
would
not
be
located
in
the
inventory
module.
So
it's
pretty
important,
modularity
change.
We
we
so
the.
D
Next
worry,
yeah,
egress
I
had
one
question
so
far
saying
that
was
really
great.
Thank
you
on
our
default
grid
actions.
You
demonstrated
the
mass
action
of
delete
and
we
have
select
all
deselect
all
and
then
select
all
on
this
page
and
deselect
all
on
this
page.
Those
will
only
display
when
there's
more
elements
than
can
be
displayed
on
the
current
page
nation
setting.
So
it's
just
something
that
we
should
test
in
your
grid
example.
D
F
D
F
F
B
F
A
Guys
so
it
is
probably
pretty
good
update
for
the
contributors.
So
now,
when
you
are
making
a
pull
request,
please
pay
attention
for
Travis
bills
because
now
Travis
bills
supposed
to
represent
the
current
state
of
the
testing
beyond
run
on
your
pool
request.
So
the
testing
will
show
the
possible
failure
on
unit
test
builds
on
integrational
test
builds
and
I
on
a
static
test
builds.
So
you
can
check
whether
your
code
contribution
not
breaking
anything
in
the
existing
magenta
as
well
as
existing
MSI.
A
Okay,
so
the
last
part,
probably
I,
can
show
it.
So
today
we
deliver
the
pool
request
so
with
the
actually,
this
pool
request
not
exactly
to
the
MSI,
but
these
are
technical
improvements
for
the
magenta
tooth
development,
so
the
pool
request,
number
1100
3,
and
here
we
introduced
in
a
bunch
of
bug,
fixes
and
improvements.
We
face
it
with
you,
the
MSI
development,
and
we
decided
that
it
would
be
pretty
good
to
have
them.
B
A
In
the
main
line,
so
it's
going
to
be
delivered
to
the
to
the
to
that
one
but
release,
and
all
that
feature
all
that
bug
fixes
and
improvements
have
been
approved
by
Anton
creel.
So
one
of
the
things
we
are
going
to
deliver
to
the
main
line
is
a
our
small
validation
framework.
So
we
have
a
description
of
this
framework
in
our
wiki
page
and
we
had
a
small
demo
earlier
regarding
that
validation
and
the
possibility
to
achieve
multiple
exception
and
multiple
errors
out
of
all
the
services.
A
So
we
are
going
to
deliver
the
possibility
to
the
mainline
as
well,
and
so
here
we
have
a
bunch
of
fixes
for
the
problems
we
faced
with
during
the
MSI
development.
But
it's
gonna
be
deliberated,
so
we
created
that
pool
request
for
the
magenta
tutor
and
we
are
not
so
we
msi
is
not
blocking
this
delivery
to
the
tutor
to
that
one,
because
actually
these
are
general
stuff
and
not
related
to
them
Assizes.
A
A
We
will
I
believe
we'll,
leave
this
story
and
would
cross
it
out
now,
because
we
have
small
story
depth
regarding
the
inclusion
of
the
integration
test
and
also
we
have
tasks
regarding
the
cleaning
out
a
reservation.
So
as
Alex
Alessandra
show
you
that
we
need
to
have
a
possibility
to
clean
out
a
reservation
which
will
already
be
in
place
and
not
still
keep
this
storage
of
reservation
increasing
infinitely.
A
So
we
would
not
close
this
story
yet,
but
actually
most
most
of
the
business
value
provided
by
this
story
already
was
presented
by
alessandra
during
this
presentation
and
we
will
continue
working
on
the
food
source
and
default
stock.
So
actually
Bartek
already
show
you
that
we
introduce
introduced
new
Morial
and
actually
all
the
development
would
be
done
in
the
scope
of
that
module.
So
here
we
have
this
technical
vision
and
description
on
this
cooler
story.
D
B
A
Since
it's
really
nice
to
hear
such
feedbacks,
okay
and
as
I
understand
the
Lars
his
equation
regarding
the
testing
framework
in
testing
approach,
I
believe
we
can
discuss
it
after
this
demo.
So
if
there
are
no
any
other
open
question,
thank
you
for
participation.
Thank
you
for
Demma
and
presenting
story.
It
was
really
great.
Thank
you
all
the
guys
who
were
involved
in
the
process
and
thank
you
for
your
contribution.