Would anyone be willing to assist me in developing a bookkeeping app?

I’m currently working on an app with the following features:

POS System
Inventory Tracker
Proceeds Reporting

I already have the designs, screens, and components set up, but I’m struggling with the blocks. This app is part of our research project, and we’re hoping to finish it within a month.

If anyone is willing, our modes of communication can be Discord, Google Meet, or here (since I believe we can personally message users on this platform).

Any guidance, tips, or collaboration would be greatly appreciated! :pray:

Your next step should be setting up a data model and data base.

Hi everyone,

I’m running into a few issues with my inventory tracker app and could really use some help:

  1. When I press the Cancel button, it also removes the Product, Service, and Resource buttons.
  2. When I input an item in the Add Item section, it only goes to the Products list and also duplicates the last item I added.
  3. When I try to add something, the texts aren’t lining up the way I want, a space seems to be needed.
  4. My phone and tablet often disconnect from AI Companion mode

I’m not sure what I did wrong. Any advice or guidance would be greatly appreciated! :sweat_smile:

Thank you so much!




No need to make another topic. I merged them.

(Canned Reply: ABG- Export & Upload .aia)
Export your .aia file and upload it here.
export_and_upload_aia

Got it, here it is!

LYFE_APP.aia (1.8 MB)

I seem to be stuck establishing a Companion connection with this app screen Inventory on the code server:

I settled on giving your code a good read.

Here's a Cleaned up Blocks Download, more scroll friendly for those of us with one dimensional scroll wheels:

1 Like

Let's start with an important block when you use CloudDB: the CloudDB Error event.

I made this one generic, because you have 3 CloudDB instances.

Note the JOIN tricks I used to label my two important pieces of information into YAML format, easy to read and easy to parse.

1 Like

Next, an exercise in futility, displaying empty lists that have not yet received their contents from CloudDB:

The Get Value blocks are needed, but there is nothing else to be done until the Values arrive back from CloudDB.

1 Like

Here's where you add inventory entries to your three CloudDB lists:

I have disappointing news for you.
See those supposedly blank text blocks separatting the data within each inventory item?
They're all empty (zero length) text, so everything is jammed together.
AI2 text blocks get trimmed, like it or not, so you have to go back and reinsert blanks into them.

Better yet would be to format the items as YAML (see previous post), to make them easier to read and parse.

My kids used to follow this approach (dump it all on the floor) with their winter coats, until I installed coat hooks and assigned each kid a few coat hooks.

The CloudDB list value allows for no optimization through direct access to list items.

But you are writing an inventory app. What is the life history of these lists? How do they change day by day? Will they be totally rewritten each end of month by someone taking stock after the store has closed? Or will they be continually updated each time some one takes an item or two out from inventory? Will the list have to be sorted and summarized to get a total stock quantity by item name and type?

Let's look at your Delete button event:

Interesting tag you've got there.

It's a shame there will never be a tag matching any of your ListView Selection Elements, since you only have the three constant tags
image
in your data bases.

Since you load your ListViews fromeach of the three lists you keep extending, each ListView Element will be whatever fomatted text you use to add an inventory item.

No, there is no native CloudDb search capability.
You either have to pick finer grained tags, or use the ListView SelectionIndex to determine which list index should be removed, before rewriting the entire list back to CloudDb while hoping no one else with this app is trying to do the same thing at another index.

Regarding those global lists, where did you get the idea they would magically have the matching list item removed from them, before you try to refresh your ListView from them?

Thank you for the questions! To clarify how I envision the inventory working:

  • The inventory should update live and constantly change. It will be connected to the POS system, so when someone purchases a product (or possibly a service), the stock will automatically be deducted from the inventory.
  • For products, the purchase should also deduct the needed resources from inventory. I’m still figuring out if “services” should also be deductable.
  • I’d like to include a “Clear All” or “Reset All” feature, but I’m hesitant since participants might accidentally click it.
  • I don’t think I’ll have enough time to add advanced sorting features. However, the inventory list can already be filtered by type (Product, Service, or Resource).

This app is meant as a prototype for our school’s Business Expo, where student-entrepreneurs will be using it to track their sales and bookkeeping during the event. However, if it proves effective, it has the potential to be developed further into a more complete bookkeeping system beyond just the prototype stage.

I’m sorry if my coding is incorrect :sweat_smile:. I’m still a student and don’t have much experience with MIT App Inventor yet. Thank you for pointing it out and for taking the time to explain. I really appreciate your patience! If possible, could you please show me how I can fix it step by step? That would mean a lot.

If multiple people will be using it for their own businesses, how will you keep their books apart from each other?

What POS system?

How does the POS system communicate?

I suggest you watch some of the short videos on
this search for "introduction to inventory stsrems"

https://www.google.com/search?q=introduction+to+inventory+systems

1 Like

There will be a login system to separate the users’ data. For the proceeds report, I was thinking of using Google Sheets. Since one spreadsheet can hold up to 200 sheets, each new account could be assigned its own sheet within that spreadsheet. For the business expo, there will only be 15 groups using the app, so only 15 sheets will be needed.

All the features in the app are connected. The POS system works like an ordering screen — when a user clicks on a product or service, a pop-up will appear asking for the quantity and resources. Once confirmed, that amount will be deducted from the inventory automatically.

Inventory: For products, this is straightforward since they are quantifiable (e.g., if you sell 2 cupcakes, 2 units are deducted from the product list). For resources, my plan is to only track quantifiable items, such as packaging materials (e.g., boxes, cups, or bags). So if a product uses 1 box, the system can also deduct 1 box from the resource list. For services, since they are usually not “deducted” like physical items, they would mainly be recorded for sales tracking purposes.

Additionally, the POS system will also communicate with the proceeds report so that every sale is automatically logged and reflected in the financial records.

Since this is just a prototype for our Business Expo, the main goal is to demonstrate that the POS, inventory, resources, and proceeds report can all be updated together in one system.

Will do! Thank you for the help