Search found 75 matches

by fcarlier
Thu Jan 03, 2008 3:36 pm
Forum: Developers
Topic: VS 2008
Replies: 4
Views: 7668

For your information, the project files should be cross-compatible between VS2005 and VS2008: http://blogs.msdn.com/djpark/archive/2007/11/07/how-to-use-solutions-and-projects-between-visual-studio-2005-and-2008.aspx You only need to maintain two different solution files, one for VS2005 and one for ...
by fcarlier
Wed Dec 05, 2007 10:06 am
Forum: Developers
Topic: DataObject boilerplate
Replies: 1
Views: 4068

That is correct.
by fcarlier
Thu Nov 15, 2007 8:52 am
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

Have a look at mySql proxy, then: http://forge.mysql.com/wiki/MySQL_Proxy . You could have each office install MySql and a MySql proxy. They communicate with the MySql proxy. All reads get directed to their local MySql instance. All writes get redirected to their local MySql instance *and all other ...
by fcarlier
Wed Nov 14, 2007 11:11 am
Forum: Advanced Topics
Topic: Linux build errors
Replies: 2
Views: 5478

It will take a couple of days for the Linux build system to be back up again; meanwhile you should be able to compile using MonoDevelop.
by fcarlier
Wed Nov 14, 2007 10:22 am
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

by fcarlier
Wed Nov 14, 2007 10:16 am
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

That is not true. You have two options: either you have multiple MySql instances share the same database on the same machine. They each act as a slave to another master, but update the same data: > According to the book "High Performance MySQL" (ISBN 0596003064) > Page 145, paragraph 2, there is a s...
by fcarlier
Tue Nov 13, 2007 8:43 am
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

This may be interesting: The "Microsoft Sync Framework", see
http://msdn2.microsoft.com/en-us/sync/default.aspx
by fcarlier
Fri Nov 09, 2007 9:21 am
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

The beauty is that you can have many-to-many replication, as long as you correctly "partition" your data. If each sever is the "master" for the data managed by the practice it belongs to, you can have all that data replicate. Then, all data is available at all branches. They have read-only access. I...
by fcarlier
Tue Nov 06, 2007 1:31 pm
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

You could envision something like this: Add to each table a "Owner" or "Server" column, type int. This specifies the server that "owns" a specific row (e.g. the master server for that row). When a user opens a patient, for example, Open Dental checks the "Owner" column. If it is the same as the serv...
by fcarlier
Mon Nov 05, 2007 12:48 pm
Forum: Developers
Topic: Replication
Replies: 28
Views: 25158

http://www.onlamp.com/pub/a/onlamp/2006/04/20/advanced-mysql-replication.html You should distinguish between: - Data that is "centrally" managed (e.g. the Open Dental translations won't differ from branch office to branch office, probably the treatments will be centrally managed, too). Have this da...
by fcarlier
Tue Oct 16, 2007 10:02 am
Forum: Developers
Topic: Mysql.data.dll in repository vs. GAC
Replies: 1
Views: 4781

This should be fixed in SVN.
by fcarlier
Tue Oct 09, 2007 11:40 am
Forum: Developers
Topic: Use Generic Data Access for other classes
Replies: 5
Views: 9373

Have a look at Patient.cs. It should be formatted according to your coding guidelines. I also removed the duplicate code comments. They are only present on the Property itself; no longer on the field. I will now proceed to write the unit tests for the Patient object. I assume that there will be some...
by fcarlier
Tue Oct 09, 2007 10:15 am
Forum: Advanced Topics
Topic: Basic linux/samba question
Replies: 21
Views: 22202

This document explains you how to mark a file as executable using the Ubuntu user interface: https://help.ubuntu.com/7.04/user-guide/C/gosnautilus-8.html#nautilus-permissions Ubuntu doesn't allow you to log on as the root user - and for good reasons. You should never log on as the root user. If you ...
by fcarlier
Tue Oct 09, 2007 9:25 am
Forum: Developers
Topic: Use Generic Data Access for other classes
Replies: 5
Views: 9373

If I understand it correctly, you want to group all the fields & properties together, and seperate these groups of field/property with a single, blank line.

I'll just update the current macros to do that. The changes to these macros should give you some hints on how to get started. Will that do?
by fcarlier
Mon Oct 08, 2007 8:56 am
Forum: Developers
Topic: Use Generic Data Access for other classes
Replies: 5
Views: 9373

