How to make a warehouse inventory system...?

I’ve been spending quite some time trying to figure out how to make what I need for another project.

I’ve created a warehouse collection with 2 warehouses, and a cargo collection with 2 example items.

Each Cargo entry has a field for which Warehouse it is currently in, as well as its quantity, weight, and itemID

I display both warehouses on the screen at once for testing, but also selectable by a drop-down.

Each warehouse view displays a list of cargo assigned to that warehouse.

So for example both cargo items are in warehouse 1, and none in warehouse 2.

I then made a button to “move” the item from warehouse 1 to warehouse 2 by updating the cargo’s Warehouse field to the selected warehouse.

This works fine, however.

I also want to be able to transfer partial items, so for example having an entry with quantity 5 and weight of 100lbs. Say I only want to transfer a 3 of them at 60 lbs.

I can also do this, which I did with a Modal screen that pops up when you click a second arrow button (one is set for visibility if the entry has a qty of 1 and the other with a qty > 1)

Enter in the qty and weight and it then subtracts those values from the existing warehouse then CREATES a new entry in the other warehouse with the entered items.

Now where I am having trouble is figuring out how to put those items back in the original warehouse by combining them into the entry that already exists, NOT making a new entry.

I can’t figure out how to get the interactions right. Everything I try to do comes down to needing to be able to have multiple conditions on an action or visibility setting which currently isn’t possible with adalo.

Essentially I need it to check if that item already exists in the other warehouse, then add it to the existing entry if it does. I added a field called itemID which I just threw some manually entered random numbers in there to see if I could somehow be able to get it to check that value but I can’t…

Any ideas?

Hi @naossoan ,

Is it possible to create item for every warehouse from the first time the item introduced to the system ?

If yes, you can link them when doing transfer quantity of items between warehouses, because the record is already there.

If no, you need to check with interim screen and report back if it exists, and using different transfer screen for action create or action update, because currently we need to choose how we want to do action, if it is update, we need to grab the linked record first.

Maybe I’m not understanding correctly, but no I do not want to add every item to all warehouses. That kind of defeats the purpose of having multiple warehouses?

This will be expanded to include vehicles. Each vehicle will essentially be a ‘warehouse’ that items can be put into for their load.

Using multiple screens is really not an option. I need to be able to transfer items from one warehouse to another on the same screen. Transferring screens back and forth constantly will be an absolute nightmare for useability.

I’m essentially trying to remake some company software that causes a lot of headaches for people. How that software works is you select which warehouse your cargo is in on one side, select the vehicle you want to move it to on the other side. It then shows you both inventories - warehouse on one side, vehicle (essentially just another warehouse) on the other then you drag and drop items back and forth as needed.

When you drag something that is more than quantity of 1 it asks you how many you want to drag over, and what the combined weight is.

If you drag it back over, it just combines it automatically with the existing entry - no prompts necessary from the user.

Experimenting about this can be different from our assumption.

Interim screen is not interactive, it is batch, just to give us report through hidden input or something else.

It is used then to have conditional action to use it if we do update or just create, it can be in the same screen, if we use visibility and make list to grab the record or it could be modal screen, that looks like the part of previous screen.

I’d have a screen listing the warehouse inventory filtered to that specific product. Have an edit icon in the custom list and push the user to a modal to update the count.

It would be very difficult to do automatically. Plus, users might not want the transfer to be 100%. So let them enter the numbers individually to update the records. If one warehouse hits 0, delete the record.

Yes I am using lists for all kinds of things, and as mentioned, a Modal for selecting quantity and weight…still trying to wrap my head around how to get it to check if the itemID exists in the other list though.

I would make a video capture of my work but I can’t do it now, I’m working on a small, bad, laptop until I go back home…maybe next week.

Do you have a specific recommendation for how I might do it? I’ll try to explain it the best way possible.

  1. Entry is in Warehouse 1 with quantity of 5 and weight of 100 (20 lbs per piece)
  2. Move 3 of those pieces into Warehouse 2, while leaving 2 pieces at 40 lbs in Warehouse 1, and detect whether that itemID already exists in Warehouse 2 and updating it instead of creating a new entry.

