2 quick VB.NET questions

Maglio

Weaksauce
Joined
Feb 15, 2008
Messages
64
question the first:
i am creating a program that the data will be stored in MS Access 2003. i'll figure out how to hook it into the program later, but the first question is...does the end user need to have access installed on their PC to make the program work? the program will be for my sister, and she does not have access on her pc. also, when i actually create the program, will i still have to send her the db as well, or will that be included the in the exe that gets sent?

question the second (actually three for those of you keeping score):
can i create a report in access and call it from vb, or do i have to figure out how to use the crystal reports system in .NET and then figure out how to call it into the program?

any help/suggestions would be appreciated. i have used the basics of vb in the past and vba, so i'm hoping that vb.NET is somewhat similar. i am by no means an advanced user/programmer, but i can write some simple programs.
 
i would strongly recommend you use SQL server instead, access is horrible. it will be faster and a lot easier to manage

http://www.microsoft.com/sql/editions/express/default.mspx

yes you will have to send her the db, and also set up sql server on her machine, thats not a big pain though

i dont know if sql server express includes reporting services but you could use that? just populate a table with what you want to report on, and point reporting services at it. might be a bit overkill though.

dont worry about not being advanced programmer. the beauty of MS products is that help is only a google away :D
 
how easy is sql server to use/program for? i know if sql, and i know a few simple commands, but that's about it. i've only used sql within access to create saved queries and stuff.
 
how easy is sql server to use/program for? i know if sql, and i know a few simple commands, but that's about it. i've only used sql within access to create saved queries and stuff.

Do your homework with some Google searches first, but overall you should be fine.

The SQL syntax will mostly translate over with some minor syntax differences like wildcards and inequality comparisons. The stuff you're programming to hook into Access will be slightly different, such as namespaces that are imported and/or object declarations (ie: "SqlConnection" instead of "OleConnection").
 
ok...i've been looking at vb express and sql express. they seem VERY intuitive and i should be able to do what i need. however, there is something i can't figure out. this program is going to my sister and will be ready to go when i send it to her. however, part of the program will be tracking purchases from customers. if i want to update the app, how do i keep all her customers intact? is there a way to extract the db information after the program has been published?
 
this program is going to my sister and will be ready to go when i send it to her. however, part of the program will be tracking purchases from customers. if i want to update the app, how do i keep all her customers intact? is there a way to extract the db information after the program has been published?

I'm not sure how updating the UI presentation (read: VB.Net) should impact the underlying data in the database, other than doing obvious data inserts/updates/deletes from the UI. Could you explain this more?

As for a data extraction, you've got several options:
1 - Write a function in VB.Net that returns a dataset of the data you want, and either:
  • Display on screen.
  • Generate a file with the data contained therein (XLS, DOC, CSV, etc.).

2 - From SQL Server Express Management Studio, you may be able to execute the SQL statement or stored proc, and right-click in the results and export/save to a CSV or XLS file.
 
the issue i found was that i can populate the tables on the sever on my end. when i build and publicize the program, all those data tables get saved along with it. when i update the program, and rebuild it and send her a new version, it will only include the data that i have on my pc. when she clicks to install the new one, all her data will be gone/possibly stored in the old version. i looked in the published folder, but was unable to find any db files that would contain the information. does she have to have the db on her machine too?

I would also like to get a copy of the data she has updated. so that is another reason i would like to be able to pull the data out.

i guess the question is that i don't know how much gets put into the publicized product and or if the db stays seperate and needs to be included in the files i send her.

hope this helps explain what i'm looking for a little more
 
the issue i found was that i can populate the tables on the sever on my end. when i build and publicize the program, all those data tables get saved along with it. when i update the program, and rebuild it and send her a new version, it will only include the data that i have on my pc. when she clicks to install the new one, all her data will be gone/possibly stored in the old version. i looked in the published folder, but was unable to find any db files that would contain the information. does she have to have the db on her machine too?

I would also like to get a copy of the data she has updated. so that is another reason i would like to be able to pull the data out.

i guess the question is that i don't know how much gets put into the publicized product and or if the db stays seperate and needs to be included in the files i send her.


All of these points seem to hit a single question I have: Are you both adding live data to different databases?

If so, then merging them could be as simple as executing a user-made .sql script to import/insert/update records in the destination database, or all the way up to something like RedGate that manages merging complex DB schema data from one database to another. This really depends more on your DB schema, and you may need to make some additional functions in the VB.Net app to provide a "few click approach" for her to import your data.



If possible, the simplest approach would be for everyone to connect to the same database. You could always make another database (whether empty or a restore of the "live" database) for your own testing/development purposes. But merging the data from two or more databases could involve more effort, money, and steps than you'd want. It's an option that can work, but based on this thread so far I think it's not the first choice to try.
 
we will be adding data to different databases. we don't live anywhere near each other, so she should use the program, tell me what she wanted different, i update the program and send out a new version. i would like to keep a copy of the information she has on my computer so i know it works with what i'm trying to do.

what i'm wondering is if i have to ship the DB along with the built program, or if the program automatically includes it in the program already. if i have to send the DB along, then it won't be an issue, as i can just have her send the one she is using back, and i can replace it on my end.
 
what i'm wondering is if i have to ship the DB along with the built program, or if the program automatically includes it in the program already. if i have to send the DB along, then it won't be an issue, as i can just have her send the one she is using back, and i can replace it on my end.

This could work, but you'll need her database backup restored on your machine prior to doing any work so that you can work with her data. And also ensure that she does not change the database schema on her end prior to you shipping the updated application file, and, if applicable, any .sql script files that are to be run against her database.

This can work, but you'll need to clearly define the steps first or provide some programmatic alternatives to generating the content you need.
 
Back
Top