Solved! Go to Solution.
Jamal,
I read through the thread, and I notice that you are always logged into your sqlserver express instance as a user that is an admin, and therefore are mapped to the DBO user.
This maybe where the issue is, specifically with the sqlserver DBO user mapping when attempting to create the view during register as versioned.
The oracle case works because it does not have the same promotion semantics, my theory is that a dbms user would also work correctly on sqlserver enterprise, or as an OSA user who has not been granted admin privileges in sqlserver express.
This issue should be logged with support.
The hasVersioned view property is derived internally from the geodatabase metadata for the table (sde_table_registry.imv_view_name).
"System tables of a geodatabase in SQL Server"
http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//002q00000080000000
Colin
The Version View is core issue at our workflow as it includes all the updates implemented on the business table. Our web mapping application (Geocortex) has the ability to connect between service layer and any SQL\Oracle tables. We are used to connect this service layer with the Version view as it includes all the updates.
...
what other options do we still have to create the Version view?
If Colin is right, switching to a non-DBO user for creating and maintaining all of your geodatabase Feature Classes and Tables, should solve the issue. E.g. create a user "Utility" with similarly named schema for storing all of your utility data (gas, water, electricity).
This is also recommended practice by ESRI! You shouldn't be storing GIS data under the DBO schema.
E.g., see this excerpt from this Help page:
"It is recommended that the geodatabase administrator and its schema only be used to manage and store the ArcSDE geodatabase repository. You should create separate user schemas in which to store your data objects, such as feature classes and raster datasets. Following the practice of storing only system tables in the geodatabase administrator's storage space simplifies the management of the geodatabase and makes it easier or you to delete the geodatabase from your database if you ever decide to do so."
Now, how can I �??switch to non-DBO�?� user or �??create a user utility�?� for the Q database? How is this different from adding a user?
Jamal,
Assuming you use SQL Server with Operating System authentication (which seems recommended), you need to first create a Windows Operating System account, by using the tools in Windows for that, e.g. an account called "Utility".
Then open ArcCatalog logged on as an Administrator (or by right clicking and choosing "Run As Administrator" when you are under restricted account in Windows), and create a new user by right clicking the Database Connection / Administration / Add User, using the same name as the newly created Windows account, e.g. "Utility". Select the checkbox "Create Operating System Authenticated User". The tool will create both a user and associated schema for storing data.
Now login to Windows on your computer as the user you just created, and add any Feature Classes or Tables you desire, they will now be stored in the "Utility" schema in SQL Server, and carry the "Utility" prefix in ArcCatalog, instead of DBO.
3. I tried to create layer\table BUT again no version view is created
[ATTACH=CONFIG]32991[/ATTACH]
Where might be my mistake here?
Jamal,
Recycling your existing administrative "Jamal" account won't help, as Asrujit pointed out, as it likely already has sysadmin priviliges. Clearly, the data is still ending up under the DBO schema when you use this "Jamal" account, as your screenshot show that.
Create an entirely new restricted local or Windows domain account / login, and use that to create a new user in SQL Server using the Add User option in ArcCatalog with OS authentication, or alternatively follow Asrujit advice of creating a new database user if using database authentication, with just minimal privileges as required by ArcGIS.
See these Help pages also:
A comparison of Windows and database authentication in SQL Server
Create Database User (Data Management)
In the "Create Database User" tool...uncheck the option 'Create Operating System Authenticated User(optional)'. It will create a Database Authenticated user and can be used to test the issue.