Solved

vb or not

Posted on 2002-04-09
12
377 Views
Last Modified: 2012-05-04
I think I closed my previous quesition too soon.  I'm just starting to learn vb6 partly because I'm looking to build my own billing program for my small business.  I have ~70 customers the database will contain names, address, phone numbers, hopefully an auto bill field so standard charges can be done monthly, a series of codes for billing a variety of different parts & services.  It would need to save one years worth of previouis charges.  And I would need to be able to search on the above criteria.  Essentially I need to send out invoices, and statements, and keep a record of what I've done.  Does this sound like a VB project???  I'm not under any time constraints, I already have a program for this but it's not specific to my business and lacks flexibility.
0
Comment
Question by:rspar1
  • 4
  • 2
  • 2
  • +4
12 Comments
 
LVL 5

Expert Comment

by:Leithauser
Comment Utility
 Sounds like a perfect VB project to me. The data could be stored in a variety of formats. Personally, I often like to just write it to a sequential file, then load all the data in when you load the program. However, you can also use Access file format. If you want the reports to look really good, you might consider using Crystal Reports. That has a control that you can add to your VB project to allow it to write to the report forms.
0
 
LVL 1

Expert Comment

by:Madmarlin
Comment Utility
Hi,

Yep the perfect opportunity for VB to flex its muscles..

Personally I would use either Access or SQL etc to hold your Database, very simple to use and provide excellent opportunities to do numerious task with your data simply and effectivly, such as searching and manipulating data.

This is a guess but I'm assuming your relativly new to VB, if that is the case then the first thing I'd do is familierise myself with the technolgies you will use, such as the basics of VB the database management system you'll use (ie SQL or Access). There are so many site around that will help you its hard not to find them.

As your new to VB id stay away from Crystal Reports, for me there a pain in the ass.(although to be fair we I work from the working version is quite old)
Vb has its own reporting tools that are very simple to use and provide the basic functionality you will need to create invioces etc..

Well good luck and if there is any specific coding questions you need help with I'm sure both myself and the rest of the experts will be able to help..

Madmarlin.. ;?)
0
 
LVL 4

Expert Comment

by:RichW
Comment Utility
Use VB with ADO and you're good to go.  I'm currently working on a project that will take my company's billing system off mainframe and replace it using VB.net.

VB 6 would do well too, but the CIO wants us to move to the next level of development tools, whcih is .Net.

There's really no other programming tool that is easier to create robust Windows applications than VB.

What database are you using?
0
 
LVL 2

Expert Comment

by:corvanderlinden
Comment Utility
Although I have been programming VB for 15+ years now, I would say (because you are relativily new to VB) that this is a perfect MS-Access project
0
 
LVL 100

Expert Comment

by:mlmcc
Comment Utility
Depending on how you want to store the data this could be an excellent project for VB or for the database engine.  

What program are you using now?  Is the datafile accessible from VB?  Do you know what the program you are using now is written in?  It may be possible to modify or enhance it.

mlmcc
0
 
LVL 22

Accepted Solution

by:
rspahitz earned 50 total points
Comment Utility
I'd agree that VB is a good choice for such a project, however, the larning curve will be two-fold.  First, you'll need to become reasonably competent in VB; secondly you'll need to become quite compentent in dabatase design.

Weak database design is probably one of the major failures in many companies, because they either fail to take into account one or more features (causing the need for a redesign or, worse, a patch to overcome the weak design) or they simply didn't organize it very well, meaning that the access of the data becomes difficult.

In your case, "names, address, phone numbers, hopefully an auto bill" means that you'll need a customer name table, which sounds simple enough, but what do you do if they are small businesses with multiple addresses?  How about if there are several contacts in that company?  And with phone numbers, you really need a separate table: primary phone number, alternate phone number, cell phone number, pager number, fax number, personal phone number, etc.

After that, you'll need a table to track inventory or services, which then get billed on purchase, attached to a PO, which has line items and could have back-orders.

