StrataFrame Forum

Error When Click on ViewSecurityKey....

http://forum.strataframe.net/Topic4330.aspx

By StarkMike - 11/10/2006

When I click on the ViewSecurityKey for a Form I get this error...

Any ideas why?

Thanks

By Trent L. Taylor - 11/10/2006

No...I have never seen this before.  First, you do have solution preferences setup, correct?

Second, what version are you running?  Have you loaded 1.5.1?

By Doug Zapp - 9/23/2008

Hi there,



I don't know if this is the same error, but it seems to fit in this category. I currently get the following error message when clicking the ViewSecurityKey ellipsis button:



"Implicit conversion from data type text to nvarchar is not allowed. Use the CONVERT function to run this query."



Now to qualify this, it had been working correctly. I initially installed StrataFrame with its database on my local SQL Server. However, I wanted all of our development team to use a common database, so I re-ran the install and set it to create and use the StrataFrame database on our database server. I have been able to setup the security on this database, but now I can't set the permissions on the forms using the security keys.



Also, I try going to the Solution Preferences to see the security settings, but the window does not open. No error message, just select the menu option and nothing.



I'm thinking of uninstalling and starting from scratch, but thought I'd see if you had any ideas.



Thanks,

Doug.
By Ivan George Borges - 9/23/2008

Hi Doug.

Please, go to the StrataFrame menu on the Visual Studio IDE, choose Database Connection. The StrataFrame Data Store should be selected. You can edit it and make sure that this connection is pointing to the StrataFrame Database in your server.

By Doug Zapp - 9/23/2008

This is set correctly to my database server, pointing to the StrataFrame dB.



Any other thoughts?
By Trent L. Taylor - 9/23/2008

I tend to lean towards Ivan response in regards to an issue with your SF database.  This is a bit strange Crazy

Instead of just giving the error message, please provide the full stack trace so that we can have a better idea of what is going on.

By Doug Zapp - 9/23/2008

This may be a miscommunication. I'm not receiving the error message during runtime. This is a simple message after I have selected the form in Visual Studio, go to its properties and go to the StrataFrame: Security grouping and select the ViewSecurityKey. Is there specific stack trace you are after?
By Ivan George Borges - 9/23/2008

In the case you haven't done anything new after moving to the server, you could try detaching the StrataFrame database from the old place, also detaching the StrataFrame database from the server, then copying from the old place onto the server, and ataching it back again.
By Doug Zapp - 9/23/2008

Well, in trying to get this to work with the dB on the server, I toasted my local copy. Other ideas?
By Ivan George Borges - 9/23/2008

Run? BigGrin

Well, with the info we have so far I can't think of anything else, but the other guys might do it.

By Trent L. Taylor - 9/24/2008

Let's just back up for a minute and get a clean SF database installed period...and then we can worry about data.  Backup and remove the StrataFrame database on your server altogether (key word is backup).  Next, re-run the SF install and let the database be installed.  This should give you a clean install.  Let's do this first to see if we can get past your error.  Then we will go from there.
By Doug Zapp - 9/24/2008

I've been playing around with this, and it appears that there is something stopping me from opening the Solution Preferences when my Database connection is pointing to my server connection.



I've been able to get it to open after removing all of StrataFrame, and re-installing the dB locally. The questionable thing though, is that even after the install and not setting up security, there is an entry (my initial Security listing when I first installed) in the list of Security preferences in the Solution Preferences. Something isn't getting cleaned up or allowing my new dB connection to be used.



Any further ideas?
By Trent L. Taylor - 9/24/2008

The initial security project is from the samples that we distribute.  But it looks as simple as your server structures not being up to date.  All of the symptoms that you have described I have seen many times before...and everytime it ends up being the StrataFrame structures not beuing up to date (or people not connecting to a StrataFrame database...which generally produces other errors as well).  Please re-deploy the most recent version of the StrataFrame structures through the install to your server database again and let's see if they get updated.  Past that you are welcome to post the database in question here and we can attach it and run it on this side to see if we produce the same results...but I am very confident that your StrataFrame database structures are just not up to date.
By Doug Zapp - 9/25/2008

I've been playing around with this, and it appears that there is something stopping me from opening the Solution Preferences when my Database connection is pointing to my server connection.



I've been able to get it to open after removing all of StrataFrame, and re-installing the dB locally. The questionable thing though, is that even after the install and not setting up security, there is an entry (my initial Security listing when I first installed) in the list of Security preferences in the Solution Preferences. Something isn't getting cleaned up or allowing my new dB connection to be used.



Any further ideas?
By Doug Zapp - 9/25/2008

Please ignore this last (duplicate) posting. I didn't notice that the topic ran onto another page, and resent it. Sorry.
By Trent L. Taylor - 9/25/2008

