Giants Jaguars Game

Leave a comment

That was a nice win (not great) by the Giants.  They finally played a mistake free game and put themselves in a position to win.   The defense really stepped up in the second half, and especially in that last drive by the Jaguars.  It wasn’t pretty, and Jackonsville and Garrard are not the Chargers and Rivers, but a win is a win.  We got really lucky with that Hagan over-turned call, which if you look at it, might have been the difference in the game since we got a field goal instead of a turnover.  Had the Jaguars been down by 1, instead of 4 at the end of the game, they may have been in a position to kick a field goal, but sometimes the ball and the calls roll your way.  Eli was also good in the 2nd half, even though his inexperienced receivers appeared to run to the wrong spot on the field.  Kevin Boss was the key to the game though, making big plays to put Big Blue in the endzone.  Good job gmen.  Lets keep the ball rollin.

Using a 32bit Progress Openedge Driver with SQL Server 2008 on 64bit server

1 Comment

Disclaimer: this should only be tried on a non production server as it involves modifying the registry. At the very least test it thoroughly before trying.  I will not take responsibility for any problems that you may have with your SQL database

My setup is a Windows 2003 Standard Edition 64bit server, with Progress Openedge 10.2A installed, and from what I’ve read is that they don’t have a 64bit driver. So the problem is that the server is 64bit, but progress’ driver is 32bit. Another note (really not sure if this matters and don’t have the time to reinstall right now) is that I have SQL 2008 installed in 32bit mode so if this does not work for you, you might want to look into that.

I had a lot of trouble with this one, but I finally got it to work a few months ago.  I’ll post how I got it to work.  The key to my frustrations was I did not have SQL 2008 Service Pack 1 installed.  MS totally dropped the ball on the ODBC wizard and forgot to include the necessary information  on the wizard to allow you to connect to an ODBC source using the .NET framework driver for ODBC.  I’ll show you how to do it in the following steps.

There’s a few things I had to do to get this to work.  The first part is that I had to create a 32bit registry entry:

Create a new text file  with the following information in it to be imported on the Windows 2003 64bit server. (remove the ***start*** and the ***********end******* )

******************************start*********************

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers]

“Progress OpenEdge 10.2A driver”=”Installed”

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\Progress OpenEdge 10.2A Driver]

“Driver”=”C:\\Progress\\OpenEdge\\bin\\pgoe1023.dll”

“Setup”=”C:\\Progress\\OpenEdge\\bin\\pgoe1023.dll”

“DriverODBCVer”=”3.50”

“APILevel”=”1”

“ConnectFunctions”=”YYN”

“CPTimeout”=”60”

“FileUsage”=”0”

“SQLLevel”=”0”

“UsageCount”=”1”

***********************end*********************

Then I saved it as a “.reg” file so when it is double clicked it will import into the registry.

Next we have to create the ODBC Entry using the 32bit version of the ODBC Data Source Admin.  “Go to C:\WINDOWS\SysWOW64\odbcad32.exe”  (assuming your win install is on C:\ )  and create your data source, obviously choosing the Progress Openedge 10.2A driver.   I named mine “MySystemDSN”

Now, that we have that setup, we need to run the 32bit version of the SSIS Import Wizard.  We find this in the “D:\Program Files (x86)\Microsoft SQL Server\100\DTS\BinnDTSWizard.exe”  (assuming that SQL is installed on your D drive.)

Now using the wizard choose the following and setup you want to enter a connection string like so.  I keep this in an easily accessible file so I can quickly paste it in at any time.

Dsn=MySystemDSN;Driver={Progress Openedge 10.2A Driver};uid=mylogin;pwd=mypasswd

32bit odbc wizard

As soon as you paste it in, all of the fields in the wizard  magically appear (why they’re not there to begin with is  baffling to me)  If you do not have SQL 2008 SP1 Installed, these would not pop up thus not allowing you to connect to the database. If I remember correctly it would say something like “you must enter the required fields” or the connection string needs a password or something to that affect.

