For my current employer Vitronics Soltec, I had to build a coupling between Lotus Notes and SQL Server.
Proposion N2N is an excellent library to achieve this. Basically, it's a (partial) implementation of an ADO.NET DataProvider for Lotus Notes. It has many advantages (and way less bugs) over the Notes ODBC Connector, as it can even query for attachments, retrieve rich textfields and retrieve field values not included in a view. You can even dynamically execute Lotus Notes Formula's from the SQL query
The SQL isn't close to any SQL standard, but the resemblance is good enough. However, it is very well documented, and examples for almost every possible usage is provided, so learning is very easy, though knowledge of both SQL and Lotus Notes will help a lot
The current version (version 2.11) still contains several bugs, of wich the most annoying is that the IDbDataAdapter methods aren't implemented correctly, wich you can call the methods directly (NsfDataAdapter.Fill(myDataset), however you can't call them through the interface (IDbDataAdapter.Fill(myDataSet)) as it raises a NotSupportedException.
.NET Application Blocks
The Proposion variant of some of the Microsoft Application Blocks are freely provided: the Exception Management Application Block, and the Data Access Application Block.
Proposion N2N Application Blocks
I needed to use the Data Access Application Block, however the FillDataSet caused an endless recursion, so I had to modify the examples.
The improved Visual Studio project is available here:
Proposion N2N Data Access Application Block
I've had good results with Proposion N2N, however there are some issues that would prevent me from deploying it with clients:
Potential Adminstration problems
The Proposion N2N Library comes with a strict Activation, and once installed, it isn't possible to install it again. To move the license to another computer, you would have to mail to Proposion to transfer the license. So far I've had very good responses, but I don't want to know what I'd have to do when their website would go down, or the small company would decide to start doing something else.
High priced
The Proposion N2N is quite expensive to deploy, for my development I needed to install a development it on my laptop, and later on another machine to maintain the synchronization between the databases, I'd have to buy another license, or transfer the license from my laptop to another machine, wich would mean I can't develop anymore using the library, and incorporating the problems mentioned before. With a support contract included ($495/y), a developer license ($795) and a processor license ($1395), it would mean I have to pay about $2600 for a ADO.NET driver that can only be used on 1 machine.
conclusion
To us it's well worth the money, because it save's a lot of Domino API programming, but the Activation policy and maintenance contract will definately have me waiting as long as possible before buying a license for the server.
Labels: C#, Lotus Notes
XSD2DB
I've become a developer with XSD2DB, a command line tool written in C#, that will read a Microsoft ADO.NET compatible DataSet Schema File (XSD) and generate a database from it.
To make it a little more accessible, I've created the descriptive HTML website for it, and planning on creating new releases.
Now all we need is people that want to use it and give us some comments on it...
Sql Server (MSSQL) msde MSDE 2000 Installation Fails
After installing Visual Studio 2005 my SQL Server 2000
Developer Edition stopped working, giving an error from
Enterprise Manager: Unable to connect to server. Reason: SSL
security error. ConnectionOpen (SECDoClientHandShake())...
Microsoft has this technote about this: Thinking it over, all
of these references apply to me:
302409
FIX: Unable to Connect to SQL Server 2000 When Certificate
Authority Name Is the Same As the Host Name of the Windows
2000 Computer
275307
BUG: Installation of SQL Server 2000 Desktop Engine Fails on
Computers That Already Have SQL Server 7.0 Tools
Installed
299351
BUG: MSDE Installation Fails on Systems That Have SQL Server
2000 Service Pack 1 or 2 Installed Too late for me, because
I already uninstalled SQL Server 2005 and 2000 beta and
everything related. Uninstall SQL Server 2000 didn't work,
because somehow the application doesn't show up in the
add/remove programs. I can't install MSDE anymore because it
gives these errors: "Setup failed to configure the
server. Refer to the server error logs and setup error logs
for more information." After some searching some
people suggested the cause might existing datafiles, but
after removing all datafiles, it still doesn't work.
Installing with another instancename doesn't help. either
These are the MSDE Setup parameters:
- SAPWD="[password]" default
password for sa user
- /l*v [logfile]log the complete
installation
- SECURITYMODE=SQL install with
mixed mode authentication
- DISABLENETWORKPROTOCOLS=0 enable
access from other computers
- DATADIR ="[data folder]" specify a
dir other than default
-
INSTANCENAME="instancename"
- BLANKSAPWD=1 Install with blank SA
Password. SAPWD overrides this.
- ALLOWXDBCHAINING=1 Enables
cross-database ownership chaining.
- UPGRADEPWD="" Use if your
upgrading to SP3
- /i
- /settings You can specify all
MSDE parameters using an ini file in this format: [options]
DATADIR ="Data_Folder"
INSTANCENAME="Instance_Name"
Examining the logs I came to this problem:
Starting
custom action ConfigServerExecuting "C:\Program Files\Microsoft
SQL Server\80\Tools\Binn\cnfgsvr.exe -V 1 -M 1 -U sa -I
"MSSQLSERVER" -Q "SQL_Latin1_General_CP1_CI_AS""MSI (c)
(70:54)
[13:55:09:921]: Font created. Charset: Req=0, Ret=0, Font:
Req=MS Shell Dlg, Ret=MS Shell Dlg Setup failed to configure
the server. Refer to the server error logs and setup error logs
for more information.MSI (s) (D8!24)
[13:55:42:031]: Product: Microsoft SQL Server Desktop
Engine -- Setup failed to configure the server. Refer to the
server error logs and setup error logs for more information.
Action ended 13:55:42: InstallFinalize. Return value
3.
here's someone with the same problem:
http://www.masterado.net/home/ng/forum.sqlserver.msde/post13125079.aspx
Here's the microsoft technote on the subject
http://support.microsoft.com/default.aspx?scid=kb;en-us;816499&Product=sql2k
Nothing is working, so now I'll try this:
HOW TO:
Manually Remove a Microsoft SQL Server 2000 Desktop Engine
(MSDE 2000) Instance
The last post here by the way says that if you disable the
SECURITYMODE=SQL, it might work as well.
http://community.installshield.com/archive/index.php?t-124746.html
No, it doesn't.
Installing SQL Server 2000 Developer Edition gives me the
same problems, they're all related to the
(SECDoClientHandShake())... error.
I'm trying to remove the certificate authority installed
with selfssl.exe, see another post:
Setting up SSL in Windows 2003 & XP (within 10
minutes)
Now I'm trying to remove it using certutil, as described
here.
certutil.exe is available for Windows XP in the
Windows Server 2003 Administration Tools Pack
using this command certutil.exe -delkey "SELFSSL"
I was able to delete the conflicting certificate authority
keys, and tried reinstall (after restarting for the zillionth
time ofcourse)
Great! it works!
Apply SQL Server Service Pack 3, reinstall the SelfSSL
Certificate, and everything should be all
right...
conclusion
Solution in a nutshell:
http://www.sqlmonster.com/Uwe/Forum.aspx/sql-server-connect/1906/SSL-Security-Error-in-WinXP-SP2
Wich links to
PRB: SQL Server 2000 Installation or Local Connections Fail
with "SSL Security error :ConnectionOpen
(SECDoClientHandshake())" Error Message
Labels: Sql Server