Help with Check-In/Check-Out System (1 Viewer)

adidab14

New member
Local time
Today, 01:33
Joined
Apr 23, 2019
Messages
7
Hello all,
Basically I need to figure out a way to have employees check out and check in equipment. Ideally, they’ll walk up to a computer open up the form, scan their employee barcode, scan the barcode on the piece of equipment and that will be that. If the equipment is not checked out, it will check it out to them. If the equipment is already checked out (hopefully by them) the form will check it in. If it’s checked out by someone else and they try to check it out (which shouldn’t ever happen), I guess I’d just have a message box pop up and say that it is already checked out. I think if I mess around with it enough I can probably figure out how to check out equipment but I’m having a tough time figuring out how to get it to check the stuff back in. I’ve looked all over the place and can’t quite find something that helps. I’ve got everything else set up the way I want and ready to test, I just need to get the actual tracking system figured out. Any help or ideas would be greatly appreciated!
 

theDBguy

I’m here to help
Staff member
Local time
Today, 01:33
Joined
Oct 29, 2018
Messages
21,357
Hi. Welcome to the forum! When someone checks out an equipment, you could record the date and time in a "CheckOut" field. When they're ready to check it back in, then you can record the information in a "CheckIn" field. So, to find out which equipment record you are dealing with, you can search the table for the same equipment without a CheckIn data. If you find one, then the user is trying to check in the equipment. If you don't find any matching record, then the user is trying to check out the equipment. Hope it makes sense...
 

adidab14

New member
Local time
Today, 01:33
Joined
Apr 23, 2019
Messages
7
Thanks for the reply!
So time in and time out isn't necessarily that important. The critical part is whether or not it is checked out and by who. Right now I have two tables, one with all the inventory information. Another with the employees that will be checking it out. I have it set up so that one person can have multiple items checked out and it will show each item they have checked out (controlled by their barcode). If implementing time in and time out is easier however, then I would happily do it. Would I be able to clear the record once they check it back in? In my head, once they check in the equipment the record would have a check in & check out timestamp on it. I'm having a bit of a hard time seeing how the system would be reused over and over for one piece of equipment.
Thanks again!
 

theDBguy

I’m here to help
Staff member
Local time
Today, 01:33
Joined
Oct 29, 2018
Messages
21,357
Thanks for the reply!
So time in and time out isn't necessarily that important. The critical part is whether or not it is checked out and by who. Right now I have two tables, one with all the inventory information. Another with the employees that will be checking it out. I have it set up so that one person can have multiple items checked out and it will show each item they have checked out (controlled by their barcode). If implementing time in and time out is easier however, then I would happily do it. Would I be able to clear the record once they check it back in? In my head, once they check in the equipment the record would have a check in & check out timestamp on it. I'm having a bit of a hard time seeing how the system would be reused over and over for one piece of equipment.
Thanks again!
Hi. You seem to have contradicted yourself. First you said time in/out is not necessary and then later say "in your head," you see a timestamp being used. In any case, it doesn't matter what you use to indicate check in or out. I just thought a date/timestamp would give you some history info as well. All I was saying is if you record a checkout with a corresponding checkin in the same record, then it would be easier to determine the equipment's current condition/status based on which data is filled in at the moment. As for reusing or checking out the same equipment multiple times, even by the same person, is not going to be a problem. I have a demo showing students checking in and out of a library/office. I'll see if I can find it.
 

adidab14

