Looking for an Oracle IPM replacement?

You have hundreds of thousands, maybe tens of millions, of documents in your old Oracle IPM 10g system with only 6 months before Oracle closes the support door on that product forever. Or maybe you’re running an Optika Acorde or Stellent IBPM system which has been out of support for years. You’ve looked at the new Oracle 11g platform and it’s too heavy, complex, and missing many key capabilities that you need, features like: external searching with Linked Servers, COLD support, Office and .NET integration points, easy setup and maintenance, and a workflow system that is actually usable for someone without a PhD. Oracle is clearly, and publically, going in a different direction and moving away from traditional enterprise imaging and transactional content management.

And even if you knew of an appropriate replacement technology, how are you going to migrate all of that content out of IPM without disrupting your business? What product vendor is going to know enough about your old IPM system to be able to get the content , applications, saved searches, workflows and profiles moved to their platform? Oh, and you don’t want simply to replacement on product for another – you want a good return on this migration investment!

ImageSource has been delivering and servicing Optika Acorde, Stellent IBPM, and Oracle IPM systems for nearly 20 years (don’t get me started on eMedia!). We recognized Oracle’s change in direction several years ago and have created the perfect replacement solution for the retiring 10g product. The ILINX suite offers the same content management capabilities as IPM but goes way beyond that. In fact, ILINX is more powerful, easier to deploy, use, and maintain, with better scalability, 100% browser-based, built-in retention management, more secure, free mobile clients, cloud-ready, built on the latest Microsoft technologies.. I could go on and on.

Check it out for yourself at www.ilinx.com

Join the dozens of other Oracle IPM customers that have made the easy switch to a better, more powerful ILINX solution!

Randy Weakly
VP of Software Development
ImageSource, Inc.

Pulling the value from a tag in an XML data type using T-SQL

If you need to extract the data from an XML data type column to be used as part of query, and you need it to be a usable data type in MS-SQL, you can use the Value() method.  Using the Value method, we can extract the data contained within an XML tag as a SQL Data Type. The Value() method takes two arguments:

XQuery and SQLType

The following returns the value stored in the second <SSID> tag as a VarChar(50):

— First we create an XML variable to store the data that we’ll use for this example
DECLARE @x xml
SET @x =      ‘<NETWORKS>
<SSID> Wompsters University </SSID>
<SSID> Wompsters Inc </SSID>

— Select the second SSID value and specify that we’d like to return it as a VarChar(50), (Keep in mind the <SSID> position starts at 1, not 0)
SELECT @x.value(‘(//NETWORKS/SSID)[2]’, ‘varchar(50)’);

— This will return the VarChar “Wompsters Inc”, which you could use like a normal String in any SQL query

Benn McGuire
QA Test Engineer
ImageSource, Inc.

Index Creation In SQL Azure

Doing some testing in SQL Azure, I found that table creation is a slightly different beast.  Simply using a SQL table creation script generated by the SQL Server Management Studio does not translate into the Azure environment.  I needed to make some modifications first to get the code working correctly, specifically how Indexes are created.

Continue reading

Backing Out Of A SQL Transaction

When writing MS SQL statements, sometimes it’s necessary to have several queries that work together in unison.  Whether it’s updating, deleting or inserting multiple rows into multiple, different tables, it’s nice to be able to run a series of SQL commands as one single step.  This is where running a batch transaction comes in handy, as the following set of sample code demonstrates.

INSERT INTO TestTable1 (Field1) values ('This is a sample value.');
INSERT INTO TestTable2 (Field1, Field2) values ('Performing a test insert', 'Into SQL');
INSERT INTO TestTable3 (Field1) values ('All of these inserts should be successful.');

As you can see, this transaction will perform all of the Insert statements specified.  If there is an error processing one of the statements, like one of the values being to large for the target column, an error will occur for just that statement and all of the rest of the SQL commands will process.  That includes commands that were intended to occur after the failed step, not just the ones before.

Continue reading

Migrating from MySQL to Microsoft SQL Server?

I ran across an interesting tool from Microsoft today that would migrate your contents from MySQL to MS SQL Server 2008 and SQL Azure, the cloud version.


I wonder when Oracle would release their migration tool.

There is one clear winner from this database war…the consumer and to that, I’d say let’s bring it on.