You can go through the rest of the wizard and import the data successfully.  One thing that I should note. Is that it wasn’t properly recognizing dates. on the import  They would show up as a data type of “24” or some number like that, so I had to change them to a date datatype.

I don’t know a ton about Progress Databases except how to fix SQL Width problems and export a table to a csv file.  I basically import relevant data and tables from our ERP system which is a Progress database which allows an ODBC connection and write queries against the data. Therefore, I might have a tough time answering progress db specific questions.

One note is that if you plan to run these in a SQL Job, when creating the step to run the SSIS package, you will probably have to go to the “Execution Options” tab and check the “Use 32-bit Runtime” box.

Hope this saves someone some time and headaches.

sql error “the text, ntext, and image data types…”

Leave a comment

The other day I was converting an existing sql query from 2000 to 2008.  This query is based off of a table that I import every night.  I created this table using the SQL Import query and it automatically determined the field data types from a Progress 10.1 database.  The only problem is when i tried to run a query on the new 2008 server I got the following error:

The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator.

After doing some research, I found out that this occurred because sql made a field in one of my tables into a Text instead of a Varchar.  For whatever reason, on the import, it translated it differently.  Also, I only had this problem with this field when it was contained in a query with a “Group By” clause.  I could probably fix this on the import, but a quick and dirty fix was to convert it to a varchar on the fly.  Here’s an example  Let’s say my field is “[product-desc]”

SELECT     TOP (100) PERCENT CONVERT(varchar(200), [product-desc])
FROM         PUB.[my-table]
GROUP BY CONVERT(varchar(200), [product-desc])

That was all I needed to do to fix this problem.  You could also fix this by using CAST like so

 

SELECT     TOP (100) PERCENT  [product-desc]
FROM         PUB.[my-table]
GROUP BY cast([product-desc] as varchar(500))

How To Install SQL Server 2008 Management Studio on Windows 7

Leave a comment

Here’s how i got SQL Server 2008 Management Studio installed on my Windows 7 32bit Laptop.  There are problems with Windows 7 because support was not available in the initial release.  You could either slipstream Sp3  or do the following:

1.       Go to the root of the CD and right click “Setup.exe” and “Run As Administrator”

2.       Ignore all messages regarding incompatability and just continue

3.       Choose the following under the installation menu

sqlwizard1

4. Then get to Feature selection and choose the following

5.       Continue with the install

NOTE: 9/13/12 – I had to run the above 3 or 4 times before it actually let me perform the install. So be patient.

6.       While it’s installing download SQL Sp3 from here  http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=27594

7.       Install the SP3.

That’s all I had to do to get this to work. Should be under Microsoft SQL Server 2008 in your start menu.  You might also want to install the Business Intelligence Development studio, but that’s up to you.

ASP.NET Accessing SQL Data From Codebehind Without A Control

Leave a comment

I needed to access a SQL 2008 database from my codebehind without a control like a gridview.  After scouring the internet I put together the pieces to do so.

If you were familiar with the (oldschool) “non .NET”  scripting you remember doing something like the following:

Conn = Server.CreateObject("ADODB.Connection") 
Conn.Open("ODBC-DSN", "sa", "**********") 
rs = Server.CreateObject("ADODB.Recordset") 
rs.Open(StrSQL, Conn) 
Do While Not rs.eof 
Urvariable=rs("whs-num").value 
rs.movenext() 
Loop

You can still do this in an ASPX page if you use aspcompat=”true”, but as many women have said to me throughout the years “It’s time we move on Vin” (or “no, it really IS you” but that doesn’t apply here)   So the replacement .NET code to do the same thing is…

Imports System.Data.SqlClient
Imports System.Data.Sql
Imports System.Data.SqlTypes
Dim URConnection As System.Data.SqlClient.SqlConnection
Dim URCommand As System.Data.SqlClient.SqlCommand
Dim URDataReader As System.Data.SqlClient.SqlDataReader
Dim StrSQL, URVariable as String
'Your sql string
strSQL = "Select * From Sales"
'Set your Connections and your command
URConnection = New System.Data.SqlClient.SqlConnection("server=URSERVER; initial catalog=URDB;uid=sa;pwd=********")
URConnection.Open()
URCommand = New System.Data.SqlClient.SqlCommand
URCommand.Connection = URConnection
URCommand.CommandText = StrSQL
URDataReader = URCommand.ExecuteReader()