Use Generic Data Access for other classes

Hello, Would there be any objections if I'd "convert" more classes (e.g. Patient) to use the data access framework? The imaging-related classes use this framework already, and if I'm correctly there haven't surfaced any problems related to this. "Converting" classes would always go hand-in-hand with...
by fcarlier
Thu Oct 04, 2007 1:36 pm
Forum: Advanced Topics
Topic: Ubuntu and Linux
Replies: 43
Views: 39513

On Ubuntu, a small subset of programs is fully supported. That means that you could call Canonical (the company behind Ubuntu) and ask them for support for these programs (given that you bought support plan). Examples of these programs include Firefox and OpenOffice.org, amongst others. Another diff...
by fcarlier
Thu Oct 04, 2007 11:31 am
Forum: Advanced Topics
Topic: Syntax for Linux build flags
Replies: 5
Views: 7954

I'm not 100% sure, but as far as I know Mono and Wine do not interoperate on Linux. That is, although you can run Open Dental using Mono and although you can run some Win32 applications using Wine, you can't make them talk to each other. That is because you cannot host a Mono process inside a Wine p...
by fcarlier
Thu Oct 04, 2007 10:10 am
Forum: Advanced Topics
Topic: Syntax for Linux build flags
Replies: 5
Views: 7954

These flags are set inside the NAnt build file, as such you can't set them using make. All these flags -- LINUX, MONO, DISABLE_MICROSOFT_OFFICE and DISABLE_WINDOWS_BRIDGES -- are set when you build using NAnt on Linux. See line 41 of opendental.build for the declaration of these flags. (An option wo...
by fcarlier
Wed Oct 03, 2007 1:50 pm
Forum: Advanced Topics
Topic: Ubuntu and Linux
Replies: 43
Views: 39513

So, you can connect to the database "opendentalbackup_10_03_07" on your Ubuntu machine from your Windows machine. What I would like you to do is try and execute the following statement on your Windows machine: CREATE TABLE Test ( TestId int NOT NULL ) followed by INSERT INTO Test VALUES (1) This tri...
by fcarlier
Wed Oct 03, 2007 10:55 am
Forum: Advanced Topics
Topic: Ubuntu and Linux
Replies: 43
Views: 39513

An alternative way to restart mysql is

Code: Select all

sudo /etc/init.d/mysql restart
by fcarlier
Wed Oct 03, 2007 9:00 am
Forum: Advanced Topics
Topic: Ubuntu and Linux
Replies: 43
Views: 39513

Can you modify the data from Windows? If not, your user (root@* or whatever) probably has read-only access.
by fcarlier
Tue Oct 02, 2007 12:16 pm
Forum: Developers
Topic: 5.3b ?
Replies: 4
Views: 7545

I think the 5.4 solution file is missing from SVN.
by fcarlier
Tue Oct 02, 2007 8:55 am
Forum: Advanced Topics
Topic: Build error - Linux
Replies: 2
Views: 5149

The build issue should be resolved. That was an omission on my side. As to referencing libgif4 etc and not their -dev counterparts, the reason is simple: to run Mono, you only need to have the libraries themselves installed, not the header files. Because Mono uses P/Invoke to access these libraries,...
by fcarlier
Mon Oct 01, 2007 12:34 pm
Forum: Developers
Topic: Use System.IO.Ports.SerialPort for FormTerminal?
Replies: 0
Views: 4218

Use System.IO.Ports.SerialPort for FormTerminal?

Hi, I'd like to point out that the .NET Framework 2.0 ships with support for serial ports (RS232), see the System.IO.Ports.SerialPort. Maybe Open Dental could use this class instead of the external RS232 library? That would reduce the list of external DLL's required and improve Linux support, among ...
by fcarlier
Wed Sep 19, 2007 1:05 pm
Forum: Advanced Topics
Topic: Debian Packages for Mono
Replies: 12
Views: 15687