A lot depends on the specifics, but definitely take lots of time to evaluate all of the database pieces before you begin the VB side.  Also, if you use VB alone, building the (ADO) database is possible but awkward.  To do it more easily, use Access to build the DB...which may be enough since it supports queries and reports.  If you need extended power, then move up to VB to access the records on demand and manipulate the data.

Will the database (or any part) be distributed to customers?  If so, you may want to split it into a separate "distribution" database, or to password protect it and build a VB shell to access only what the customer can see (such as the inventory.)  Of course, then why not just drop that stuff onto a website?
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:rspar1
Comment Utility
Wow, good input!
Yes I'm very new to VB.

Currently I'm using a shareware program called Medlin, that started as a dos program, and I've bought the windows upgrades.

It's main draw back is also it's plus, everything I bill has to be on a 4 digit code that I specify. Problem with that is every time I have something a little unusual I have to make a new code for it (my code list is enormous).  And if I delete the code later it also deletes the description in the history for that customer.

The phone numbers are in a comment box which is fine by me I don't search on them.  I don't have any inventory.  And my reports, and invoices print on plain paper which I like $<.

I wasn't sure what I was going to use for the database, I thought a plain text file was possible, but probably not the best choice speed wise.  Medlin loads everything into memory and recall is instantaneous.

This should tell you how new I am, Access is part of Office??  The closest thing to programming I've ever done is Dbase III, and I've have to get in the way back machine to remember that.  I have patience, time, and stubbornness on my side.

I take it that if I use Access to store my data in, I can manipulate it with a VB program?
0
 

Author Comment

by:rspar1
Comment Utility
Somewhere I think I have Office 95 (dinosaur I know) would Access be in that?
0
 
LVL 100

Expert Comment

by:mlmcc
Comment Utility
Access is part my MS Office Professional.  

VB can manipulate an Access database but Access is a full feature DBMS which allows you to build forms, reports, queries, and code.  Access uses a derivative of VB called VBA (Visual Basic for Applications).  

In some ways it is better especially for Access data than VB.

If you can get a copy of Access to test dirve, it has several very good sample databases already built to use as examples and to help you learn.  One of them in fact incorporates a billing capability.

I assume you will be using this as a single user.  Access is built (especially Access 2000) for small groups and not really for many users simultaneously.  Your application sounds like only one user at a time so Access will be more than sufficient.

As a $ saver you might initially look for a copy of Access 97 at a garage sale or computer swap meet.  It is available as a standalone product outside of the Office suite.

I think you have an excellent project and you should have a lot of fun learning VB and Access.  One warning, the project may be rather large and a little more complicated than you might think at first glance.  

With some thought you should be able to break it into small pieces that can be built and used without having to complete the entire project.

Good luck
mlmcc
0
 

Author Comment

by:rspar1
Comment Utility
mlmcc
Thanks, there's a monthly radio/computer swap meet in the TRW parking near me, I'll check it out for Access 97.  I'm starting to get a sense of the size of the project but thats ok.  Once I get far enough along to see partially working parts I'll be ok.

I wish I could get into the  program I use now and just add a tweak to it.
0
 

Author Comment

by:rspar1
Comment Utility
Hey I can make a command button, and do basic math using data stored in several variables.

Hopefully I'll have something working by Christmas, that may be optimistic.
0
 
LVL 5

Expert Comment

by:Leithauser
Comment Utility
  As I mentioned in the first comment, if the data is simple enough, you can just store it in a sqential file (or series of them). Then the program can load all the data into memory when it is run. Besides simplicity, this makes for a small program size. Since I write shareware and distribute it on the Web, this can be important to me. Of course, this only works if you have a limited number of data entries, but it sounds like you do from your description.
   Of course, if you create your reports with Crystal Reports, linking to an Access database helps simplify the report input.
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Introduction In a recent article (http://www.experts-exchange.com/A_7811-A-Better-Concatenate-Function.html) for the Excel community, I showed an improved version of the Excel Concatenate() function.  While writing that article I realized that no o…
When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now