You are not logged in.

Perry

Beginner

  • "Perry" is male
  • "Perry" started this thread

Posts: 40

Date of registration: Jan 15th 2011

Location: Sarasota, FL

Occupation: Cabinet Design

Hobbies: Programming

  • Send private message

1

Wednesday, August 7th 2013, 2:23pm

Library Catalog Application

I promised to make this available to you when I was finished with it...
Well any programmer knows you are never truly finished with it, you just stop for a while.
I'm at that point.

click this link to download the Library Application and the source code I was working on.
http://polywop.com/Lib/LibraryCatalog.zip

A (by no means brief) explanation follows:

I started this Library Catalog program with the intent to educate myself upon what works and what doesn't in Jabaco.

Being a practical person I endeavored to design something useful... in this case it is for the church I attend.

I am mostly finished with it. There are a few odd things still to be discovered, I felt however that it has been developed adequately so that it need not hold back it’s release. Meanwhile I'll work on it.

I simply called it Library Catalog . I know that lacks imagination, but I felt it was the best description.

The Program keeps a catalog of books in a Library. It could easily be repurposed for any Items, not just books. We also have a Library of Audio Cassette, CDs , & DVDs we plan to catalog on it. It also allows you to keep track of the Items, by logging them in, or out of the Library. It records the date when the log out took place and also to whom it was loaned.

Somewhere along the way of living, I picked up a little knowledge, (dangerous thing that), and thought to enable it to scan barcode. Not so hard really, when you understand that a barcode reader is simply a keyboard with a different method of input than your fingers. In fact I astonish some people when I pull up a notepad application, then scan a barcode, and see the numbers magically appear on the notepad in easily readable form. So any textbox can be made to receive barcode input with virtually no extra effort. Ok magic exists simply because some folks hold the secrets that others don’t. The barcode reader looks for an Asterisk “*” character before the number to tell it the barcode begins here, and an asterisk after the number to tell it the barcode ends there. So you have numbers like *1234567*. Not much to it. There remains only to install the barcode true type font which I have included in this package, and if you wish to play with it some you must install (At least to print out or view barcodes).

And it remains yet to pick up a barcode scanner, though this is actually optional.

It may surprise some that you can buy a barcode scanner very cheaply on the internet. Mine cost $9.00 plus shipping US. It may not satisfy some, but then you may have more expensive tastes. If you want something to just play around with, and test with it such as I did, it makes no sense to go to great expense. See I told you I was practical.

At any rate, check out the web site:
http://cuecats.com/USBProductDetails.aspx
For those outside of the US try:
http://www.ebay.com.au/itm/USB-Barcode-R…588cd30dbb#shId

If you already have a CueCat ( unneutered), there is a software called CatNip (freeware) that you can install and you may have to Neuter your CueCat (Hardware Hack it) yourself. However this website offers them “Fixed” needs no additional drivers. Long story here but if anyone has questions about the content of this paragraph you can read all about it at http://en.wikipedia.org/wiki/CueCat . And while the CueCat was considered a business failure, it was a boon to the home hobbyist. And they no longer (without the Digital Convergence Software) compromise your privacy. Oh and they do work. I have for your convenience packaged along a version of CatNip, but only if you need it. The ones you buy from the cuecats.com website won’t need it.

Back to this here Library program thingy, I made the software also so that you may type in the name , or partial name at least, of the Item, and you can Log it either in or out with that as well, so to run this Library Catalog program, you don’t need the Barcode Scanner at all.

Since all I needed here was a “Flat” database, I didn’t bother with SQL or any such. I used nothing but text data files (Don’t use dynamite to move a marble) which the program will create and maintain.

I made this program with the interest of maintaining the entire Library operation from a USB Flash Drive. It may be installed on your harddrive. There is no installer necessary. Just copy to a Folder with permissions for your access. Pay attention to that last bit there, especially on MS Windows systems later than XP. This Program maintains its Data Files in the folder where the Executable is located (remember USB Flash?). After XP, MS recommended against doing this from the Program Files Directory. But if you create a new Folder under C:\ you should be Ok.

This is free along with the source code. I’m placing it in Public Domain. (This does not include the catnip software or the fonts which I believe to also be in public domain but it is not my own to give). Use it, Change it, Build it, Learn from it, to your heart’s content. Don’t blame me if it destroys something valuable, though I can’t think of any way it might do that. The only restriction is, just don’t copy write this software. I want anyone to be able to use it free of charge.

I’m sure there are those who could have written this better than I. You now have the source code. I invite you to improve it. That is the joy of programming. You make it to suit yourself.

So what did I learn?

Well for one, even though you can declare a multi dimensional array in Jabaco, there are some cases where Jabaco doesn’t handle them well yet. So use them sparingly. Rather I combine several fields into one, and when I needed to access them I use the SPLIT function. That was one way around it.

I learned also that Jabaco doesn’t yet let me programmatically load control arrays in the way that I’m used to in VB. In fact I’m still not certain how Jabaco will let me do that. I worked without that option, because I got tired of beating myself up over it.

Also if you still need your sanity, do not place controls inside a frame which is inside of another frame. That’s a bad one.

Oh and the Tab control. Whew. I never dreamed that you would need to link them with user controls. So …. well I implemented my own in a manner which I felt suited my purposes better. Don’t Mock now!

I spent 3 hours once in writing this … looking for an error that Jabaco said was in the declarations …. And the problem was actually that a control declared as an array was later called as a simple control (not as a control array). So now you know why these ramblings sound deranged.

I learned as well that in some cases you must draw from Java to use commands or functions that you took for granted in VB but as yet are not fully developed in Jabaco. And even though I still can’t say that I know Java, I can say I’m more familiar with it than when I started.

I learned also of the great help you can get from the Jabaco community, if you aren’t too conceited to ask. Thanks a bunch all who answered my many questions.

Much yet to learn, but I like Jabaco better now than when I started.

This post has been edited 1 times, last edit by "Perry" (Aug 8th 2013, 1:26pm)


Perry

Beginner

  • "Perry" is male
  • "Perry" started this thread

Posts: 40

Date of registration: Jan 15th 2011

Location: Sarasota, FL

Occupation: Cabinet Design

Hobbies: Programming

  • Send private message

2

Thursday, August 8th 2013, 9:20pm

Those of you that downloaded this program before 3:16PM Eastern US Time on 8/8/13
There is a bug in the code that will allow a CSV import only on the first attempt. It will hang on the second attempt.
Please download it again... it has been repaired.

Rate this thread
WoltLab Burning Board