If time permits, you can try using the latest version (not in my repository yet, but for download at http://download.opensuse.org/repositories/home:/fcarlier/xUbuntu_7.04/i386/opendental_5.2-0opendental1_i386.deb) sudo dpgk -r opendental wget http://download.opensuse.org/repositories/home:/fcarlier/...
by fcarlier
Mon Sep 17, 2007 1:10 pm
Forum: Advanced Topics
Topic: Debian Packages for Mono
Replies: 12
Views: 15687

I'll investigate. It can take a couple of days.
by fcarlier
Mon Sep 17, 2007 12:23 pm
Forum: Advanced Topics
Topic: Debian Packages for Mono
Replies: 12
Views: 15687

I'm happy to announce that it is now possible to use my open dental repository for installing Open Dental on Ubuntu Feisty. Proceed as follows: 1. Edit your /etc/apt.sources list. Add the following line: deb http://opendental.carlier-online.be/apt/ feisty main 2. Install the GPG key wget http://open...
by fcarlier
Sun Sep 16, 2007 10:42 am
Forum: Advanced Topics
Topic: Debian Packages for Mono
Replies: 12
Views: 15687

Debian Packages for Mono

Hi, As you may know, I've been creating custom Debian Packages for Mono. Specifically, I've been packaging versions of Mono that I know to support Open Dental. If anyone is interested, here is a short tutorial on how to use them on your own machine (target distribution is Ubuntu 7.04): 1. Download t...
by fcarlier
Sun Sep 16, 2007 9:54 am
Forum: Developers
Topic: Image Store handling of binary files
Replies: 2
Views: 5703

I see you fixed this, that's great. Although it's called "IImageStore", it should be able to store any kind of file. So, now we have a first level of isolation -- the FileStore is abstracted away, and should be easily replaced by some kind of DatabaseStore. I'm having a busy weeks at work, so this m...
by fcarlier
Sun Sep 16, 2007 9:52 am
Forum: Developers
Topic: What's the AutoConvert2 macro?
Replies: 1
Views: 4459

The AutoConvert2 macro is used to convert all *open* files. So if you have a bunch of files open in Visual Studio, the AutoConvert2 macro will be called on all of them.

Eventually, Convert and Convert2 should be merged into one, but I didn't got that far yet.
by fcarlier
Tue Sep 04, 2007 12:31 pm
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Mono sources indicate the "Invalid IL" message should be fixed. If you re-compile using the latest version of Mono, you should be able to run Open Dental "natively" on Linux.
by fcarlier
Mon Sep 03, 2007 10:07 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

The issue you see in Open Dental 5.0 is because of different behaviour on MS.NET and Mono. On the .NET Framework, the MontlyCalendar does not completely adhere to the specs, Mono does. I filed a bug with Microsoft to inform them of the difference between the specs and the behaviour. I expect them to...
by fcarlier
Sat Sep 01, 2007 2:40 am
Forum: Developers
Topic: New Feature: Smart Card functionality
Replies: 5
Views: 9512

Any card with a chip on it is basically a smart card ;). And since our ID cards or social security cards don't have much more information on them than you would have to hand out previously, there aren't too many privacy concerns. Especially because there are quite strict rules on what people can do ...
by fcarlier
Sat Sep 01, 2007 2:34 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Hi, Glad to see more people manage to build & start Open Dental on Linux! Just for the record: what you're seeing now is a know issue in Mono: http://bugzilla.ximian.com/show_bug.cgi?id=82620 . There isn't an ETA for a fix yet, but I think you can expect it pretty soon (as the same bug affects GTK# ...
by fcarlier
Fri Aug 31, 2007 9:03 am
Forum: Developers
Topic: New Feature: Smart Card functionality
Replies: 5
Views: 9512

Hi, I don't personally have a smart card that I created myself. We (almost all Belgians) have two smart cards issued by the government: the social security card and the identity card. It, however, is possible to create your own smart cards (that you could give to your patients, for example): http://...
by fcarlier
Fri Aug 31, 2007 5:27 am
Forum: Developers
Topic: New Feature: Smart Card functionality
Replies: 5
Views: 9512

New Feature: Smart Card functionality

I'd like to propose a new feature for Open Dental: Smart Card functionality. Nowadays, many cards (like social security cards, identity cards or credit cards), contain a chip. The data on these so-called smart cards can be used to identify people. Especially, the usage of electronic identity cards a...
by fcarlier
Tue Aug 28, 2007 7:10 am
Forum: Advanced Topics
Topic: Table 'preferences' is read only (Linux)
Replies: 15
Views: 18721

This particular issue should be fixed in SVN. Now I'm seeing an "Invalid IL code bug", I've posted on the mono mailing for more info.
by fcarlier
Tue Aug 28, 2007 4:11 am
Forum: Advanced Topics
Topic: Table 'preferences' is read only (Linux)
Replies: 15
Views: 18721

From the looks of it, is is a recent Mono bug. I'll investigate and follow up.
by fcarlier
Tue Aug 28, 2007 12:32 am
Forum: Developers
Topic: Wrap up 5.1
Replies: 7
Views: 11277

OK. I did some work on ContrDocs -- mainly moved code to FileStore and call it from there. Shall I leave the code "as is" now, and continue work when we start with 5.2?
by fcarlier
Mon Aug 27, 2007 12:50 pm
Forum: Advanced Topics
Topic: Table 'preferences' is read only (Linux)
Replies: 15
Views: 18721

OK, great. Let me know how if you encounter any other issues on Linux.
by fcarlier
Mon Aug 27, 2007 8:05 am
Forum: Advanced Topics
Topic: Table 'preferences' is read only (Linux)
Replies: 15
Views: 18721

Can you try to add a row to the preferences table using the mysql command line? See what that gives.
by fcarlier
Mon Aug 27, 2007 6:14 am
Forum: Advanced Topics
Topic: Table 'preferences' is read only (Linux)
Replies: 15
Views: 18721

Can you give more information on your mysql setup? Are you connecting to mysql as root or a limited user? Is your mysql setup local or on a remote computer?
by fcarlier
Mon Aug 27, 2007 2:20 am
Forum: Developers
Topic: Keep OpenDental5_1.sou out of SVN?
Replies: 1
Views: 4364

Keep OpenDental5_1.sou out of SVN?

Hi,

I was wondering if it is possible to remove OpenDental5_1.sou out of SVN? It doesn't really seem to fit any purpose.

Frederik
by fcarlier
Mon Aug 27, 2007 1:00 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Can you open a new thread with more information on when you get this error message? Does it happen when importing the data, or when running Open Dental itself?
by fcarlier
Sun Aug 26, 2007 2:20 pm
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

You are getting an error compiling a resource file. Line 116 is where a System.Drawing.Bitmap is being declared. Mono is trying to load this bitmap into memory. You get a libgdiplus exception. This leads me to believe that you may have a missing codec on your system. Can you please try to run ./conf...
by fcarlier
Sun Aug 26, 2007 6:52 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Try running resgen /useSourcePath /compile "/home/wjs/opendental/ODR/ComboBoxMulti.resx" and repeat that for each file you get the error message on. The error is because resgen fails, but it is know to be rather sparse on details when it fails. If you try it file-by-file, you should be able to pin-p...
by fcarlier
Sun Aug 26, 2007 3:29 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Which version of Linux are you using? You are using NAnt from CVS, right?
by fcarlier
Sun Aug 26, 2007 2:57 am
Forum: Developers
Topic: Why was the "Mounts" class moved?
Replies: 3
Views: 6492

I'll reply to each issue seperately: 1. OK, great. 2. Every file can declare it's own namespace. (You can even declare multiple namespaces in one file). I tried -once- to create a namespace for all the imaging stuff. Something like OpenDentBusiness.Imaging, OpenDental.Business.Imaging, or OpenDental...
by fcarlier
Sat Aug 25, 2007 1:03 pm
Forum: Developers
Topic: Why was the "Mounts" class moved?
Replies: 3
Views: 6492

I wanted to move all the code that contains the business logic to the business project. More specifically, I wanted to move the code that does the handling of the images (storing, retrieving,...) to the business project. However, that also requires access to the <TableType>s classes, in various scen...
by fcarlier
Sat Aug 25, 2007 12:51 pm
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Okay, that means that your libgdiplus is working correctly. Sometimes there is an issue with mono not finding libgdiplus. If that is the case, you don't get to see the blank window, either.

Not sure yet what the issue is. Can you try to run NAnt with the verbose flag?
by fcarlier
Sat Aug 25, 2007 4:55 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

Try creating a file with this content (call it test.cs): using System.Windows.Forms; public class Program { public static void Main() { using(Form form = new Form()) { form.ShowDialog(); } } } then do gmcs test.cs /r:System.Windows.Forms and mono test.exe What does it say?
by fcarlier
Wed Aug 22, 2007 8:54 am
Forum: Developers
Topic: Missing file?
Replies: 2
Views: 5537

Sorry, meant to link the file. Should be fixed in r663.
by fcarlier
Tue Aug 21, 2007 11:35 am
Forum: Developers
Topic: Open Dental Database Dump
Replies: 1
Views: 4767

Open Dental Database Dump

Hi, I'd like to test out the data access framework on Oracle. I downloaded Oracle Express Edition (http://www.oracle.com/technology/software/products/database/xe/htdocs/102xewinsoft.html), but obviously I'll need a database dump to re-create the Open Dental database here. Is it possible to get such ...
by fcarlier
Tue Aug 21, 2007 11:17 am
Forum: Developers
Topic: Difference in integer length in code and database
Replies: 1
Views: 4510

Difference in integer length in code and database

Hi, Quite often, I notice that there is a difference between the data type being used in the mysql database and the program code. For example, most of the time, the C# code itself will declare most integers just as int -- being 32 bit (4 byte) signed integers [1, 3, 4]. However, on the database side...
by fcarlier
Tue Aug 21, 2007 10:56 am
Forum: Developers
Topic: Remoting client keeps TCP connection open
Replies: 1
Views: 4598

Remoting client keeps TCP connection open

Hi, I noticed that the remoting client keeps the Tcp connection to the server open, until the program is closed. That seems like a little bit of overhead to me: I assume that most of the time, Open Dental doesn't really use that connection. Let's assume that the tcp connection is only used 1% of the...
by fcarlier
Tue Aug 21, 2007 2:58 am
Forum: Advanced Topics
Topic: Building OD 5.0 for Linux
Replies: 5
Views: 8880

The build file CodeBase/CodeBase.build is broken. Use this one: https://70.90.133.65:23793/svn/opendental/head/CodeBase/CodeBase.build . (Just overwrite it). You'll see that in the <references> section, a line <include name="../Required dlls/SigPlusNET.dll"/> has been added. A reference to SigPlusNE...
by fcarlier
Tue Aug 21, 2007 2:54 am
Forum: Advanced Topics
Topic: Problem installing native Linux version
Replies: 40
Views: 40702

The current development version of Mono (which is soon to be released as Mono 1.2.5), is able of running Open Dental on Linux. However, there exist no Ubuntu packages for this version of Mono (expect it in Ubuntu 8.04). That's why installing Open Dental using Ubuntu packages doesn't quite work yet. ...
by fcarlier
Tue Jul 24, 2007 2:42 pm
Forum: Developers
Topic: Image storage in Database, FTP Server
Replies: 9
Views: 16009

Yeah, I could keep the NUnit tests in a seperate solution (a solution is required because of the references to other projects). That way, the main solution doesn't get cluttered with many projects. I'll do it that way when I get back.

Frederik
by fcarlier
Tue Jul 24, 2007 12:33 pm
Forum: Developers
Topic: Image storage in Database, FTP Server
Replies: 9
Views: 16009

I'll be away until August, 4th, so won't be working on this feature in meanwhile.

As for the NUnit test project, I could check in the NUnit dll's into SVN.
by fcarlier
Sat Jun 23, 2007 2:37 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

Hi Derek, I noticed your code comment on the primary key issue before. However, it is not true that I assume the primary key is always of the integer type -- rather on the contrary. If you pass an object to the CreateObject, WriteObject or DeleteObject methods, the code always enumerates all primary...
by fcarlier
Fri Jun 22, 2007 11:22 am
Forum: Developers
Topic: Data Interface Objects
Replies: 2
Views: 6459

Hi Derek, For the Patients class, yes, I may have missed a couple of things there. I didn't aim for full compatibility, but for a quick and easy way to verify the functionality in the DataObjectFactory class. As far as for MountItemDefs and Mounts, I've been re-reading the logs (because I did want t...
by fcarlier
Fri Jun 22, 2007 6:45 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

The burden of deciding which direction to go is beginning to weigh very heavily on me. I just looked at the Patient class, which is now 1000 lines vs its original 250 lines. So adding a new table with, for example, 10 fields, would not be much simpler than it currently is. It would take about 130 l...
by fcarlier
Thu Jun 21, 2007 10:53 am
Forum: Developers
Topic: Image storage in Database, FTP Server
Replies: 9
Views: 16009

My main concern now is to create an additional layer so that the data storage is abstracted away from the UI. From there, it should be easier to implement any other storage system. The reason for storing files in a database or on an ftp server is basically Linux compatibility. Anyway, if you are oka...
by fcarlier
Thu Jun 21, 2007 10:50 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

Re: Active Record Plan or Domain Model

[quote="grahamde] I am not sure how the active record plan is not type-safe. [/quote] I didn't mean to say it is not type-safe. Just wanted to say that by marking the base class as generic, you get type-safety for free You do not need a factory or a static method to open multiple objects at one time...
by fcarlier
Thu Jun 21, 2007 2:44 am
Forum: Developers
Topic: Image storage in Database, FTP Server
Replies: 9
Views: 16009

Image storage in Database, FTP Server

Hi, I'm working on providing functionality for storing the images in the Open Dental database itself, or on a FTP server. This is to improve compatibility with Linux. This requires refactoring of ContrDocs.cs in OpenDental. I am currently implementing this change as such: 1. I created an IImageStore...
by fcarlier
Thu Jun 21, 2007 12:04 am
Forum: Developers
Topic: Coding Style - White space
Replies: 4
Views: 9948

Yes, of course this is on my branch and not the trunk. About blank lines in methods, I usually prefer them because that way, your code gets structured into smaller blocks -- just like you structure text into paragraphs. Of course, when moving my changes into the trunk, I can always remove it. What C...
by fcarlier
Thu Jun 21, 2007 12:00 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

Hi Derek, I think that is a good idea. Basically, you're talking about implementing the Active Record data pattern (which I like). A couple of remarks: 1. If you make the base class (in my case it was DataObjectBase) generic, eg: public class Patient : TableDef<Patient>, you get type-safety for free...
by fcarlier
Wed Jun 20, 2007 12:18 am
Forum: Developers
Topic: Object.MemberwiseClone() instead of Copy()
Replies: 3
Views: 7480

jordansparks wrote:Are you kidding me? Tell me at least that it's a fairly new method that MS snuck in when I wasn't looking.
To your defense, it is a protected member of the object class, so it isn't obvious at all this method exists. For "deep" copies, grahamde's solution is perfect.
by fcarlier
Wed Jun 20, 2007 12:17 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

1. Why are you comparing all field values when deleting? I've always just used the primary key. I don't ;). I compare all the fields that make up the primary key. Just to make sure that if a table has two primary keys, I do the right thing. 2. The reason for only sending the changed values to the d...
by fcarlier
Wed Jun 20, 2007 12:15 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

Re: Automatic Incrementation In Oracle

The current design is using sequences already to handle auto-incrementation. However, there are places in the program where the insert ID must be returned to the program for use elsewhere. Since a sequence is internal to Oracle and there is no automatic way of getting the last inserted primary key ...
by fcarlier
Wed Jun 20, 2007 12:11 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

I've been reading the actual code now, and I have to say it's very elegant. The only part that's starting to scare me is the provider factory. I know it needs to be done, but there are just so many details involved. There are so many parts of the program that depend on the current code. There are s...
by fcarlier
Tue Jun 19, 2007 9:46 am
Forum: Developers
Topic: Object.MemberwiseClone() instead of Copy()
Replies: 3
Views: 7480

Object.MemberwiseClone() instead of Copy()

I noticed that the Table Type objects expose a Copy() method. It creates a new object, and field-by-field copies the variables. However, every object already exposes the MemberwiseClone() method, which does exactly this. Hence, my proposal would be to replace Public TableType Copy() { TableType copy...
by fcarlier
Tue Jun 19, 2007 9:41 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

Great! Here a couple of notes and questions: 1. All the modifications that I made to the Table Types are done using a Visual Studio Macro. It should be no problem to re-apply these changes later to the trunk, without going trough a series of merges/branches. 2. Currently, all Table Types have an ext...
by fcarlier
Tue Jun 19, 2007 7:45 am
Forum: Developers
Topic: Generic Data Access
Replies: 21
Views: 34839

Generic Data Access

In my branch (the fcarlier/ branch), I've been making a couple of trial changes to the way data is stored in Open Dental. Basically, I created a "DataObjectFactory<T>" method which implements methods to add, open and delete objects from the database. It is written in the most generic way. Every data...
by fcarlier
Tue Jun 19, 2007 3:23 am
Forum: Developers
Topic: Further separation of Data & UI Logic
Replies: 2
Views: 6800

Why use DataSets when you have Strongly Typed objects?

There is something that I don't understand, though: why use DataSets when you have strongly typed objects? OpenDentalBusiness contains a class for each and every table. That means that you can have strongly typed objects in the entire Open Dental application. That's great. The User Interface can the...