question

Anggoro P avatar image
0 Likes"
Anggoro P asked Anggoro P commented

Tracking product age and age-specific picking logic in inventory

Hi I would like to know the best approach to model of my problem :

I have 1 supply source, 1 warehouse, many customers. Only 1 product that is perishable with limited lifetime. I want to track the product age in warehouse so that I can pick an age-specific product, depending on customer order.

Any idea how to model it?

Choose One
warehouseinventory optimizationperishable
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Steven Hamoen avatar image
0 Likes"
Steven Hamoen answered Anggoro P commented

@Anggoro P Sorry I made a mistake in my previous post. The query should be:

WHERE age < days(10) ORDER BY age DESC

Now in the question of your case, you have to have the token carry the required age and then the query will become:

WHERE age < puller.age ORDER BY age DESC

I attached a simple demo model


· 8
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Anggoro P avatar image Anggoro P commented ·

@steven.hamoen

Thanks! Even I can generate the age based on a particular distribution, right? :)

What I observed from your sample model, the orders come according to inter arrival time distribution. Is it possible to model the order arrival if I have weekly demand quantity distribution, but in the end I would simulate it daily? Previously I just calculated the inverse of it so that I got inter arrival time in week. But the problem is that in reality, demands comes on some specific days, e.g monday and thursday

The idea is that doing dis aggregation from weekly to daily based on historical proportion per day. But I dont know how to put such specific data per day into flexsim

0 Likes 0 ·
Steven Hamoen avatar image Steven Hamoen Anggoro P commented ·

Hi @Anggoro P First of all you can model any arrival pattern you want. The question is just how you can do it. But reading your question I don't understand it exactly.

Maybe you can take a look at the "Schedule Source" in the process flow library. There you can have a schedule for a day for instance and repeat it every 24 hours or even every 164 hours and you can define quantities that arrive. If you know how much arrive on a day but you want to spread them over the day, you can use the scheduled source to let x products arrive and then have a delay with a uniform distribution over 8 hours to have those products arrive randomly over the day.

0 Likes 0 ·
Anggoro P avatar image Anggoro P Steven Hamoen commented ·

@steven.hamoen

I have made a new related question in this tittle:

Repeat schedule resource per week: quantity by percentage (per weekdays)

Would you check it for the detailed question? thanks

0 Likes 0 ·
Show more comments
Show more comments
Steven Hamoen avatar image
0 Likes"
Steven Hamoen answered Anggoro P commented

@Anggoro P use a list to put your products on and give an age field. That way every time you look at the list to pull the next item you can order by age or get a particular product with a particular age. Even easier if you model the logic in process flow.

· 3
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Anggoro P avatar image Anggoro P commented ·

@steven.hamoen

Thanks steven! sorry I am a new user here. Does it mean that the age field will change everyday (if I want to track it daily)?

Also regarding the inventory selection, can I put a specific picking logic for example: I want to pick a product with maximal age of 10 days (means that if it's not sufficient, I need to review the stocks of 9 days old, 8 days old, 7, etc.. and any other customized picking logic

Thanks

0 Likes 0 ·
Steven Hamoen avatar image Steven Hamoen Anggoro P commented ·

@Anggoro P The age is updated everytime you make a pull request to the list so if you make a request every day then it is updated everyday.

And yes you can use queries on pulling so for instance the following query will work:

WHERE puller.age < days(10) ORDER BY age DESC

This will get you the oldest product of all the products that are not older then 10 days

0 Likes 0 ·
Anggoro P avatar image Anggoro P Steven Hamoen commented ·

@steven.hamoen

I got your idea to make a query for inventory selection. What if the case is that everytime order arrives, it comes along with a custom required age. So the pulling query will depend on customer's required age of product. Any idea to generate such a query for every different order?

0 Likes 0 ·