<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-31260171</id><updated>2012-01-10T12:34:36.492-08:00</updated><category term='Satellite Forms 7 exe icon file names'/><title type='text'>Jessel Aquing - APARC Systems</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>48</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-31260171.post-5607016327814104805</id><published>2012-01-10T12:33:00.000-08:00</published><updated>2012-01-10T12:34:36.506-08:00</updated><title type='text'></title><content type='html'>Code: AV000&lt;br /&gt;Message: APPROVED&lt;br /&gt;Description: Successful communication attempt.&lt;br /&gt;&lt;br /&gt;Code: AV400&lt;br /&gt;Message: OPERATOR LOGIN FAILED&lt;br /&gt;Description: Login credentials are wrong.&lt;br /&gt;&lt;br /&gt;Code: AV401&lt;br /&gt;Message: MAXIMUM ALLOWABLE LOGIN ATTEMPTS EXCEEDED&lt;br /&gt;Description: Account is locked due to exceeded failed attempts. Account must be unlocked by Advam administrator.&lt;br /&gt;&lt;br /&gt;Code: AV166&lt;br /&gt;Message: STORED PAN ID IS REQUIRED&lt;br /&gt;Description:&lt;br /&gt;&lt;br /&gt;Code: &lt;br /&gt;Message: &lt;br /&gt;Description:&lt;br /&gt;&lt;br /&gt;Code: &lt;br /&gt;Message: &lt;br /&gt;Description:&lt;br /&gt;&lt;br /&gt;Code: &lt;br /&gt;Message: &lt;br /&gt;Description:&lt;br /&gt;&lt;br /&gt;Code: &lt;br /&gt;Message: &lt;br /&gt;Description:&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5607016327814104805?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5607016327814104805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5607016327814104805' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5607016327814104805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5607016327814104805'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2012/01/code-av000-message-approved-description.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5529658558287525561</id><published>2011-08-31T10:27:00.000-07:00</published><updated>2011-08-31T10:27:44.618-07:00</updated><title type='text'></title><content type='html'>When integrating with Chase Payemtech E-Xact Pay-Pages, I could not get the HMAC-MD5 hash to generate properly and match what their Hash Generator was producing. After reading up on HMAC (http://en.wikipedia.org/wiki/HMAC) &lt;br /&gt;&lt;br /&gt;I ran some of their samples and found that what was being generated from the HMAC-MD5 was  the same result as HMAC SHA1 and NOT what the wiki said should be produced for HMAC-MD5.&lt;br /&gt;&lt;br /&gt;Solution? change the Pay-Page configuration to use SHA1 and use SHA1 to generate all the request and response validation hashes.&lt;br /&gt;&lt;br /&gt;x_fp_hash&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5529658558287525561?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5529658558287525561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5529658558287525561' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5529658558287525561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5529658558287525561'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/08/when-integrating-with-chase-payemtech-e.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5850763332161930667</id><published>2011-08-30T15:02:00.000-07:00</published><updated>2011-08-30T16:45:18.818-07:00</updated><title type='text'></title><content type='html'>taskmanager windows mobile&lt;br /&gt;force close an application on a windows mobile device&lt;br /&gt;Settings &gt; System &gt; Memory &gt; Running Programs&lt;br /&gt;&lt;br /&gt;Select app and click &lt;stop&gt;&lt;br /&gt;Or&lt;br /&gt;Click &lt;stop All&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5850763332161930667?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5850763332161930667/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5850763332161930667' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5850763332161930667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5850763332161930667'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/08/taskmanager-windows-mobile-force-close.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5886110966836889737</id><published>2011-06-08T12:40:00.001-07:00</published><updated>2011-06-08T12:40:39.297-07:00</updated><title type='text'></title><content type='html'>Collection of IF EXISTS statements for SQL&lt;br /&gt;&lt;br /&gt;IF EXISTS (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS&lt;br /&gt;WHERE TABLE_NAME = 'Aparc_SpaceSensorHistory' AND COLUMN_NAME = 'RecordedOn')&lt;br /&gt;&lt;br /&gt;IF  EXISTS (SELECT * FROM sys.foreign_keys&lt;br /&gt;WHERE object_id = OBJECT_ID(N'[dbo].[FK_Aparc_ParkingSpace_Aparc_ParkingSpace]') AND parent_object_id = OBJECT_ID(N'[dbo].[Aparc_ParkingSpace]'))&lt;br /&gt;&lt;br /&gt;IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Aparc_ParkingSpace]') AND type in (N'U'))&lt;br /&gt;&lt;br /&gt;SELECT * FROM sys.constraints&lt;br /&gt;&lt;br /&gt;ALTER TABLE dbo.Aparc_SpaceSensorHistory&lt;br /&gt; DROP CONSTRAINT DF_Aparc_SpaceSensorHistory_RecordedOn&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;ALTER TABLE dbo.Aparc_SpaceSensorHistory ADD&lt;br /&gt; RecordDate datetime NOT NULL CONSTRAINT DF_Aparc_SpaceSensorHistory_RecordDate DEFAULT getdate()&lt;br /&gt;&lt;br /&gt;IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[CorrectSpaceNumber]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))&lt;br /&gt;DROP FUNCTION [dbo].[CorrectSpaceNumber]&lt;br /&gt;&lt;br /&gt;IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[Aparc_ParkingPlateHistory]') AND name = N'IX_Aparc_ParkingPlateHistory')&lt;br /&gt;IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[Aparc_ParkingPlateHistory]') AND name = N'PK__Aparc_ParkingSpace')&lt;br /&gt;&lt;br /&gt;if not exists (select name from sys.objects where type_desc = 'DEFAULT_CONSTRAINT' and name = 'DF_AID_AGENCY_STAFF_CSR')&lt;br /&gt;&lt;br /&gt;IF EXISTS(SELECT * FROM SYS.OBJECTS WHERE type_desc = 'DEFAULT_CONSTRAINT' AND parent_object_id = OBJECT_ID(N'[dbo].[Aparc_ParkingPlate]' and name = 'DF_AID_AGENCY_STAFF_CSR'))&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5886110966836889737?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5886110966836889737/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5886110966836889737' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5886110966836889737'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5886110966836889737'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/06/collection-of-if-exists-statements-for.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-1517275026538039953</id><published>2011-04-19T11:59:00.000-07:00</published><updated>2011-04-19T11:59:04.448-07:00</updated><title type='text'></title><content type='html'>System.Data.Odbc.OdbcException: ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver][OPENEDGE]Failure getting record lock on a record from table PUB.#####.&lt;br /&gt;&lt;br /&gt;Solution: Add the no-lock statement to each select statement.&lt;br /&gt;&lt;br /&gt;SELECT * FROM PUB.##### WITH(NOLOCK)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-1517275026538039953?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/1517275026538039953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=1517275026538039953' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1517275026538039953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1517275026538039953'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/04/system.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-4416748022500449828</id><published>2011-04-12T11:45:00.000-07:00</published><updated>2011-04-12T11:45:04.130-07:00</updated><title type='text'></title><content type='html'>I was getting a System.ObjectDisposedException when trying to serialize/remote a LINQ result set via a webservice. The actual data result was fine. The problem lay with the parent and child relationships generated by LINQ. Looping through each result and setting all the relationship objects to null stopped the exception, but that was not a solution (merely identified the source of the issue). The solution (provided to me by co-worker: Robert Blasutig), is to prevent LINQ from trying to load parent and child relationships automatically.&lt;br /&gt;&lt;br /&gt;This is done by setting the DeferredLoadingEnabled property of the context to false.&lt;br /&gt;&lt;br /&gt;To then have LINQ load parent/child objects later, you must specify which relationships to load with the following:&lt;br /&gt;&lt;br /&gt;using (ClientDBDataContext clientCtx = new ClientDBDataContext(clientDbConnStr))&lt;br /&gt;{&lt;br /&gt;    clientCtx.DeferredLoadingEnabled = false;&lt;br /&gt;&lt;br /&gt;    DataLoadOptions loadOptions = new DataLoadOptions();&lt;br /&gt;    loadOptions.LoadWith&lt;DataTableName&gt;(dtAlias =&gt; dtAlias.ParentChildTableName);&lt;br /&gt;    clientCtx.LoadOptions = loadOptions;&lt;br /&gt;&lt;br /&gt;    ...query...&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;FULL EXCEPTION:&lt;br /&gt;&lt;br /&gt;System.InvalidOperationException: There was an error generating the XML document. ---&gt; System.ObjectDisposedException: Cannot access a disposed object.&lt;br /&gt;Object name: 'DataContext accessed after Dispose.'.&lt;br /&gt;   at System.Data.Linq.DataContext.GetTable(Type type)&lt;br /&gt;   at System.Data.Linq.CommonDataServices.GetDataMemberQuery(MetaDataMember member, Expression[] keyValues)&lt;br /&gt;   at System.Data.Linq.CommonDataServices.DeferredSourceFactory`1.ExecuteKeyQuery(Object[] keyValues)&lt;br /&gt;   at System.Data.Linq.CommonDataServices.DeferredSourceFactory`1.Execute(Object instance)&lt;br /&gt;   at System.Data.Linq.CommonDataServices.DeferredSourceFactory`1.DeferredSource.GetEnumerator()&lt;br /&gt;   at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)&lt;br /&gt;   at System.Data.Linq.EntityRef`1.get_Entity()&lt;br /&gt;   at AparcSystems.AparcDataAccess.Aparc_PdmTariff.get_Aparc_EnfArea()&lt;br /&gt;   at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write25_Aparc_PdmTariff(String n, String ns, Aparc_PdmTariff o, Boolean isNullable, Boolean needType)&lt;br /&gt;   at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write57_ArrayOfAparc_PdmTariff(Object o)&lt;br /&gt;   at Microsoft.Xml.Serialization.GeneratedAssembly.ListOfAparc_PdmTariffSerializer.Serialize(Object objectToSerialize, XmlSerializationWriter writer)&lt;br /&gt;   at System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id)&lt;br /&gt;   --- End of inner exception stack trace ---&lt;br /&gt;   at System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter, Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String id)&lt;br /&gt;   at System.Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter, Object o, XmlSerializerNamespaces namespaces)&lt;br /&gt;   at System.Xml.Serialization.XmlSerializer.Serialize(TextWriter textWriter, Object o)&lt;br /&gt;   at System.Web.Services.Protocols.XmlReturnWriter.Write(HttpResponse response, Stream outputStream, Object returnValue)&lt;br /&gt;   at System.Web.Services.Protocols.HttpServerProtocol.WriteReturns(Object[] returnValues, Stream outputStream)&lt;br /&gt;   at System.Web.Services.Protocols.WebServiceHandler.WriteReturns(Object[] returnValues)&lt;br /&gt;   at System.Web.Services.Protocols.WebServiceHandler.Invoke()&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-4416748022500449828?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/4416748022500449828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=4416748022500449828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/4416748022500449828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/4416748022500449828'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/04/i-was-getting-system.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-3047055779666583349</id><published>2011-04-11T12:23:00.000-07:00</published><updated>2011-04-11T12:23:06.627-07:00</updated><title type='text'></title><content type='html'>"DoInsertLogbookRecord" &lt;br /&gt;"DoInsertTransLogRecord" &lt;br /&gt;&lt;br /&gt;"Transaction context in use by another session"&lt;br /&gt;&lt;br /&gt;Trigger code updates a table in a database in local instance. Does not require (ie CANNOT HAVE) reference to [server\instance] name in target.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-3047055779666583349?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/3047055779666583349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=3047055779666583349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/3047055779666583349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/3047055779666583349'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/04/doinsertlogbookrecord.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-7873094144564959853</id><published>2011-01-17T16:07:00.000-08:00</published><updated>2011-01-17T16:07:28.084-08:00</updated><title type='text'></title><content type='html'>&lt;a href='http://3.bp.blogspot.com/_au-tIMlPjA8/TTTZv2ithzI/AAAAAAAAMoE/VVZ2RogIMBU/s1600/DSC00705.JPG'&gt;&lt;img src='http://3.bp.blogspot.com/_au-tIMlPjA8/TTTZv2ithzI/AAAAAAAAMoE/VVZ2RogIMBU/s320/DSC00705.JPG' border='0' alt=''style='clear:both;float:left; margin:0px 10px 10px 0;' /&gt;&lt;/a&gt;&amp;nbsp;&lt;div style='clear:both; text-align:LEFT'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-7873094144564959853?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/7873094144564959853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=7873094144564959853' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7873094144564959853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7873094144564959853'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2011/01/blog-post.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_au-tIMlPjA8/TTTZv2ithzI/AAAAAAAAMoE/VVZ2RogIMBU/s72-c/DSC00705.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-2855504187824871274</id><published>2010-12-02T21:17:00.000-08:00</published><updated>2010-12-02T21:17:27.734-08:00</updated><title type='text'></title><content type='html'>doctrine "Missing class name"&lt;br /&gt;Doctrine::generateModelsFromDb()&lt;br /&gt;&lt;br /&gt;Doctrine fails with generic exception "Missing Class Name"&lt;br /&gt;&lt;br /&gt;the model generation fails due to cross databases foreign key constraints.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PHP MAMP MySQL NaviCat&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-2855504187824871274?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/2855504187824871274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=2855504187824871274' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2855504187824871274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2855504187824871274'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/12/doctrine-missing-class-name.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-7231788782576275608</id><published>2010-11-15T10:00:00.001-08:00</published><updated>2010-11-15T10:46:21.380-08:00</updated><title type='text'></title><content type='html'>How to check open connections to a Progress database:&lt;br /&gt;&lt;br /&gt;proenv&gt;e: &lt;br /&gt;nav to DB file dir&lt;br /&gt;&lt;br /&gt;proenv&gt;cd progress\databases\customerDB&lt;br /&gt;&lt;br /&gt;proenv&gt;promon databaseName&lt;br /&gt;&lt;br /&gt;use Promon instructions to view various statuses of the db and users&lt;br /&gt;&lt;br /&gt;1.  User Control&lt;br /&gt;2.  Locking and Waiting Statistics&lt;br /&gt;3.  Block Access&lt;br /&gt;4.  Record Locking Table&lt;br /&gt;5.  Activity&lt;br /&gt;6.  Shared Resources&lt;br /&gt;7.  Database Status&lt;br /&gt;8.  Shut Down Database&lt;br /&gt;&lt;br /&gt;ETC...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-7231788782576275608?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/7231788782576275608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=7231788782576275608' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7231788782576275608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7231788782576275608'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/11/how-to-check-open-connections-to.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5790917672936213735</id><published>2010-11-13T00:06:00.001-08:00</published><updated>2010-11-13T00:06:30.988-08:00</updated><title type='text'></title><content type='html'>Progress Reports will not show.&lt;br /&gt;&lt;br /&gt;All connections to progress database are used ("No Resources Available"). Must clear a connection and terminate process.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5790917672936213735?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5790917672936213735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5790917672936213735' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5790917672936213735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5790917672936213735'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/11/progress-reports-will-not-show.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5936744022933181013</id><published>2010-11-10T18:56:00.000-08:00</published><updated>2010-11-10T18:56:02.167-08:00</updated><title type='text'></title><content type='html'>Error:&lt;br /&gt;Warning: include_once(Zend/Form/Element/password.php): failed to open stream:&lt;br /&gt;&lt;br /&gt;Solution:&lt;br /&gt;&lt;br /&gt;&lt;style type="text/css"&gt;p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco}span.s1 {color: #660000}span.s2 {color: #0000ff}span.s3 {color: #008200}&lt;/style&gt;   &lt;br /&gt;&lt;div class="p1"&gt;&lt;span class="s1"&gt;$password &lt;/span&gt;= &lt;span class="s2"&gt;new &lt;/span&gt;Zend_Form_Element_Password(&lt;span class="s3"&gt;'password'&lt;/span&gt;);&lt;/div&gt;&lt;div class="p1"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="p1"&gt;Zend_Form_Element_Password is CASE SensiTive&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5936744022933181013?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5936744022933181013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5936744022933181013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5936744022933181013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5936744022933181013'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/11/error-warning-includeoncezendformelemen.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-2202403952637802192</id><published>2010-08-24T15:20:00.001-07:00</published><updated>2010-08-24T15:20:05.271-07:00</updated><title type='text'></title><content type='html'>iPhone - Verify account info: security code invalid&lt;br /&gt;&lt;br /&gt;Set the credit card to "None" and save.&lt;br /&gt;You can re-add the credit card number later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-2202403952637802192?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/2202403952637802192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=2202403952637802192' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2202403952637802192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2202403952637802192'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/08/iphone-verify-account-info-security.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-1524614102904688312</id><published>2010-08-23T09:49:00.000-07:00</published><updated>2011-02-02T12:41:45.785-08:00</updated><title type='text'></title><content type='html'>&lt;b&gt;How to manually add a Progress OpenEdge ODBC Driver&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;ALERT&lt;/span&gt;: This requires registry edits, so take your normal precautions.&lt;br /&gt;&lt;br /&gt;Launch:&lt;br /&gt;regedit.exe&lt;br /&gt;&lt;br /&gt;Navigate to:&lt;br /&gt;(Windows)&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI&lt;br /&gt;&lt;br /&gt;(64bit Windows 7)&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI&lt;br /&gt;&lt;br /&gt;Add/Create the following key:&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Progress OpenEdge [&lt;b&gt;XX.XN&lt;/b&gt;] Driver&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where [&lt;b&gt;XX.XN&lt;/b&gt;] is your available version of the Progress bin. (e.g. 10.2C)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Open the&amp;nbsp;Progress OpenEdge &lt;b&gt;XX.XN &lt;/b&gt;Driver key and add the following strings (&lt;span class="Apple-style-span" style="color: red;"&gt;REG_SZ&lt;/span&gt;):&lt;/div&gt;&lt;div&gt;APILevel = "1"&lt;/div&gt;&lt;div&gt;ConnectFunctions = "YYN"&lt;/div&gt;&lt;div&gt;CPTimeout = "60"&lt;/div&gt;&lt;div&gt;DriverODBCVer = "3.50"&lt;/div&gt;&lt;div&gt;FileUsage = "0"&lt;/div&gt;&lt;div&gt;SQLLevel = "0"&lt;/div&gt;&lt;div&gt;UsageCount = "1"&lt;/div&gt;&lt;div&gt;Setup =&amp;nbsp;&amp;nbsp;"[&lt;b&gt;PATH&lt;/b&gt;]\pgoe1023.dll"&lt;/div&gt;&lt;div&gt;Driver = "[&lt;b&gt;PATH&lt;/b&gt;]\pgoe1023.dll"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where [&lt;b&gt;PATH&lt;/b&gt;] is the location of the "pgoe1023.dll" library (e.g. "C:\Progress\V102A\bin").&lt;br /&gt;&lt;br /&gt;&lt;b&gt;HINT:&amp;nbsp;&lt;/b&gt;&lt;i&gt;You may place the bin file(s+) anywhere on the local system.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Next, Navigate to:&lt;/div&gt;&lt;div&gt;(Windows)&lt;/div&gt;&lt;div&gt;HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(64bit Windows 7)&lt;/div&gt;&lt;div&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Add the following string&amp;nbsp;(&lt;span class="Apple-style-span" style="color: red;"&gt;REG_SZ&lt;/span&gt;):&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Progress OpenEdge [&lt;b&gt;XX.XN&lt;/b&gt;] Driver = "Installed"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where [&lt;b&gt;XX.XN&lt;/b&gt;] is your available version of the Progress bin. (e.g. 10.2C)&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You will now see the Progress OE ODBC driver available in the ODBC Manager (SysWoW64 version for Windows 7).&lt;br /&gt;&lt;br /&gt;connection string sample:&lt;br /&gt;&amp;lt;add name="ProgressDb" connectionString="DRIVER=Progress OpenEdge 10.2A driver;HOST=localhost;PORT=9999;DB=databaseName;UID=userId;PWD=password;" /&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-1524614102904688312?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/1524614102904688312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=1524614102904688312' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1524614102904688312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1524614102904688312'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/08/how-to-manually-add-progress-openedge_23.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5037548741910871625</id><published>2010-08-23T09:45:00.000-07:00</published><updated>2010-08-23T09:45:09.423-07:00</updated><title type='text'></title><content type='html'>How to manually add a Progress OpenEdge ODBC Driver&lt;br /&gt;&lt;br /&gt;Launch regedit.exe&lt;br /&gt;Navigate to:&lt;br /&gt;(Windows)&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI&lt;br /&gt;&lt;br /&gt;(64bit Windows 7)&lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI&lt;br /&gt;&lt;br /&gt;Add/Create the following key:&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Progress OpenEdge [XX.XN] Driver&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where [XX.XN] is your available version of the Progress bin. (e.g. 10.2C)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Open the&amp;nbsp;Progress OpenEdge XX.XN Driver key and add the following strings (REG_SZ):&lt;/div&gt;&lt;div&gt;APILevel = "1"&lt;/div&gt;&lt;div&gt;ConnectFunctions = "YYN"&lt;/div&gt;&lt;div&gt;CPTimeout = "60"&lt;/div&gt;&lt;div&gt;DriverODBCVer = "3.50"&lt;/div&gt;&lt;div&gt;FileUsage = "0"&lt;/div&gt;&lt;div&gt;SQLLevel = "0"&lt;/div&gt;&lt;div&gt;UsageCount = "1"&lt;/div&gt;&lt;div&gt;Setup =&amp;nbsp;&amp;nbsp;"[PATH]\pgoe1023.dll"&lt;/div&gt;&lt;div&gt;Driver = "[PATH]\pgoe1023.dll"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where [PATH] is the location of the "pgoe1023.dll" library (e.g. "C:\Progress\V102A\bin"). You may place this file anywhere on the local system.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Next, Navigate to:&lt;/div&gt;&lt;div&gt;(Windows)&lt;/div&gt;&lt;div&gt;HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(64bit Windows 7)&lt;/div&gt;&lt;div&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Add the following string&amp;nbsp;(REG_SZ):&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Progress OpenEdge [XX.XN] Driver = "Installed"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Where [XX.XN] is your available version of the Progress bin. (e.g. 10.2C)&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You will now see the Progress OE ODBC driver available in the ODBC Manager (SysWoW64 version for Windows 7).&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5037548741910871625?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5037548741910871625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5037548741910871625' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5037548741910871625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5037548741910871625'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/08/how-to-manually-add-progress-openedge.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-2976230944202766126</id><published>2010-08-18T13:46:00.000-07:00</published><updated>2010-08-18T13:46:31.527-07:00</updated><title type='text'></title><content type='html'>ODBC Driver Issue: &amp;nbsp;Progress OpenEdge - error code 193&lt;br /&gt;&lt;br /&gt;You are trying to create a 64bit ODBC connection using a 32bit driver and the 32bit driver does not appear in the 32bit ODBC connection manager (SysWOW64)&lt;br /&gt;&lt;br /&gt;You need to add the following keys:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers]&lt;br /&gt;"Progress OpenEdge 10.2A driver"="Installed"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\Progress OpenEdge 10.2A Driver]&lt;br /&gt;"Driver"="[DLC]\\bin\\pgoe1023.dll"&lt;br /&gt;"Setup"="[DLC]\\bin\\pgoe1023.dll"&lt;br /&gt;"DriverODBCVer"="3.50"&lt;br /&gt;"APILevel"="1"&lt;br /&gt;"ConnectFunctions"="YYN"&lt;br /&gt;"CPTimeout"="60"&lt;br /&gt;"FileUsage"="0"&lt;br /&gt;"SQLLevel"="0"&lt;br /&gt;"UsageCount"="1"&lt;br /&gt;&lt;br /&gt;[DLC] should refer to the 10.2A installation directory&lt;br /&gt;&lt;br /&gt;{From ProgressTalk&amp;nbsp;Kbase Solution P141118}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-2976230944202766126?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/2976230944202766126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=2976230944202766126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2976230944202766126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2976230944202766126'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/08/odbc-driver-issue-openedge-error-code.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-4364321857257882647</id><published>2010-08-12T11:49:00.000-07:00</published><updated>2010-08-12T11:49:55.082-07:00</updated><title type='text'></title><content type='html'>Set multiple sites running SSL over port 443 in IIS&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="MsoNormal"&gt;c:\windows\system32\cscript.exe C:\Inetpub\AdminScripts\adsutil.vbs set /w3svc/52796006/SecureBindings ":443:www.domain.com"&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-4364321857257882647?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/4364321857257882647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=4364321857257882647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/4364321857257882647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/4364321857257882647'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/08/set-multiple-sites-running-ssl-over.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6090969477690377297</id><published>2010-08-04T18:38:00.000-07:00</published><updated>2010-09-17T17:56:42.374-07:00</updated><title type='text'></title><content type='html'>Progress SQL ODBC errors:&lt;br /&gt;&lt;br /&gt;i) System.Data.Odbc.OdbcException: ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver][OPENEDGE]Invalid number string (7498)&lt;br /&gt;&lt;br /&gt;SOLUTION: Lookup Type/Value Not Found - check values bound to lists/types&lt;br /&gt;&lt;br /&gt;ii)&amp;nbsp;[PROGRESS]Lock table is full. (7870)&lt;br /&gt;sol:&amp;nbsp;# Lock Table Entries is too small. Increase in ODBC connection properties.&lt;br /&gt;&lt;br /&gt;iii)&amp;nbsp;[System.Data.Odbc.OdbcException] = {"ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver][OPENEDGE]Character string is too long (8184)"}&lt;br /&gt;&lt;br /&gt;SOLUTION:&amp;nbsp;Text in a Formatted field (Date or Time or Currency...) contains invalid or extra characters (" ", leading space).&lt;br /&gt;&lt;br /&gt;iv)&amp;nbsp;[ODBC Progress OpenEdge Wire Protocol driver]Optional feature not implemented.&lt;br /&gt;[OPENEDGE]Broker rejects connection&lt;br /&gt;&lt;br /&gt;SOLUTION:&amp;nbsp;PEO database is not setup for SQL (4GL only) OR&amp;nbsp;Database needed a restart.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6090969477690377297?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6090969477690377297/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6090969477690377297' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6090969477690377297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6090969477690377297'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/08/progress-sql-odbc-errors-i-system.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6217726006835857431</id><published>2010-07-28T12:26:00.000-07:00</published><updated>2010-07-28T12:26:38.376-07:00</updated><title type='text'></title><content type='html'>&lt;strong&gt;SQL Server 2005 - Loop through/split a delimited string&lt;/strong&gt;&lt;br /&gt;Here is a further cleaned up, generalized,&amp;nbsp;and working&amp;nbsp;version of a T-SQL script to take in comma delimited list and parse it into elements and operate on the individual values:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;GO&lt;br /&gt;DECLARE @commaList AS VARCHAR(MAX)&lt;br /&gt;SET @commaList = '1,2,3,4'&lt;br /&gt;&lt;br /&gt;DECLARE @pos as INT&lt;br /&gt;IF substring(@commaList, LEN(@commaList),1) &amp;lt;&amp;gt; ','&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;SET @commaList = @commaList + ','&lt;br /&gt;&lt;br /&gt;print substring(@commaList, LEN(@commaList),1)&lt;br /&gt;SET @pos=0&lt;br /&gt;DECLARE @listItem as int&lt;br /&gt;&lt;br /&gt;WHILE charindex(',',@commaList)&amp;gt;0&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;BEGIN&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;SET @listItem = cast(substring(@commaList,0, charindex(',',@commaList)) as int)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/***********PERFORM ACTION***********/&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PRINT @listItem&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/*************END ACTION*************/&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;SET @commaList = substring(@commaList, charindex(',',@commaList)+1, LEN(@commaList) - @pos) --remove the first item from the list&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;END&lt;br /&gt;&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;The original script came from &lt;a href="http://www.vbforums.com/showthread.php?t=507592"&gt;here&lt;/a&gt;, but was too specific to the original writer's needs and did not perform any action on the last value...&lt;br /&gt;The original writer also mentions, that he (and I) does the cast to int because he requires an INT. If you do not, do not do the cast.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;"SQL Server 2005 - Loop through/split a delimited string"&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://www.vbforums.com/showthread.php?t=507592"&gt;http://www.vbforums.com/showthread.php?t=507592&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6217726006835857431?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6217726006835857431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6217726006835857431' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6217726006835857431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6217726006835857431'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/07/sql-server-2005-loop-throughsplit.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6984934784584752922</id><published>2010-06-29T14:56:00.000-07:00</published><updated>2010-06-29T14:56:11.978-07:00</updated><title type='text'></title><content type='html'>Windows 7 Blackscreen of Death BSOD -&amp;nbsp;Completely black desktop with mouse activity.&lt;br /&gt;&lt;br /&gt;Just got a windows 7 notebook machine back up and running after suffering the BlackScreenOfDeath Issue.&lt;br /&gt;&lt;br /&gt;Initially I suspected that the screen settings had shifted the desktop off to an external monitor which was not currently attached. But when no context menu came up from a right click of the desktop, I realized there was no desktop running. This led me to believe that explorer.exe had not started. So with a ctrl+alt+del I got to the task manager (good sign) and could see that indeed there was no explorer.exe process running.&lt;br /&gt;&lt;br /&gt;The next step was to try and fire it up manually using the "New Task" button on the Task Manager. This only returned an error message stating that no explorer.exe could be found. I did a little Google-ing to confirm that explorer &amp;nbsp;was still explorer in Windows 7 (which it is). Along with that Google search I found out that I was experiencing the BlackScreenOfDeath issue and that the security company PrevX had a solution (&lt;a href="http://www.prevx.com/blog/140/Black-Screen-woes-could-affect-millions-on-Windows--Vista-and-XP.html"&gt;PrevX Article&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;I later read that&amp;nbsp;the PrevX solution&amp;nbsp;was not the fix-all. It did address the issue of a possible missing registry key which points to the location of explorer.exe for the system to launch the desktop process when a user logs on. After confirming the registry key was intact, off to confirming the location of the exe.&lt;br /&gt;&lt;br /&gt;The explorer.exe file should be located in the Windows directory, but it was not. Which explains why the desktop failed to launch leaving the user with the BSOD. I did a search of the user's hard drive and found several versions of the exe in question in subdirectories located in the Windows\winsxs directory. Curiously, I launched one of the executables located under an "AMD64..." directory (even though this was an INTEL) and the desktop loaded. The explorer.exe's under the "WOW64..." and "X86..." directories failed to launch with an error.&lt;br /&gt;&lt;br /&gt;In the end, I copied the explorer.exe (the one that worked) from the Windows\winsxs\AMD64... directory into the Windows directory and restarted the machine.&lt;br /&gt;&lt;br /&gt;Whaa Lahh, the machine is golden. Hope this helps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6984934784584752922?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6984934784584752922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6984934784584752922' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6984934784584752922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6984934784584752922'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/06/windows-7-blackscreen-of-death-bsod.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-7406638509086208829</id><published>2010-06-23T16:29:00.001-07:00</published><updated>2010-06-23T16:29:13.995-07:00</updated><title type='text'></title><content type='html'>From TIM&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;strong&gt;Serialize &lt;/strong&gt;(convert an object instance to an XML document):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="color: blue;"&gt;&lt;span style="font-family: 'Courier New';"&gt;// Assuming obj is an instance of an object&lt;br /&gt;XmlSerializer ser = &lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;new&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;&lt;span style="color: blue; font-size: x-small;"&gt; XmlSerializer(obj.GetType());&lt;br /&gt;System.Text.StringBuilder sb = new&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;&lt;span style="color: blue; font-size: x-small;"&gt; System.Text.StringBuilder();&lt;br /&gt;System.IO.StringWriter writer = new&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;&lt;span style="color: blue; font-size: x-small;"&gt; System.IO.StringWriter(sb);&lt;br /&gt;ser.Serialize(writer, obj);&lt;br /&gt;XmlDocument doc = new&lt;/span&gt;&lt;/span&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: x-small;"&gt; XmlDocument();&lt;br /&gt;doc.LoadXml(sb.ToString());&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;strong&gt;Deserialize &lt;/strong&gt;(convert an XML document into an object instance):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="color: blue;"&gt;&lt;span style="font-family: 'Courier New';"&gt;//Assuming doc is an XML document containing a serialized object and objType is a System.Type&amp;nbsp;set to the type of the object.&lt;br /&gt;XmlNodeReader reader = &lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;new&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;&lt;span style="color: blue; font-size: x-small;"&gt; XmlNodeReader(doc.DocumentElement);&lt;br /&gt;XmlSerializer ser = new&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New';"&gt;&lt;span style="color: blue; font-size: x-small;"&gt; XmlSerializer(objType);&lt;br /&gt;object&lt;/span&gt;&lt;/span&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: x-small;"&gt; obj = ser.Deserialize(reader);&lt;/span&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: x-small;"&gt;// Then you just need to cast obj into whatever type it is eg:&lt;br /&gt;MyClass myObj = (MyClass)obj;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: x-small;"&gt;Thanks Tim&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-7406638509086208829?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/7406638509086208829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=7406638509086208829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7406638509086208829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7406638509086208829'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/06/from-tim-serialize-convert-object.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-1526410201314397846</id><published>2010-06-14T10:45:00.000-07:00</published><updated>2010-11-24T14:49:45.389-08:00</updated><title type='text'></title><content type='html'>To add user to ASAM&lt;br /&gt;1) Create account&lt;br /&gt;2) Add account and areacode relationship(s)&lt;br /&gt;&lt;br /&gt;To add Sity client reports to a Client&lt;br /&gt;1) Add Client SQLRS server account as "browser" to SityClient Reports folder.&lt;br /&gt;2) Add&amp;nbsp;Client SQLRS server account to the&amp;nbsp;[AparcSystemsSpExecutor] role&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NOTE:&lt;br /&gt;&lt;br /&gt;Be sure all NEW procedures are added to the [AparcSystemsSpExecutor] role&lt;br /&gt;&lt;br /&gt;To Add a SQLRS user&lt;br /&gt;1) Create new machine/Windows account ("svcServiceAccount")&lt;br /&gt;2) Add user to SQL server instance(s)&lt;br /&gt;3) Add to:&lt;br /&gt;i) AparcSystems with R/W permissions and AparcSystemsSpExecutor&lt;br /&gt;ii) SityDb with R permissions&lt;br /&gt;iii) SityDbxxxxx Client DB with R permissions and AparcSystemsSpExecutor&lt;br /&gt;4) Add user account to SQLRS reports user param for Client via ASAM.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-1526410201314397846?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/1526410201314397846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=1526410201314397846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1526410201314397846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1526410201314397846'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/06/to-add-user-to-asam-1-create-account-2.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5543135998058127173</id><published>2010-06-12T21:12:00.000-07:00</published><updated>2010-06-12T21:12:32.976-07:00</updated><title type='text'></title><content type='html'>When Posting Sity Client Reports, all reports must have their datasource properties changed to use:&lt;br /&gt;&lt;br /&gt;&lt;input checked="checked" id="ui_rdoIntegratedDataSource_0" name="ui_credentialOptionsDataSource_0" type="radio" value="ui_rdoIntegratedDataSource_0" /&gt;&lt;label for="ui_rdoIntegratedDataSource_0"&gt;Windows integrated security&lt;/label&gt;&lt;br /&gt;&lt;br /&gt;Hit &amp;lt;Apply&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5543135998058127173?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5543135998058127173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5543135998058127173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5543135998058127173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5543135998058127173'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/06/when-posting-sity-client-reports-all.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6213364843706946571</id><published>2010-06-03T10:26:00.000-07:00</published><updated>2010-06-03T10:26:38.508-07:00</updated><title type='text'></title><content type='html'>When passing SQLRS report parameters through the URL be sure to use the ReportServer and not the Reports&lt;br /&gt;&lt;br /&gt;Want to pass hidden parameters to an SQLRS report in a browser?&lt;br /&gt;Just add the parameter name and value to the query string pointing at the ReportServer URL like so:&lt;br /&gt;&lt;br /&gt;http://reportingserver.aparcsystems.com/ReportServer/Pages/ReportViewer.aspx?%2fReports%2fTransactionDetails&amp;amp;rs%3aCommand=Render&amp;amp;PARAMNAME=PARAMVALUE&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6213364843706946571?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6213364843706946571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6213364843706946571' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6213364843706946571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6213364843706946571'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/06/when-passing-sqlrs-report-parameters.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6799058312847667981</id><published>2010-05-05T11:41:00.000-07:00</published><updated>2010-05-05T15:07:58.939-07:00</updated><title type='text'></title><content type='html'>Loading an unmanaged C++ dll into a managed c# class (.Net 3.5)&lt;br /&gt;&lt;br /&gt;I am developing a .NET 3.5 C# Webservice which calls methods from within an unmanaged C++ dll. Aside from the basic issues of wrapping the structs and method calls for use by the C# class, I ran into a couple of hurdles deploying.&lt;br /&gt;&lt;br /&gt;ISSUES:&lt;br /&gt;(1)&lt;br /&gt;Server was unable to process request. ---&gt; System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)&lt;br /&gt;&lt;br /&gt;(2)&lt;br /&gt;Server was unable to process request. ---&gt; Unable to load DLL 'SPInterface.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)&lt;br /&gt;&lt;br /&gt;SOLUTIONS:&lt;br /&gt;(1)&lt;br /&gt;Be sure that your app_pool managing your webservice/site is allowing 32bit applications if running on a 64bit platform (IIS7)&lt;br /&gt;OR&lt;br /&gt;Be sure that your application is built as an x86 project&lt;br /&gt;goto Configuration Manager and set the project to build as x86&lt;br /&gt;(If Configuration Manager is not available, goto Tool&gt;Options&gt;Projects and Solutions&gt;General&gt;Show advanced build configurations)&lt;br /&gt;&lt;br /&gt;(2)&lt;br /&gt;Be sure that your unmanaged dll appears in your site bin folder.&lt;br /&gt;Be sure that all resources (dll, lib, etc.) referenced by your dll are also in your bin.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6799058312847667981?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6799058312847667981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6799058312847667981' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6799058312847667981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6799058312847667981'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/05/loading-unmanaged-c-dll-into-managed-c.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-8518684950401419175</id><published>2010-04-21T16:32:00.000-07:00</published><updated>2010-04-22T22:59:23.824-07:00</updated><title type='text'></title><content type='html'>While loading controls inside an asp:LinkButton will render correctly on Page_Load, after post back the control loses the contained controls&lt;br /&gt;&lt;br /&gt;e.g.&lt;br /&gt;&amp;lt;asp:LinkButton id="btnShowReport" runat="server" OnClick="btnShowReport_Click"&amp;gt;&lt;br /&gt;  &amp;lt;img src="images/16doc.gif" height="16" width="16" /&amp;gt;&lt;br /&gt;  &amp;lt;asp:Label id="lblReportTitle" runat="server"/&amp;gt;&lt;br /&gt;&amp;lt;/asp:LinkButton&amp;gt;&lt;br /&gt;&lt;br /&gt;This code appeared within an asp:Repeater, where the CommandName and CommandArgument of the LinkButton were being set dynamically along with the Text property of the Label. But on postback to bthShowReport_Click, all the links essentially disappeared. I discovered that the &amp;lt;a&amp;gt; tags where still in the page on PostBack, but the contents making them functional where gone.&lt;br /&gt;&lt;br /&gt;It was a nice try but now... Just as simple but perhaps more elegant, but mostly IT WORKS!&lt;br /&gt;&lt;br /&gt;&amp;lt;asp:ImageButton id="btnShowReport" runat="server" OnClick="btnShowReport_Click" ImageUrl="images/16doc.gif" style="vertical-align: middle"/&amp;gt;&lt;br /&gt;&amp;lt;a&amp;gt;&lt;br /&gt;    &amp;lt;asp:Label id="lblReportTitle" runat="server" AssociatedControlID="btnShowReport"/&amp;gt;&lt;br /&gt;&amp;lt;/a&amp;gt;&lt;br /&gt;&lt;br /&gt;I use the associated control to tie the label to the click event of the image button and some anchor tags give the linkbutton feel to the label.&lt;br /&gt;Could have made the label a linkbutton and use the same onclick event handler as the imagebutton . But in the method I would have to check the type to do the correct cast of sender in order to get the command name and argument.&lt;br /&gt;&lt;br /&gt;Dumb problem, simple solution. It just drove me nuts to see all the links disappear on postback so had to blog it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-8518684950401419175?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/8518684950401419175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=8518684950401419175' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/8518684950401419175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/8518684950401419175'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/04/while-loading-controls-inside.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5993555583207877584</id><published>2010-04-19T12:44:00.000-07:00</published><updated>2010-04-19T12:44:51.191-07:00</updated><title type='text'></title><content type='html'>Born in the West Indies, but for the next 2 weeks I'm a PROUD CANADIAN!&lt;br /&gt;&lt;br /&gt;GO CANADA!&lt;br /&gt;http://picasaweb.google.com/trinijessel See my photos from the 2010 Winter Olympics here in Vancouver&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5993555583207877584?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5993555583207877584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5993555583207877584' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5993555583207877584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5993555583207877584'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/04/born-in-west-indies-but-for-next-2.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-4794260900962692203</id><published>2010-02-10T13:15:00.000-08:00</published><updated>2010-02-11T10:23:58.885-08:00</updated><title type='text'></title><content type='html'>A Simple(rudimentary) implementation of XPath node search (SelectSingleNode) for OpenEdge 10.2A&lt;br /&gt;&lt;br /&gt;- DOES NOT implement Node value filtering (yet)&lt;br /&gt;- Implements Positional referencing/filtering&lt;br /&gt;- DOES NOT implement Attribute searching (yet)&lt;br /&gt;- DOES NOT implement Multiple node result selection like SelectNodes (new function coming)&lt;br /&gt;&lt;br /&gt;NOTE: This is a work in progress.&lt;br /&gt;&lt;br /&gt;NOTE: You will need to declare the following global variable:&lt;br /&gt;DEFINE VARIABLE recurseXPath AS LOGICAL NO-UNDO.&lt;br /&gt;&lt;br /&gt;FUNCTION SelectSingleNode RETURNS LOGICAL (INPUT hXBaseNode AS HANDLE,INPUT xPath AS CHARACTER, OUTPUT hXNode AS HANDLE):    &lt;br /&gt;DEFINE VARIABLE hXCurrentNode AS HANDLE.&lt;br /&gt;DEFINE VARIABLE hXChildNode AS HANDLE.&lt;br /&gt;DEFINE VARIABLE childCount AS INTEGER.&lt;br /&gt;DEFINE VARIABLE currentPosition AS INTEGER.&lt;br /&gt;DEFINE VARIABLE startPosition AS INTEGER.&lt;br /&gt;DEFINE VARIABLE endPosition AS INTEGER.&lt;br /&gt;DEFINE VARIABLE iterationDone AS LOGICAL.&lt;br /&gt;DEFINE VARIABLE nodeName AS CHARACTER.&lt;br /&gt;DEFINE VARIABLE pathSegment AS CHARACTER.&lt;br /&gt;DEFINE VARIABLE nodeFilter AS CHARACTER.&lt;br /&gt;DEFINE VARIABLE fqNodeName AS CHARACTER.&lt;br /&gt;DEFINE VARIABLE subPath AS CHARACTER.&lt;br /&gt;&lt;br /&gt;CREATE X-NODEREF hXCurrentNode.&lt;br /&gt;CREATE X-NODEREF hXChildNode.&lt;br /&gt;&lt;br /&gt;IF (SUBSTRING(xPath, 1, 2) = "//") THEN DO:&lt;br /&gt;recurseXPath = TRUE.&lt;br /&gt;subPath = SUBSTRING(xPath, 3).&lt;br /&gt;hXCurrentNode = hXBaseNode:OWNER-DOCUMENT. &lt;br /&gt;END.&lt;br /&gt;ELSE IF (SUBSTRING(xPath,1,2) = "..") THEN DO:&lt;br /&gt;subPath = SUBSTRING(xPath, 3).&lt;br /&gt;hxBaseNode:GET-PARENT(hXCurrentNode).&lt;br /&gt;END.&lt;br /&gt;ELSE IF (SUBSTRING(xPath,1,2) = "./") THEN DO:&lt;br /&gt;subPath = SUBSTRING(xPath, 3).&lt;br /&gt;hXCurrentNode = hxBaseNode.&lt;br /&gt;END.&lt;br /&gt;ELSE IF (SUBSTRING(xPath, 1, 1) = "/") THEN DO:&lt;br /&gt;subPath = SUBSTRING(xPath, 2).&lt;br /&gt;hXCurrentNode = hxBaseNode.&lt;br /&gt;END.&lt;br /&gt;ELSE DO:&lt;br /&gt;subPath = xPath.&lt;br /&gt;hXCurrentNode = hxBaseNode.&lt;br /&gt;END.&lt;br /&gt;&lt;br /&gt;iterationDone = FALSE.&lt;br /&gt;pathSegment = ENTRY(1, subPath, "/").&lt;br /&gt;subPath = SUBSTRING(subPath,LENGTH(pathSegment) + 1).&lt;br /&gt;&lt;br /&gt;/* need to validate prefixes used. */&lt;br /&gt;DO ON ERROR UNDO, LEAVE:&lt;br /&gt;fqNodeName = ENTRY(1, pathSegment, "[").&lt;br /&gt;nodeFilter = ENTRY(2, pathSegment, "[").&lt;br /&gt;nodeFilter = SUBSTRING(nodeFilter, 1, LENGTH(nodeFilter) - 1).&lt;br /&gt;&lt;br /&gt;CATCH err AS Progress.Lang.SysError:&lt;br /&gt;nodeFilter = "".&lt;br /&gt;fqNodeName = pathSegment.&lt;br /&gt;/* LOG ERROR */&lt;br /&gt;END CATCH.&lt;br /&gt;END.&lt;br /&gt;&lt;br /&gt;/* need to validate prefixes used. */&lt;br /&gt;DO ON ERROR UNDO, LEAVE:&lt;br /&gt;nodeName = ENTRY(2, fqNodeName, ":").&lt;br /&gt;CATCH err AS Progress.Lang.SysError:&lt;br /&gt;nodeName = fqNodeName.&lt;br /&gt;/* LOG ERROR */&lt;br /&gt;END CATCH.&lt;br /&gt;END.&lt;br /&gt;&lt;br /&gt;DO ON ERROR UNDO, LEAVE:&lt;br /&gt;&lt;br /&gt;startPosition = 1.&lt;br /&gt;endPosition = hXCurrentNode:NUM-CHILDREN.&lt;br /&gt;&lt;br /&gt;DO currentPosition = startPosition TO endPosition:&lt;br /&gt;hXCurrentNode:GET-CHILD(hXChildNode, currentPosition).&lt;br /&gt;IF (hXChildNode:SUBTYPE = "ELEMENT") THEN DO:&lt;br /&gt;IF (hXChildNode:NAME = fqNodeName) THEN DO:&lt;br /&gt;/* apply filter */&lt;br /&gt;IF (nodeFilter = "" OR (hXChildNode:CHILD-NUM = INTEGER(nodeFilter))) THEN DO:&lt;br /&gt;hXCurrentNode = hXChildNode.&lt;br /&gt;hxNode = hXCurrentNode.&lt;br /&gt;iterationDone = TRUE.&lt;br /&gt;recurseXPath = FALSE.&lt;br /&gt;LEAVE.&lt;br /&gt;END.&lt;br /&gt;END.&lt;br /&gt;IF (recurseXPath = TRUE AND hXChildNode:NUM-CHILDREN &gt; 0) THEN DO:&lt;br /&gt;DEFINE VARIABLE hxFirstChild AS HANDLE.&lt;br /&gt;CREATE X-NODEREF hxFirstChild.&lt;br /&gt;hXChildNode:GET-CHILD(hxFirstChild,1).&lt;br /&gt;&lt;br /&gt;IF (hxFirstChild:SUBTYPE = "ELEMENT")  THEN DO:&lt;br /&gt;iterationDone = SelectSingleNode(hXChildNode, pathSegment, hxNode).&lt;br /&gt;IF (hxNode:NAME = fqNodeName) THEN DO:&lt;br /&gt;hXCurrentNode = hxNode.&lt;br /&gt;iterationDone = TRUE.&lt;br /&gt;recurseXPath = FALSE.&lt;br /&gt;END.&lt;br /&gt;END.&lt;br /&gt;END.&lt;br /&gt;END.&lt;br /&gt;END.&lt;br /&gt;&lt;br /&gt;IF (iterationDone = TRUE) THEN&lt;br /&gt;DO WHILE (ENTRY(2, subPath, "/") &lt;&gt; ""):&lt;br /&gt;RETURN SelectSingleNode(hXCurrentNode, subPath, hxNode).&lt;br /&gt;END.&lt;br /&gt;&lt;br /&gt;RETURN iterationDone.&lt;br /&gt;&lt;br /&gt;CATCH err AS PROGRESS.Lang.SysError:&lt;br /&gt;RETURN iterationDone.&lt;br /&gt;END CATCH.&lt;br /&gt;END.&lt;br /&gt;RETURN iterationDone.&lt;br /&gt;END FUNCTION.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-4794260900962692203?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/4794260900962692203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=4794260900962692203' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/4794260900962692203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/4794260900962692203'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/02/simplerudimentary-implementation-of.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-2361809125655895781</id><published>2010-02-10T13:10:00.001-08:00</published><updated>2010-02-10T13:10:58.735-08:00</updated><title type='text'></title><content type='html'>A simple pair of Get and Set Inner Text functions for OpenEdge Xml:&lt;br /&gt;&lt;br /&gt;FUNCTION SetInnerText RETURNS CHARACTER (INPUT hxDoc AS HANDLE, INPUT-OUTPUT hXBaseNode AS HANDLE, INPUT nodeValue AS CHARACTER):    &lt;br /&gt;    DEFINE VARIABLE hxTextNode AS HANDLE NO-UNDO.&lt;br /&gt;    CREATE X-NODEREF hxTextNode.&lt;br /&gt;&lt;br /&gt;    DO ON ERROR UNDO, LEAVE:&lt;br /&gt;        IF(hxBaseNode:NUM-CHILDREN &gt; 0) THEN DO:&lt;br /&gt;            hxBaseNode:GET-CHILD(hxTextNode, 1).&lt;br /&gt;            IF (hxTextNode:SUBTYPE = "TEXT") THEN DO:&lt;br /&gt;                hxTextNode:NODE-VALUE = nodeValue.&lt;br /&gt;                RETURN hxTextNode:NODE-VALUE.&lt;br /&gt;            END.&lt;br /&gt;            ELSE&lt;br /&gt;                RETURN "".&lt;br /&gt;        END.&lt;br /&gt;        ELSE DO:&lt;br /&gt;            hxDoc:CREATE-NODE(hxTextNode, "", "TEXT").&lt;br /&gt;            hxTextNode:NODE-VALUE = nodeValue.&lt;br /&gt;            hXBaseNode:APPEND-CHILD(hxTextNode).&lt;br /&gt;            RETURN hxTextNode:NODE-VALUE.&lt;br /&gt;        END.&lt;br /&gt;        CATCH err AS PROGRESS.Lang.SysError:&lt;br /&gt;            RETURN "".&lt;br /&gt;        END CATCH.&lt;br /&gt;    END.&lt;br /&gt;END FUNCTION.&lt;br /&gt;&lt;br /&gt;FUNCTION GetInnerText RETURNS CHARACTER (INPUT hXBaseNode AS HANDLE):    &lt;br /&gt;    DEFINE VARIABLE hxTextNode AS HANDLE NO-UNDO.&lt;br /&gt;    CREATE X-NODEREF hxTextNode.&lt;br /&gt;&lt;br /&gt;    DO ON ERROR UNDO, LEAVE:&lt;br /&gt;        hxBaseNode:GET-CHILD(hxTextNode, 1).&lt;br /&gt;        IF (hxTextNode:SUBTYPE = "TEXT") THEN DO:&lt;br /&gt;            RETURN hxTextNode:NODE-VALUE.&lt;br /&gt;        END.&lt;br /&gt;        ELSE&lt;br /&gt;            RETURN "".&lt;br /&gt;        CATCH err AS PROGRESS.Lang.SysError:&lt;br /&gt;            RETURN "".&lt;br /&gt;        END CATCH.&lt;br /&gt;    END.&lt;br /&gt;END FUNCTION.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-2361809125655895781?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/2361809125655895781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=2361809125655895781' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2361809125655895781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/2361809125655895781'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/02/simple-pair-of-get-and-set-inner-text.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6594065255323896472</id><published>2010-02-10T12:31:00.000-08:00</published><updated>2010-02-10T12:31:01.967-08:00</updated><title type='text'></title><content type='html'>SOAP Sniffing in OpenEdge 10.2.A&lt;br /&gt;&lt;br /&gt;From the OpenEdge development environment prompt run the following:&lt;br /&gt;&lt;br /&gt;proenv&gt;prosoapview &lt;i&gt;PORTNUM&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;E.G.&lt;br /&gt;&lt;br /&gt;proenv&gt;prosoapview 4444&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6594065255323896472?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6594065255323896472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6594065255323896472' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6594065255323896472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6594065255323896472'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/02/soap-sniffing-in-openedge-10.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-3569697182668921079</id><published>2010-02-04T11:15:00.000-08:00</published><updated>2010-02-04T11:15:22.105-08:00</updated><title type='text'></title><content type='html'>Creating a SOAP header with AuthHead tags in Progress OpenEdge 10.2.A&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DEFINE VARIABLE hWebService AS HANDLE NO-UNDO.&lt;br /&gt;&lt;div&gt;&lt;div&gt;DEFINE VARIABLE hPortType AS HANDLE NO-UNDO.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;PROCEDURE CreateMessageAuthHeader :&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE OUTPUT PARAMETER hSOAPHeader AS HANDLE .&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE INPUT PARAMETER cOperationNamespace AS CHARACTER .&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE INPUT PARAMETER cOperationLocalName AS CHARACTER .&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE OUTPUT PARAMETER lDeleteOnDone AS LOGICAL .&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE VARIABLE hTmpSoapHeader AS HANDLE NO-UNDO.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE VARIABLE hSoapHeaderRef AS HANDLE NO-UNDO.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DEFINE VARIABLE hNodeAuthHead AS HANDLE NO-UNDO.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CREATE SOAP-HEADER hTmpSoapHeader.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CREATE SOAP-HEADER-ENTRYREF hSoapHeaderRef.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CREATE X-DOCUMENT hXDocAuthHeader.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CREATE X-NODEREF hNodeAuthHead.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;hTmpSoapHeader:ADD-HEADER-ENTRY(hSoapHeaderRef).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;hXDocAuthHeader:CREATE-NODE-NAMESPACE(hNodeAuthHead, cNsUri, cNsPrefix + ":" + "AuthHeader", "ELEMENT").&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;AddMessageElement(hNodeAuthHead, hXDocAuthHeader, "username", "username", cNsUri, cNsPrefix).&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;AddMessageElement(hNodeAuthHead, hXDocAuthHeader, "password", "password", cNsUri, cNsPrefix).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;hSoapHeaderRef:SET-NODE(hNodeAuthHead).&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;hSoapHeader = hTmpSoapHeader.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;lDeleteOnDone = TRUE.&lt;br /&gt;&lt;br /&gt;END PROCEDURE .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;FUNCTION ConnectWebService RETURNS INT ().&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/*Connect to Webservice*/&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CREATE SERVER hWebService.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* replace connection string with config val */&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;hWebService:CONNECT("-WSDL 'http://www.someservicesite.com/webservice.asmx?wsdl'").&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RUN PortType SET hPortType ON hWebService.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* Set up webservice call/callback */&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;hPortType:SET-CALLBACK-PROCEDURE("REQUEST-HEADER", "CreateMessageAuthHeader").&lt;br /&gt;END FUNCTION.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/***********************Web Methods*********************************/&lt;br /&gt;&lt;br /&gt;FUNCTION GetStatus RETURNS INT&lt;br /&gt;&amp;nbsp;&amp;nbsp;(INPUT IdNumber AS CHARACTER)&lt;br /&gt;&amp;nbsp;&amp;nbsp;IN hPortType.&lt;br /&gt;&lt;br /&gt;/***********************Business Methods*********************************/&lt;br /&gt;FUNCTION GetMyStatus RETURNS INT (INPUT&amp;nbsp;IdNumber&amp;nbsp;&amp;nbsp;AS CHARACTER).&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;ConnectWebService().&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;statusResult = GetStatus(IdNumber).&lt;br /&gt;END FUNCTION.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-3569697182668921079?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/3569697182668921079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=3569697182668921079' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/3569697182668921079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/3569697182668921079'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/02/creating-soap-header-with-authhead-tags.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-5431787513558887205</id><published>2010-02-04T11:02:00.000-08:00</published><updated>2010-02-05T10:59:04.877-08:00</updated><title type='text'></title><content type='html'>Using OpenEdge 10.2.A from Progress to consume a webservice:&lt;br /&gt;&lt;br /&gt;When passing an EXTENT LONGCHAR containing an array of XML messages as a parameter to a web method, the xml message(s) are being partially HTML-ENCODED. Which the receiving web method does not appreciate in the slightest.&lt;br /&gt;&lt;br /&gt;When I say the XML is being partially HTML-ENCODED, I mean that the '&amp;lt;' and '"'s are being replaced with '&amp;lt;' and '"' respectively. The '&amp;gt;'s are not being replaced. I have no access to the code block where the web call is being made and the encoding occurs as the WSDL is downloaded by Progress OpenEdge on each call. The WSDL is processed and the methods + signatures determined dynamically.&lt;br /&gt;&lt;br /&gt;The Schema used defined a custom element type of "anyType". This was the source of the problem. Progress would not interpret the usage/implementation of this node correctly - where the anyType node was meant to be replaced by any other element in the schema defined as type anyType. &lt;br /&gt;&lt;br /&gt;Taking the WSDL and manually modifying the schema portion of it to build the message without the anyType did the trick. The encoding also ceased.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-5431787513558887205?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/5431787513558887205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=5431787513558887205' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5431787513558887205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/5431787513558887205'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/02/using-openedge-10.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-3384373401960642464</id><published>2010-01-21T14:04:00.000-08:00</published><updated>2010-01-21T14:04:29.924-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Satellite Forms 7 exe icon file names'/><title type='text'></title><content type='html'>To have your Satellite Forms project produce an '.exe', you must have an icon file in the '\Images' directory of your project.&lt;br /&gt;&lt;br /&gt;Note: The icon file must have the same name as your project (.sfa file), but the project may have a different application name. The application name will be the name of your '.exe' with the icon from the '\Images' directory&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-3384373401960642464?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/3384373401960642464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=3384373401960642464' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/3384373401960642464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/3384373401960642464'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2010/01/to-have-your-satellite-forms-project.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-7685704887299549311</id><published>2007-06-04T20:50:00.000-07:00</published><updated>2007-06-04T21:01:41.439-07:00</updated><title type='text'></title><content type='html'>The amount of help you can find on the web about binding a datasource to a datagrid is astounding. Once you bound your datagrid and populated it, the user of course wants to see it.&lt;br /&gt;&lt;br /&gt;They may optionally want to update, delete or insert data into your nicely bound datagridview.&lt;br /&gt;&lt;br /&gt;All of the above is well documented on the web and easy to pull off. So now what?&lt;br /&gt;&lt;br /&gt;Let's suppose you want to "Do" something with the data, say.... save it back to a source?&lt;br /&gt;&lt;br /&gt;Well if you were using an unbound datasource and populated it on the fly, AND thought you could persist some data in hidden columns, you are sadly mistaken.&lt;br /&gt;&lt;br /&gt;The data in hidden columns is never bound on the databind(). That’s right, a predefined column with the datafield attribute set and the visible attribute set false will not bind to the datasource datafield.&lt;br /&gt;&lt;br /&gt;The trick is to define all columns of data you wish to persist to visible columns and then after you call the databind(), hide the columns you don't want to show the user. The data will now persist.&lt;br /&gt;&lt;br /&gt;CAUTION! If you rebind (update the datagrid datasource) after you've hidden the columns, the data will be lost again. You must first make the columns visible again, then rebind the datagrid and then you may hide the columns once more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-7685704887299549311?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/7685704887299549311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=7685704887299549311' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7685704887299549311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/7685704887299549311'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2007/06/amount-of-help-you-can-find-on-web.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-6422411026553517472</id><published>2007-04-03T02:02:00.000-07:00</published><updated>2007-04-03T02:07:15.036-07:00</updated><title type='text'></title><content type='html'>Speeding up Vista with ReadyBoost USB RAM drive&lt;br /&gt;&lt;br /&gt;I personally am not running any Vista PCs or notebooks (don't have the hardware base). But if anyone is experiencing the Vista hardware drain, Alec Saunders has blogged a bit on his experience with ReadyBoost included with Microsoft Windows Vista.&lt;br /&gt;&lt;br /&gt;I'd love to know if anyone else has had positive results with it.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://saunderslog.com/2007/04/02/speeding-up-windows-vista/"&gt;Speeing up Windows Vista&lt;/a&gt; http://saunderslog.com/2007/04/02/speeding-up-windows-vista/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-6422411026553517472?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/6422411026553517472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=6422411026553517472' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6422411026553517472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/6422411026553517472'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2007/04/speeding-up-vista-with-readyboost-usb.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-1648507412351836541</id><published>2007-03-29T15:09:00.000-07:00</published><updated>2007-03-29T15:16:43.719-07:00</updated><title type='text'></title><content type='html'>InfoPath goes to XML Schemaville&lt;br /&gt;&lt;br /&gt;OK, in XML schemaville, when you define an element (&amp;lt;xsd:element&amp;gt;&amp;lt;/xsd:element&amp;gt;) you define the the type of element it is and what type of children it will contain (text or other xml elements) if you want it to do both (contain text nodes and element nodes) you have to explicitly define it like that typically you define element nodes that contain child element nodes to not contain text nodes as well.&lt;br /&gt;&lt;br /&gt;In InfoPath, elements that contain other child elements are called "groups". The IP schema tool does support defining mixed content nodes. So, since your target node is a "group" it is not allowed to contain text. You must either change it to an element (remove group &amp;amp; re-add element by same name) or do not write to it (add a child element to it to write to) .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-1648507412351836541?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/1648507412351836541/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=1648507412351836541' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1648507412351836541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/1648507412351836541'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2007/03/infopath-goes-to-xml-schemaville-ok-in.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-8972731077416698713</id><published>2007-03-15T15:53:00.000-07:00</published><updated>2007-03-15T16:12:59.525-07:00</updated><title type='text'></title><content type='html'>Generate Xpath Statement&lt;br /&gt;&lt;br /&gt;Ever want to work out what the Xpath statement would be for a current node of an XML document? Well here you go. This little tid bit will quickly work its way back up the parent-grandparent tree, up to the root node of the document. And when it's done, you'll be returned the Xpath statement.&lt;br /&gt;&lt;br /&gt;Code: (generated for InfoPath C# managed code)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;private string GenerateMatchPath(IXMLDOMNode sourceNode, string xPath)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;    IXMLDOMNode parentNode = sourceNode.parentNode;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;    while (parentNode != null &amp;&amp;amp; parentNode.nodeName != "#document")&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;      xPath = parentNode.nodeName + "/" + xPath;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;     parentNode = parentNode.parentNode;   }   return "/" + xPath;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:times new roman;"&gt;  }//GenerateMatchPath&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now, why would this be useful?&lt;br /&gt;&lt;br /&gt;Suppose you would like to compare the data of a pair of XML documents (docA and docB).&lt;br /&gt;&lt;br /&gt;If you used an Xpath query (xmlDoc.selectNodes("//descendant-or-self::node()")) to generate a nodelist of all elements in docA, you could:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;loop through each node from docA&lt;/li&gt;&lt;li&gt;get its value&lt;/li&gt;&lt;li&gt;generate the xpath&lt;/li&gt;&lt;li&gt;use the xpath to get the value from docB&lt;/li&gt;&lt;li&gt;compare values&lt;/li&gt;&lt;li&gt;take appropriate action (update docA? update docC?)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;[Snippet to follow...]&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-8972731077416698713?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/8972731077416698713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=8972731077416698713' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/8972731077416698713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/8972731077416698713'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2007/03/generate-xpath-statement-ever-want-to.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-298699546735032628</id><published>2007-03-13T12:53:00.000-07:00</published><updated>2007-03-13T14:23:35.711-07:00</updated><title type='text'></title><content type='html'>Clearing Windows network passwords.&lt;br /&gt;&lt;br /&gt;I have recently found problems with my Visual Source Safe 2005 (VSS) solution bindings breaking in Visual Studio .NET 2005 (VS2005). On two occassions in the last week I have encountered "Invalid Handle" errors when trying to check-in my solutions.&lt;br /&gt;&lt;br /&gt;The invalid handle error is due to the VSS bindings. The solution has been to restablish the bindings, however, this was hampered by the root problem ;) Somehow a bad password was saved, and the connection to the VSS server could not be established. So, the corrupt credentials must be removed.&lt;br /&gt;&lt;br /&gt;To do this, I found James Geurts' Blog on 'Clear saved windows networking passwords' where he supplies the following:&lt;br /&gt;&lt;br /&gt;Start&gt;Run&gt;rundll32.exe keymgr.dll, KRShowKeyMgr&lt;br /&gt;&lt;br /&gt;The same dialog can be opened via:&lt;br /&gt;&lt;br /&gt;Start&gt;Control Panel&gt;User Accounts&gt;Advanced Tab&gt;Manage Passwords&lt;br /&gt;&lt;br /&gt;I prefer the latter option as it is easier to remember and find again ;)&lt;br /&gt;&lt;br /&gt;(&lt;a class="headermaintitle" id="ctl00___ctl00___ctl00_ctl00_bcr_bth___BlogTitle" href="http://biasecurities.com/blogs/jim/default.aspx"&gt;James Geurts' Blog&lt;/a&gt; &lt;a href="http://biasecurities.com/blogs/jim/archive/2005/12/20/3876.aspx"&gt;http://biasecurities.com/blogs/jim/archive/2005/12/20/3876.aspx&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-298699546735032628?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/298699546735032628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=298699546735032628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/298699546735032628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/298699546735032628'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2007/03/clearing-windows-network-passwords.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-116149998762895698</id><published>2006-10-21T23:52:00.000-07:00</published><updated>2007-02-21T23:45:49.289-08:00</updated><title type='text'></title><content type='html'>Missing nodes from a webservice.&lt;br /&gt;&lt;br /&gt;InfoPath is very particular about the type of document it processes - this due to its very stringent implementation of XSD Schemas. InfoPath will complain immediately if it encounters nodes that do not fit the schema design (nodes not defined in schema, nodes out of position, multiple nodes where not defined as repeating)&lt;br /&gt;&lt;br /&gt;If a node is missing from the instance document and the schema dictates the optional presence of this node, InfoPath will accept the document as valid. However, if there are any controls being bound to the missing field, InfoPath will disable the field in the UI, as nothing can be written to a missing node.&lt;br /&gt;&lt;br /&gt;This became painfully apparent in our early iterations of our InfoPath form. We noticed several fields being locked out in the form only to discover the fields were missing from the XML documents returned by our Webservice. We tracked this down to the Enterprise Library's Database Datatable to XML conversion.&lt;br /&gt;&lt;br /&gt;Any null values in a recordset are not converted to empty fields in the resulting XML, but rather they are just omitted. Our solution was to use the schema to build ourselves an empty instance document and populate it with the data from the recordset. This way we are guaranteed to get all required nodes returned from a webservice&lt;br /&gt;&lt;br /&gt;Since a schema document is simply another XML document, parse the XSD document and programmatically build the instance document starting from the root node element definition.. TBC&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-116149998762895698?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/116149998762895698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=116149998762895698' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116149998762895698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116149998762895698'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/10/missing-nodes-from-webservice.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-116077428425206574</id><published>2006-10-13T14:17:00.000-07:00</published><updated>2006-10-13T14:18:04.260-07:00</updated><title type='text'></title><content type='html'>Extracting form files&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Choose Extract Form Files from the File menu. &lt;/li&gt;&lt;li&gt;Select a location to save your extracted form files to, and then click OK.&lt;/li&gt;&lt;li&gt;Close InfoPath to release the lock it places on your form files.&lt;/li&gt;&lt;li&gt;Using a text editor, open your view .xsl file.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-116077428425206574?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/116077428425206574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=116077428425206574' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116077428425206574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116077428425206574'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/10/extracting-form-files-choose-extract.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-116077275108303198</id><published>2006-10-13T12:30:00.000-07:00</published><updated>2007-03-14T12:21:36.959-07:00</updated><title type='text'></title><content type='html'>&lt;h2 class="date-header"&gt;Friday, October 13, 2006&lt;/h2&gt;&lt;br /&gt;Breaking In A New Horse&lt;br /&gt;&lt;br /&gt;One of the growing pains I encountered after migrating to Visual Studio 2005, was an issue I had trying to debug my InfoPath 2003 project. I would get an error message;&lt;br /&gt;"In order to debug this project, add an executable project to this solution which references the library project. Set the executable project as the startup project."&lt;br /&gt;&lt;br /&gt;While VS 2003 would launch the InfoPath form and Debug it with a fancy-free click of the 'Debu' button, VS 2005 requires you to have the solution selected before it will attempt to launch the form.&lt;br /&gt;&lt;br /&gt;However that brought me to an issue I was not previously having. Without having changed any code, the form failed to load in preview or debug mode. Now I am getting the “The format of the file .dll is invalid” error. You would see this error on our dev-test VPCs that did not have the .NET 2.0 framework installed prior to launching the new form.&lt;br /&gt;&lt;br /&gt;How is it possible that the DEV workstation compiling the formcode.cs in Visual Studio 2005 .NET 2.0 did not have .Net 2.0 installed?!?&lt;br /&gt;&lt;br /&gt;After a quick reinstall of the framework and a restart, the form is debugging and previewing again.&lt;br /&gt;&lt;br /&gt;So in recap; select the solution item in the Solution Explorer of Visual Studio 2005 BEFORE attempting to debug (F5).&lt;br /&gt;&lt;br /&gt;Ciao for Niao&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-116077275108303198?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/116077275108303198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=116077275108303198' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116077275108303198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116077275108303198'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/10/after-migrating-to-visual-studio-2005.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-116069947315224728</id><published>2006-10-12T17:31:00.000-07:00</published><updated>2006-10-12T17:31:13.160-07:00</updated><title type='text'></title><content type='html'>The project I'm currently working on finally afforded the time to convert the project from 2003 platforms to 2005 servers and .NET 2.0. While many of my collegues in other companies made the change last year, we are a consulting firm doing work for clients and so we required approval from the customer to proceed.&lt;br /&gt;&lt;br /&gt;So far the InfoPath conversion was rather painless as we are not migrating to Office 2007 (yet?). The managed code compiled beautifully in Visual Studio 2005 and after installing the .Net 2.0 Framework on the test workstations, the form opened without flaw. However the webservices needed to be migrated to another machine name to not conflict with Sharepoint Services which are still running 1.1.4.&lt;br /&gt;&lt;br /&gt;Our form displays a simple windows form with a rotating graphic scheme as a “Please Wait” message. Initially, a couple of them got stuck on the display and new ones stop showing up. Not sure what the cause was, but it seems to have corrected itself - perhaps the first load of the new form in .NET 2.0?&lt;br /&gt;&lt;br /&gt;Other than that things went very well from my end. Next on the migration for me is Notification Services. Another breeze I expect.&lt;br /&gt;&lt;br /&gt;Ciao for Niao&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-116069947315224728?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/116069947315224728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=116069947315224728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116069947315224728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/116069947315224728'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/10/project-im-currently-working-on.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-115801347420380453</id><published>2006-09-11T15:17:00.000-07:00</published><updated>2006-09-11T15:24:50.726-07:00</updated><title type='text'></title><content type='html'>The Great Giveaway continues...&lt;br /&gt;&lt;br /&gt;Ever tried to get unique items out of the events table in SQL Notification Services?&lt;br /&gt;&lt;br /&gt;Use the greatest EventBatchId with EventCount greater than 0 from the EventBatches table, to identify the latest set of events written to the Events table.&lt;br /&gt;&lt;br /&gt;The Current Events table will have the events trapped by the events query at runtime, however the records are temporary and get dumped to the events table. The above method is the best way to locate the latest events.&lt;br /&gt;&lt;br /&gt;Ciao for Niao&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-115801347420380453?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/115801347420380453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=115801347420380453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115801347420380453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115801347420380453'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/09/great-giveaway-continues.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-115774934667745327</id><published>2006-09-08T10:09:00.000-07:00</published><updated>2006-09-08T14:02:26.736-07:00</updated><title type='text'></title><content type='html'>Ever tried updating a solution from Source Safe and get a dialog box asking to redeploy a website/virtural directory to another location? (usally the same name suffixed with an underscore and a number)&lt;br /&gt;&lt;br /&gt;Well, to redeploy the website to the same URL, go to the directory and delete the project file (*.csproj or *.vbproj...). You may then go back to the dialog box and fix the URL to publish back to the original path. The project will deploy successfully.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-115774934667745327?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/115774934667745327/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=115774934667745327' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115774934667745327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115774934667745327'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/09/ever-tried-updating-solution-from.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-115595677868040103</id><published>2006-08-18T20:00:00.000-07:00</published><updated>2006-08-18T20:06:18.686-07:00</updated><title type='text'></title><content type='html'>YES/NO/CANCEL&lt;br /&gt;&lt;br /&gt;I recently received an issue from our diligent QA department asking to have a dialog box, which presented Yes/No/Cancel as options, shortened down to just Yes/No&lt;br /&gt;&lt;br /&gt;I responded with my reason for the existance of this combination of options:&lt;br /&gt;&lt;br /&gt;It is a UI decision. Both Yes and No are definitive answers to a question, however, sometimes a user will interact an application and perform actions that they had no intentions of doing.&lt;br /&gt;Definitive answers like Yes and No imply that you are instructing the application to do something (even if you answer no). Because you answered the question, the application is going to take action accordingly.&lt;br /&gt;&lt;br /&gt;The Cancel option gives the user peace-of-mind that, if they just cancel, nothing will happen because they have just instructed the application to "cancel" the previous action all together.&lt;br /&gt;&lt;br /&gt;Of course wording the question is crucial here. The question could very well imply that clicking No means that the action will be cancelled. However with a very critical action, a user may feel more at ease indicating to the application to completely disregard the previous action, even if No does mean NO!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-115595677868040103?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/115595677868040103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=115595677868040103' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115595677868040103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115595677868040103'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/08/yesnocancel-i-recently-received-issue.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-115577602253817833</id><published>2006-08-16T13:27:00.000-07:00</published><updated>2006-08-16T17:53:42.663-07:00</updated><title type='text'></title><content type='html'>One of the most useful pieces of code used by the InfoPath Developers here at Visiphor is the SecondaryDataSource Class written by one of our senior developers, Keith Curtis.&lt;br /&gt;&lt;br /&gt;This class exposes some simple methods which we use to interact with secondary data sources.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Call the secondary datasource (query()), &lt;/li&gt;&lt;li&gt;Query data (GetNodeValue(), GetValue()) &lt;/li&gt;&lt;li&gt;Set data (SetNodeValue). &lt;/li&gt;&lt;/ul&gt;All of the clutter of handling a secondary datasource in code (namespacing, instantiating the connection, etc.) are handled from within the class. The developer need only instanciate the class, by passing the name of the secondary data source and the XDocument, to have access to these very simple tools.&lt;br /&gt;&lt;br /&gt;The GetNodeValue and GetValue methods behave more like typical XSLT xsl:value-of calls where xpath queries that result in missing nodes do not cause catastrophic exceptions, but rather return empty strings. Trace messages can be returned if the xpath query does not return a node, but the call will not fail.&lt;br /&gt;&lt;br /&gt;We added a winform to the InfoPath form that is called by the query method. The winform displays a progress bar, which runs in a separate thread so while the form is disabled by calls to a datasource/webservice, the progress bar gives the user something to look at. Also, because the winform runs in a separate thread, it displays while the form is initially loading (before the first view is rendered) - NICE!&lt;br /&gt;&lt;br /&gt;I'll talk more about the winform and the speed-of-load issues which spawned the need/want of the progress bar in future entries.&lt;br /&gt;&lt;br /&gt;If you'd like more info about the class, drop me a line.&lt;br /&gt;&lt;br /&gt;Thanks for reading,&lt;br /&gt;&lt;br /&gt;Jessel&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-115577602253817833?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/115577602253817833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=115577602253817833' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115577602253817833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115577602253817833'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/08/one-of-most-useful-pieces-of-code-used.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-115369202904453434</id><published>2006-07-23T14:19:00.000-07:00</published><updated>2006-07-23T15:00:29.063-07:00</updated><title type='text'></title><content type='html'>It has been (now) 6 days since my first blog entry. A few people have inquired as to when the next entry will be published. Well I haven't formalized the intention of this blog, so let me simply outline the inspiration for it.&lt;br /&gt;&lt;br /&gt;As part of the personal brand development at Visiphor, I intend to use this blog to showcase the particular niche I have found myself in and hopefully identify myself as viable resource on the topic(s).&lt;br /&gt;&lt;br /&gt;In my time with this group, I have been exposed to a few new technologies (SQL Reporting Services, SQL Notification Services, Microsoft InfoPath). I intend on documenting our experiences and application of (at least) SQL Notification Services and Microsoft InfoPath. I am also very interested in expanding my introduction to K2.NET and its following release "Black Pearl"&lt;br /&gt;&lt;br /&gt;The InfoPath form I am currently working is very exciting and full of interesting applications of the technology, which I plan on displaying. I will also provide a few "nice to have" features which we have not implemented and how to implement them.&lt;br /&gt;&lt;br /&gt;That's all for now...&lt;br /&gt;&lt;br /&gt;Thanks&lt;br /&gt;&lt;br /&gt;Jessel Aquing&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-115369202904453434?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/115369202904453434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=115369202904453434' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115369202904453434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115369202904453434'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/07/it-has-been-now-6-days-since-my-first.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-31260171.post-115315874507983980</id><published>2006-07-17T10:34:00.000-07:00</published><updated>2006-07-17T10:52:25.090-07:00</updated><title type='text'></title><content type='html'>&lt;strong&gt;Hello all!&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Yes, that does include you.&lt;br /&gt;&lt;br /&gt;This constitues my first blog entry - ever. As my first blog entry I choose to focus mainly on the fact that this is my first blog entry. While I have plenty to say, I have never had a problem finding an audience (willing, unwilling, captive or evasive). So this blog will serve as a log of of my adventures in &lt;em&gt;Enterpise Solution Development&lt;/em&gt; at &lt;strong&gt;Visiphor Consulting Services&lt;/strong&gt; here in beautiful Vancouver, British Columbia, Canada.&lt;br /&gt;&lt;br /&gt;The next entry will document in more detail the intentions of this Blog.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Thanks!&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Jessel&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31260171-115315874507983980?l=vcs-aquing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vcs-aquing.blogspot.com/feeds/115315874507983980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=31260171&amp;postID=115315874507983980' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115315874507983980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/31260171/posts/default/115315874507983980'/><link rel='alternate' type='text/html' href='http://vcs-aquing.blogspot.com/2006/07/hello-all-yes-that-does-include-you.html' title=''/><author><name>Jessel Aquing</name><uri>http://www.blogger.com/profile/18117779196656384107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://lh5.ggpht.com/_au-tIMlPjA8/SoEAlkrVOiI/AAAAAAAAIB0/ggWFcEHzh74/s512/DSC05004.JPG'/></author><thr:total>1</thr:total></entry></feed>
