I’d like to finally show what is my first application for MMbasic that wasnt even meant for the PicoCalc, it has since been rebranded for the PicoCalc. I’ve always had a fascination with ERP systems due to a previous workplace I was employed at, they used an ancient AS/400 running on an even older IBM server. Something about the endless greenscreens encaptured my imagination which led to me wanting to source a copy for myself, I then realized I dont have the money nor the space to host my own AS400 machine. Since then I’ve spent hundreds of hours trying to find an alternative that satifised that itch, I dabbled in Python, C & even a tad of Assembly to try and re-create what the AS400 did for me, none of which worked how I wanted it to. It was until last year around December when I came across the PicoCalc & purchased one for the sole idea of creating my OWN erp system that I have invisioned. Now, its by no means perfect theres still a butt load of stuff to do but it’s finally in a presentable state, I will be showing off screenshots & help examples, the repo is listed under the pictures. I do have to note that Claud 4 helped with comments & the conversion (I paid 2$ for tokens) but the original code is completely written & owned by me. I hope y’all like it.
I welcome you to, cERP an ERP created orignally for MMBasic but converted to the PicoCalc.
I’d also like to note, the system utilities are actually real, it reads current memory usage / database.txt usage for size & last edit dates etc. I am still slowly updating this to be compatable with the PicoCalc, heres the list of whats left to do.
WIP
Proper F-key functions, I’m having a difficult time getting the F keys to work hence me typing in F5, F10 etc..
Screen shots are limited to 99 per folder due to random number gen
The random number gen for the screenshots is due to the lack of an RTC
Employee automatic ID, In the MMBasic version I had an incrementing auto ID for adding new employees, Order ID & Invoice ID. I can’t figure out why it wont work on the PicoCalc.
Current memory usage is “normal” Program memory is 78% free, Vars is 100% & RAM is 73%, Im working on an idea of file caching without constant CPU draws etc.. Its almost how I preloaded text in PicoPub.
Custom Boot screens (menu ascii art) I’d like to create better ascii art but seeing im limited to 40 characters per line its unlikely im going to be able to do any better than whats currently there.
Full emulation support, I intend on switching from .txt files and going the sqlite route (Pain in the ass for basic) but it’ll be more realistic. I also plan on using PAUSE for almost all system interactions to emulate that AS400 stale screen. There will be 2 versions, one without pauses when not needed & with pauses.
Future ideas
If you’ve seen my last post on using GPIO as an expansion for memory, I plan on trying to use it with this program seeing I’m limited on Max customers, products, invoices & employees to expand the overall system memory for not only the pico but apps like this one. This is only if my idea works.
“GUI” based ERP. Down the road I’d love to implement an early windows 2 look to this ERP. A sleek simple looking menu system & proper db browser within the application should be acheivable.
This program will be releasing to my github at 8:00 AM EST
What problem are you having with the F keys? If you’re using INKEY$ to capture the keyboard instead of INPUT, then you can just test for the ASCII character numbers of the F keys.
Wow this looks cool. It’s taken me straight back to childhood watching my Dad build systems like this on Theos Multiuser Basic. Very cool, thanks for sharing.
Why don’t you number your screenshots in ascending order, as I do in zeptoforth? My only restriction is the maximum screenshot number is 99999, because my screenshots are named with the format SCRxxxxx.BMP. (This should be more than enough.)
When I release this to the public everything that I listed will be fixed + other bugs. I resolved the screenshot & F key problem today, (Reflashed my keyboard firmware) I’m re-organizing the code right now.