That just confirms what I have been saying...I really don't know how else to put this so let me just give you a check list and let's start over.  Let's get back to groudn zero because this really shouldn't be so hard to fix:

  1. Remove all of your current connection string information by deleting the AppKeys.dat and Connections.dat files located in the C:\ProgramData\MicroFour\ConnectionData folder (for Vista) this will appear under the Documents and Settings if you are still on XP
  2. Close down VS
  3. Mount the database to which you want to update
  4. Deploy the SF structures to that database through the install.  BE SURE TO PROVIDE A SQL USER THAT HAS FULL PERMISSIONS!
  5. Now, go back into VS and you will be prompted for the database connection to the SF database
  6. Set the connection

At this point you should be good to go...it is really that simple...I promise BigGrin

By Doug Zapp - 9/25/2008

I should have noticed this before and mentioned it, but in some of the other topics, there was mention that there shouldn't be issues. I'll try what you mentioned Trent, but I'd like to throw this into the equation as well.



I do have a major difference in my databases; my local copy is MS SQL Server 2005, and my server is SQL Server 2000. For the tables between the 2 instances, the data type varchar(MAX) is used in place of text. In a regular Select statement this shouldn't matter. But through code, if you are typing your data retrieval, it can possibly have an affect.
By Trent L. Taylor - 9/25/2008

No, the DDT takes all of this into account.  When deploying to SQL Server 2000 it uses Text instead of VarChar(MAX)...and as for the queries...they work.  We have many shops still running SQL Server 2000...so this isn't the case here.
By Doug Zapp - 9/25/2008

2 things Trent. First, I tried what you stated and I'm still having the same issues; can't open the Solution Preferences and I can't set the ViewSecurityKey on a form.



Second, and this goes back to my last post. The error message I receive when I attempt to set the ViewSecurityKey for a form is explicitly stating that it is having a conversion issue when converting a text data type to an nvarchar.
By Trent L. Taylor - 9/25/2008

Doug...I am very familiar with this code (I wrote it)....and I am also very confident as to what causes this error.  Instead of going back and forth, do as I mentioned in an earlier post...attach your strataframe.mdf file here, we will update it for you and then either tell you how to fix it on your side or send you the fixed mdf.  The only other cause could be assemblies that are not up to date (which in this case it would be the addins or extensibility assemblies).  Make sure that you have only a single instance of them in the GAC and the latest.  But give us your database first and we will prove that the database is not the problem.  Thanks.
By Doug Zapp - 9/25/2008

As requested, here you go. Also attached is a screenshot of the GAC assembly.



I'm not trying to place any blame here. I feel I'm following the instructions to a tee. I'm just following the leads I pick on that I'd follow.



BTW, Cowboys over the Deadskins.
By Trent L. Taylor - 9/25/2008

BTW, Cowboys over the Deadskins.

That'll always win you some points with me BigGrin

By Trent L. Taylor - 9/26/2008

Doug, you have to include the log file as well (ldf) in order for us to get this re-attached.  Thanks.
By Doug Zapp - 9/26/2008

Take 2.
By Dustin Taylor - 9/26/2008

I was able to mount that database, set it as my Database Connection in visual studio, and get into solution preferences without issue. So, assuming that this was the "broken" database and not the "clean" one, then it looks like the issue isn't the database, and instead is most likely an assembly issue. Make sure that your MicroFour StrataFrame AddIns.dll and MicroFour StrataFrame Extensibility.dll assemblies are present in the GAC and are hte proper version, and do a search on your machine to ensure there isn't a different version sitting out there that visual studio might be grabbing instead.
By Edhy Rijo - 9/26/2008

Hi Doug,

Also since you have been trying a lot of things, try re-installing the .NET 2.0 Framework.  I had a different weird issue a while back with the BOM, and it turned out to be something was corrupted with the .NET 2.0 framework.

It will not hurt you to re-install it. Cool

By Doug Zapp - 9/26/2008

Hi Dustin,



All the MicroFour dll's have a 1.6.6.0 version with the following 2 exceptions; MicroFour License Base.dll is version 1.6.0.0 and MicroFour License.dll is version 1.0.0.0. I have 2 copies of all MicroFour dll's which are located (1 copy in each folder) in Program Files\Common Files\MicroFour\StrataFrame and Program Files\MicroFour\StataFrame\Assemblies



In the GAC, I have the entries for the 2 dll's you mention, but the major difference in the GAC is that all MicroFour dll's are listed with a version of 1.6.0.0. Also, I have 2 entries for the MicroFour License Base, each having a different Public Key Token.



Other ideas?
By Trent L. Taylor - 9/26/2008

You cannot rely on the assembly version, but you have to verify the file version.  We have left the assembly version at 1.6.0.0 for the last 3 releases and only changed the file version because it reduced the amount of update bandwidth.  So you will need to first verify the assembly versions in the c:\program files\common files\microfour\strataframe folder and then if they are correct, remove the assemblies from the GAC and drag the assemblies from the Common Files folder into the GAC and then try again.  But if they are not 1.6.6 on the file version, then there is your answer.