For example, what happens now when I move the items back is I end up with 2 entries. One entry for 3 pieces at 60 lbs and another for 2 pieces at 40 lbs.

They need to combine into one entry…

It’s so hard explaining this stuff without being able to walk through the software with you. Wish there was a Discord server or something where I can go and chat with people re: Adalo development and be able to share our desktops and stuff.

I’d do it like the image below. Have a list of products, when they click the product they can see the inventory counts by warehouse. Then they can update those entries accordingly (click one, add items, click the other, remove items).

I think this is doable.

What you need is to check whether an item already exists or not, if it exists you just update, if not, you create.

I would suggest that you make simple cloneable app that represent this issue, then after you are content with it, you can apply the logic to your real app.

As a motivation for you, this is what I did using the same screen manipulation.

While this works in theory, it doesn’t work for the scope of what I’m trying to achieve.

This is for a workplace that has two main warehouses with hundreds of entries, along with about a dozen vehicles that I need to be able to transfer items back and forth quickly from one place to another, while being able to break up an entry containing multiple quantities into partial quantities.

For example, a pallet received as one entry in the system but with 50 individual boxes with say a weight of 500 lbs total so an average weight of 10 lbs per box.

Say I have a vehicle that only has 250 lbs of capacity available but I want to send half that pallet on it, so I can assign that entry to the vehicle but break off 25 pieces at a weight of 250lbs on the truck, while leaving the remaining 25 pieces in the warehouse. Say I make a mistake or change my mind. I want to take those pieces, place them back in the warehouse and merge back into the already existing every. Make sense?

Sorry, it’s difficult to explain but I thank you for your suggestion!

Yes I just don’t know how to get it to detect whether the items already exists or not.

I need to get it to check if the itemID exists but I can’t figure out how to get the data :frowning:

I’m not sure what you are trying to show me with that screen there… But thanks

What I’m doing right now is I have two dropdowns to select which warehouse you want, which then filters a list of cargo assigned to that warehouse.

When I click a button which is to the side of every cargo entry in the list, if the entry has a quantity of 1, it updates its warehouse to be whatever the second drop down has selected.

Like I said this works fine for single quantity items but for anything I want to break up I just can’t wrap my head around how to detect whether the selected warehouse contains that’s itemID.

I’ve looked through and tried literally every menu I can find, the closest being:

Selected warehouse (the “destination”) > cargo > All
Current cargo

But the list just shows nothing even if it does contain a split off piece of cargo so that clearly doesn’t work.

I will have to wait until I’m back home so I can video capture what I’m talking about so it will hopefully make more sense but that’s not until Wednesday or Thursday. My laptop isn’t powerful enough to do all that

Thanks for your suggestions.

1 Like

An important question is whether you care which of the 50 boxes got moved. Is 50 boxes just a quantity or are there 50 real things to track?

Because you can do it two ways. One way you have a quantity and you do math on it. The other way you have 50 records and you just add and delete records.

The answers come from what questions you need to ask of the system. Do you need to know which of the 50 got moved? Do you need to know they got moved and then moved back? Do you need to know which truck the boxes were in at midnight on April 3rd? A box is found damaged. Do you need to know which one? A truck was said to have 25 boxes and at receiving they count 26. Will this database need to come into play and how?

Don’t need to track each individual piece, just need to know how many pieces in total there are.

Anyway, I’ve largely got everything figured out through a combination of nested lists and groups used with various visibility-checks.

I would explain how I’ve done it but it’s too hard to explain in words and I can’t make a video of it on the PC I’m using right now. It’s too slow. I likely will do an overview one I get back to my “real” PC in mid-May.

I’ve moved on to trying to make a calendar of current bookings which I am not confident I will be able to do in Adalo even with the tricks and work arounds I’ve learned. Maybe once they get the State feature implemented or if someone makes a better calendar component it will be possible… Will keep trying at it though.

Basically it needs to be a day by day operations board of half hour timeslots which can contain bookings made by staff. I’ve tried doing something like having a collection of timeslots, using a custom list to display the timeslots, then within that list using another list displaying bookings with that associated timeslot but I can’t figure out how to make it take up multiple timeslots and display it in a graphical way so…still working on that.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.