While (URDataReader.Read)
URVariable = URDataReader.Item("whs-num")
End While

URDataReader.Close()
URDataReader = Nothing
URCommand = Nothing
URConnection.Close()
URConnection = Nothing

If you want an explanation of the newer commands, you can Google  it or look on MS’s site.  For my purposes of creating a data driven web page every once in a while, the nitty gritty is not what I’m concerned about.  I just need it to work.  If you have an aspx page that uses old asp code now, it actually is not too difficult to convert it over using a few copy and pastes and Find and Replaces.

asp.net error BC30456

Leave a comment

I was building a website using Visual Studio 2008 and everything would build fine. It also published with no problems, however I kept on getting errors when visiting some of the pages. I ended up finding the answer on an old message post that saved me a lot of headaches. The guy who posted it didn’t write English very well, so I’ll give a more detailed example and explain how the fix worked for me.

This may happen when you make a copy of a page and then leave the class the same as the page that you originally copied. Heres more detail:

The error message i was getting:

BC30456: ‘Title’ is not a member of ‘ASP…

BC30456: ‘InitializeCulture’ is not a member of ‘ASP…

This might occur if the “inherits” at the top of your ASPX page doesn’t match your codebehind class. so for instance, I had a page called TermsCodeLookup.aspx, and I needed to modify it a bit for someone, so instead of recreating it, I copied the codebehind to a new page using the name  TermsCodeLookupNew.aspx:

in my TermsCodeLookupNew.aspx page:

<%@ Page Language=”VB” MasterPageFile=”~/master1.master” AutoEventWireup=”false” CodeFile=”TermsCodeLookupNew.aspx.vb” Inherits=”MemberPages_AR_TermsCodeLookup” title=”Untitled Page” %>

and in my TermsCodeLookupNew.aspx.vb code I had:

Partial Class MemberPages_AR_TermsCodeLookup
Inherits System.Web.UI.Page

If you look at the code above in the aspx file, I still had inherits= pointing to the original termscodelookup.aspx page that i had created instead of the TermsCodeLookupNew.aspx page.   And in the codebehind .vb file the partial class was named after the old termscodelookup page instead of termscodelookupnew.

it was an easy fix by just modifying the two like so:

<%@ Page Language=”VB” MasterPageFile=”~/master1.master” AutoEventWireup=”false” CodeFile=”TermsCodeLookupNew.aspx.vb” Inherits=”MemberPages_AR_TermsCodeLookupNew” title=”Untitled Page” %>

Partial Class MemberPages_AR_TermsCodeLookupNew
Inherits System.Web.UI.Page

Hope this helps someone like it did for me.  I’ll give props to the original poster and website here.  another way to fix this is to uncheck the box “Allow this precompiled site to be updateable”

UPDATE: Another area where this can occur is when you get this error and everything looks correct  in your pages and the inherits matches the codebehind class.  The reason this may not work is that the class name may reside in another webpage that you may have copied, and forgot about or never used to begin with.  Just do a solution-wide search  in visual studio of the class name of the page that you are getting the error on. Chances are it will find it in some long-forgotten page, or maybe a copy you made of a page in which you wanted to keep the original just in case.

Partial Class MemberPages_AR_TermsCodeLookup
Inherits System.Web.UI.Page

Excel 2007 turn off ribbon shortcut forward slash “/”

2 Comments

Just got really frustrated when trying to type up Linux directories  into excel.

I was trying to type directories like /home, /, /usr and it kept on jumping up to the ribbon for shortcut keys.  Here’s how to turn that off.

Go to the Office Circle Button (or whatever the heck they call that thing), then advanced, then go down to Lotus Compatibility section and change the shortcut key there to anything BUT “/”.  i changed mine to a question mark, or i was thinking a tilda or `   Darn that was annoying…