Adding Users via the Security Dialog


Author
Message
Charles Thomas Blankenship...
Charles Thomas Blankenship
Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)
Group: Awaiting Activation
Posts: 172, Visits: 12K
Once again, the speed and quality of your service is exemplary.

CT

Charles T. Blankenship
Senior Consultant
Novant Consulting, Inc.
704.975.7152
http://www.novantconsulting.com

Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
You could do that manually...or you could just cheat and go create a test project in the DDT...use the wizard to import the structures then deploy it to your server.  Open the server, and go to the database...select the tables and views and right-click to create the script that is needed.  This would be easier...and faster too I would think.  I will look into the script download problem.
Charles Thomas Blankenship...
Charles Thomas Blankenship
Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)
Group: Awaiting Activation
Posts: 172, Visits: 12K
I read the following help topic "Deploying Security Data" and followed these instructions:

Deploying Security Data Without the DDT 

Even if the Database Deployment Toolkit is not being used, the required table structures and deployment data will still need to be created on the end-user system. 

For convenience, the required table structures and relationships are listed below.  Again, if using the Database Deployment Toolkit, both the below structures and all deployment data present in the development databases may be packaged automatically using the Deployment Package Wizard.

Table Structures SQL Script

The SecurityTables.sql script is a SQL Server 2005 script that can be used to create the StrataFrame security tables within a database. You can run this script independently, or you may incorporate it into your application's own database creation script.

To run the script:

  1. Download the Script - Click here to download the script.  Once downloaded, extract the .sql file from the Zip.
  2. Replace Database Name - Before the script may be run, a single line must be changed.  The very first non commented line in the script reads "USE [DatabaseName]".  Replace "DatabaseName" with the name of the desired database.
  3. Run the Script - The script is now ready to be run.

I downloaded the script and ran it thinking that is all I would need.  More importantly, the table that is missing (Invalid object name 'dbo.SFSUserRolePermissionInfo') is not described in the Explicit Table Definitions section of the help.  Finally, a search for the name in the Help file does not return any subjects on the matter.  Help! w00t

There is a Business Object in the MicroFour StrataFrame Security module named SFSUserRolePermissionInfoBO.vb that references the following:

''' <summary>

''' Fills the business object with the results from the UserRolePermissionInfo view that match

''' the the given user primary key.

Implying that the BO requires a view, not a simple table structure.  Further investigation reveals that in fact there are two views in the StrataFrame database with this name.  Maybe these guys were left out of the .SQL script?

I'm currently scripting these view definitions out and running them on my FIGSecurity database, I'll let you know if this works.

Thanks buddy,

CT



Charles T. Blankenship
Senior Consultant
Novant Consulting, Inc.
704.975.7152
http://www.novantconsulting.com
Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
Do you have this table in your database?  You can find all of the data structures in the Security Help file.  The DDT does all of this for you in a button click, but you can manually add these.  We provided a help topic along these lines. 
Charles Thomas Blankenship...
Charles Thomas Blankenship
Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)Advanced StrataFrame User (708 reputation)
Group: Awaiting Activation
Posts: 172, Visits: 12K
I added a user via the Security Dialog and set them up as an administrator that had to change their password upon initial login. When I logged out of the application as Administrator and then logged back into the application using the information provided via the Security Dialog for the new user I get the following error message. I searched the database for an SFSUserRolePermissionInfo table but alas it is not there ... hence the error.



This has been a rough day Wink



SqlException

Invalid object name 'dbo.SFSUserRolePermissionInfo'.



Source : .Net SqlClient Data Provider



Stack Trace:

at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)

at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)

at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()

at System.Data.SqlClient.SqlDataReader.get_MetaData()

at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)

at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)

at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)

at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)

at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)

at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)

at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)

at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)

at MicroFour.StrataFrame.Data.DbDataSourceItem.GetDataTable(DbCommand Command, OnChangeEventHandler CallBack)

at MicroFour.StrataFrame.Data.SqlDataSourceItem.GetDataTable(DbCommand Command, OnChangeEventHandler CallBack)

at MicroFour.StrataFrame.Data.DataLayer.GetDataTable(DbCommand Command, Boolean RegisterNotification)

at MicroFour.StrataFrame.Business.BusinessLayer.FillDataTable(DbCommand CommandToExecute)

at MicroFour.StrataFrame.Security.BusinessObjects.SFSUserRolePermissionInfoBO.FillByUser(Int32 UserPK)

at MicroFour.StrataFrame.Security.LoggedInUser.CreatePermissionsListRolesOnly(Int32 UserPK)

at MicroFour.StrataFrame.Security.LoggedInUser.SetPermissionsFromRole(Int32 UserPK)

at MicroFour.StrataFrame.Security.LoggedInUser.CreateNew(SFSUsersBO UserInfo)

at MicroFour.StrataFrame.Security.LoggedInUser.SetLoggedOnUser(SFSUsersBO UserInfo)

at MicroFour.StrataFrame.Security.Login.AttemptLogin(Object sender, EventArgs e)

at MicroFour.StrataFrame.Security.LoginForm.OnAttemptLogin()

at MicroFour.StrataFrame.Security.LoginForm.cmdOk_Click(Object sender, EventArgs e)

at System.Windows.Forms.Control.OnClick(EventArgs e)

at System.Windows.Forms.Button.OnClick(EventArgs e)

at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

at System.Windows.Forms.Control.WndProc(Message& m)

at System.Windows.Forms.ButtonBase.WndProc(Message& m)

at System.Windows.Forms.Button.WndProc(Message& m)

at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Charles T. Blankenship
Senior Consultant
Novant Consulting, Inc.
704.975.7152
http://www.novantconsulting.com
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search