New member
Local time
Today, 01:33
Joined
Apr 23, 2019
Messages
7
Sorry about that. I meant if I were to try and implement a timestamp the way you described, in my head I see a piece of equipment having both a check in and check out time at the same time (I'm probably thinking about it wrong tho!). I definitely don't need timestamps but they would be nice to have if it isn't too much of a hassle coding it in.
I see what you're saying though I think. If I have a record solely for checked in, and another for checked out, it may be easier to keep track. My main question is how would the coding look to accomplish this?
I've been tinkering with a system where they scan the equipment's barcode, the form looks up the record associated to that barcode, then it autotabs to the barcode of the employee that will be checking it out. They then scan their barcode and the record (hopefully) changes. Then the equipment is linked with that barcode and "checked out" by that person. I'm close but having a bit of trouble getting the form to change the second barcode in the record without getting wonky. But even if I get this to work, checking is going to be a much bigger head ache I think.
If you could find your library/office example that would be awesome! I could really use some examples of how this is done.
 

theDBguy

I’m here to help
Staff member
Local time
Today, 01:33
Joined
Oct 29, 2018
Messages
21,357
Sorry about that. I meant if I were to try and implement a timestamp the way you described, in my head I see a piece of equipment having both a check in and check out time at the same time (I'm probably thinking about it wrong tho!). I definitely don't need timestamps but they would be nice to have if it isn't too much of a hassle coding it in.
I see what you're saying though I think. If I have a record solely for checked in, and another for checked out, it may be easier to keep track. My main question is how would the coding look to accomplish this?
I've been tinkering with a system where they scan the equipment's barcode, the form looks up the record associated to that barcode, then it autotabs to the barcode of the employee that will be checking it out. They then scan their barcode and the record (hopefully) changes. Then the equipment is linked with that barcode and "checked out" by that person. I'm close but having a bit of trouble getting the form to change the second barcode in the record without getting wonky. But even if I get this to work, checking is going to be a much bigger head ache I think.
If you could find your library/office example that would be awesome! I could really use some examples of how this is done.
Hi. What I was saying is, yes, each equipment would definitely have both a check out and check in timestamp at the same time. What it means is this equipment is checked in, currently. Otherwise, it would be checked out. For instance, if we start out with an empty table and we take the first equipment, naturally, at this point, it is being checked out, correct? So, we put a timestamp in the CheckOut field. Now, we have one record in the table representing the first equipment, and it has one timestamp data in the CheckOut field. If we look at that record and see there's data in the CheckOut field and no data in the CheckIn field, we have to assume that particular piece of equipment is currently checked out to the individual using it. Now, when that person is done with the equipment, we scan it and then look for the barcode for this equipment where the CheckIn field is empty. We should find the one record in our table because the barcode and the user matches and the CheckIn field is empty. If so, we can then put a timestamp in the CheckIn field. So, again, if we look at this record in the table, both the CheckOut and CheckIn fields have data for this particular equipment. This will tell us this equipment is currently checked in. If we want to check out the same equipment, the barcode will not match with any records with an empty CheckIn field, which means we are checking it out. So, we put the timestamp in the CheckOut field, and now we have the second record for the same equipment. The first record gives us a history when it was previously checked out and when it was checked in.
 

theDBguy

I’m here to help
Staff member
Local time
Today, 01:33
Joined
Oct 29, 2018
Messages
21,357
I think I found the other thread where I had the demo using the same idea. Check it out. Hope it helps...
 

adidab14

New member
Local time
Today, 01:33
Joined
Apr 23, 2019
Messages
7
Thanks so much! This is some good stuff. I'm gonna try and spend the day tinkering with it to try and figure out how I can incorporate the equipment into it but I think if I mess around with it enough I may be able to get there. Ideally I can use this format to get the employees to scan the equipment and then their barcode on a form just like that and check it out, repeat the process and check it in. We'll see how far I get :D

Thank you so much for your help
 

theDBguy

I’m here to help
Staff member
Local time
Today, 01:33
Joined
Oct 29, 2018
Messages
21,357
Thanks so much! This is some good stuff. I'm gonna try and spend the day tinkering with it to try and figure out how I can incorporate the equipment into it but I think if I mess around with it enough I may be able to get there. Ideally I can use this format to get the employees to scan the equipment and then their barcode on a form just like that and check it out, repeat the process and check it in. We'll see how far I get :D

Thank you so much for your help
Hi. You're welcome. Good luck. Let us know if you get stuck.
 

adidab14

New member
Local time
Today, 01:33
Joined
Apr 23, 2019
Messages
7
Okay, So I've fiddled around with the code some and I've got it working for check out! Right now, you can scan both the barcodes and it will log the time and keep track of who has what checked out, even if they have all sorts of things checked out.
Now comes the tough part (I think!), checking things back in. I'm not sure where to even start with this. Ideally, it would be on the same form but it would make the code pretty tricky for me cause I'd have to check for a bunch of things first and then decide if it should check out or check in. So maybe a separate form for checkout would be better if I can't hack it.
Besides that my big concerns are:
1. How do I make sure each piece of equipment is only checked out to ONE person at a time. I’d have to check the check in/out table for a null value in the checked in field of the most recent record containing that piece of equipment I suppose? Then I could just kill the code and pop a message box saying that it’s already checked out. But I’m not really sure how I would go about searching the table for that null value.
2. How do I check whether or not a piece should be checked out or checked in? I’m guessing I’d have to scan the table for a null value in the checked in time of the most recent record and go from there.
After thinking about it, I think the key is first searching to see if a record exists of anyone checking that out before (if not create a new record), and then searching for a value in the checked in time field. If I can just check and see if the most recent record has a value there, I can decide what to do. If there’s a value there, the piece is currently checked in and can be checked out. If there is no value there (assuming a record of someone checking it out even exists), the piece is checked out and needs to be checked in by putting a value there.
Of course, I could be way overcomplicating things as well :eek:
In any case, thanks so much for your help. I'm off and running and it's thanks in no small part to your help.
 

theDBguy

I’m here to help
Staff member
Local time
Today, 01:33
Joined
Oct 29, 2018
Messages
21,357
Okay, So I've fiddled around with the code some and I've got it working for check out! Right now, you can scan both the barcodes and it will log the time and keep track of who has what checked out, even if they have all sorts of things checked out.
Now comes the tough part (I think!), checking things back in. I'm not sure where to even start with this. Ideally, it would be on the same form but it would make the code pretty tricky for me cause I'd have to check for a bunch of things first and then decide if it should check out or check in. So maybe a separate form for checkout would be better if I can't hack it.
Besides that my big concerns are:
1. How do I make sure each piece of equipment is only checked out to ONE person at a time. I’d have to check the check in/out table for a null value in the checked in field of the most recent record containing that piece of equipment I suppose? Then I could just kill the code and pop a message box saying that it’s already checked out. But I’m not really sure how I would go about searching the table for that null value.
2. How do I check whether or not a piece should be checked out or checked in? I’m guessing I’d have to scan the table for a null value in the checked in time of the most recent record and go from there.
After thinking about it, I think the key is first searching to see if a record exists of anyone checking that out before (if not create a new record), and then searching for a value in the checked in time field. If I can just check and see if the most recent record has a value there, I can decide what to do. If there’s a value there, the piece is currently checked in and can be checked out. If there is no value there (assuming a record of someone checking it out even exists), the piece is checked out and needs to be checked in by putting a value there.
Of course, I could be way overcomplicating things as well :eek:
In any case, thanks so much for your help. I'm off and running and it's thanks in no small part to your help.
Hi. Did you review the "check in" part of the demo? Was there something in there you didn't understand? I believe the demo is using the same form, correct? I haven't looked at the demo in a while but if I remember correctly, you select the name of the student from the dropdown, and the code determines if its going to be a checkin or a checkout. Oh, I guess your situation would be the opposite, so take a look at the "check out" part of the code. Determining if records exist is a simple query. I just use the DCount() function to do it.
 

Users who are viewing this thread

Top Bottom