Jamal,Upon further review I think my original idea (DBO user related) was incorrect.For the dataset that is failing, does it contain any user defined fields?Can you try adding a field to the table before you register it as versioned?E.g., the field set would contain ObjectID and myTextFieldThe view is correctly created for me when using a DBO mapped user if the table has more fields that just the default ObjectID field (a questionably useful table schema).Thanks,Colin
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.
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 ServerCreate Database User (Data Management)
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,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.
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?
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."
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?
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#//002q00000080000000Colin
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.
I am running exactly the same build of ArcGIS for Desktop. My SQL Server Express 2012 build is 11.0.3128.0, MDAC 6.1.7601.17514 on Windows 7 SP1.Jamal,Unless you intend to access the Versioned View directly, either through ArcGIS, or more likely (because this is the main purpose of the Versioned Views), through non-ESRI software like AutoCAD or a SQL development environment, there is not much to worry about. The Versioned Views aren't required for correctly functioning ArcGIS software, nor for the versioned editing environment.Versioned Views are a kind of "extra", non-compulsory, addition to the Geodatabase framework, so I wouldn't worry to much about Versioned Views not being generated in all cases.
I tested this with ArcGIS for Desktop Advanced 10.2.0.3348. Something is definitely off with the way the version view gets created, and it will take some in-depth testing on Esri's part to identify which configuration's work and which do not for this particular operation.
In my case, if I create table (empty table from scratch) and register it as version then there is NO �??version view�?� is created.What might be the solution here? How one can have the version view created automatically as a table is created?
Jamal,I tested this with ArcGIS 10.2 (so not the 10.2.1 you are using) and SQL Server Express 2012, and can't reproduce it. If I create an empty table, and register it as versioned, the Versioned View is automatically created.Again, I can't reproduce this with my configuration, what exact version of ArcGIS are you using William?
Could you please try it in your database? In case you create a table in the SQL enterprise database, does the version view is created automatically?
I tried this workflow in SQL Server Express 2008 R2 and in Oracle 11g R2 (11.2.0.2) using a 10.2 client:Create table called TESTRegister table TEST as versioned, then enable ArchivingCheck in RDBMS to see if TEST_EVW was createdCreate feature class called TEST1Register feature class TEST1 as versioned, then enable ArchivingCheck in RDBMS to see if TEST1_EVW was createdIn the case of SQL Server Express, I observed that step 3 did not show that a version view of the TEST table was created (either before or after Archiving was enabled). However, step 6 did yield a version view of the TEST1 feature class which got created upon registering it as versioned. In the case of Oracle, I observed that both step 3 and step 6 yielded version views as expected based upon how Esri's documentation is written. Therefore, I can only conclude that in SQL Server the automatic creation does not work for tables upon registration as versioned, but it does work for feature classes. This could potentially be a bug.
As far as I know, the way to create the version view manually is to use the Enable SQL Access tool when right clicking the object class. You might be able to extract the SQL for an existing version view, modify its contents to fit the object class you desire, and run it in SQL Server Studio Manager but I don't know what else under the hood might be required by ArcSDE. I think doing something like that would be at your own risk. 🙂EDIT: You could also try the sdetable �??o create_mv_view command using the 10.2.x version of the ArcSDE command line tools. I'm not sure if it will create an _EVW or an _VW object though.
Perhaps this article about Enabling SQL Access (for 10.2) will explain some possible reasons for what you're seeing...Version views are also automatically created when you enable archiving on nonversioned datasets beginning with ArcGIS for Desktop 10.2. Additionally, there are situations when a version view will not exist:You have tables or feature classes that were registered as versioned prior to ArcGIS 10.1 and did not manually create a versioned view using the sdetable �??o create_mv_view command.You registered a table or feature class as versioned using ArcGIS 10.1 or a later release, but you did not have the privileges necessary to create a view in the database.You enabled archiving on a nonversioned table or feature class, but you did not have the privileges necessary to create a view in the database.The version view was deleted mistakenly using SQL or database management system tools.For these situations, you can Enable SQL Access on those specific datasets from ArcGIS for Desktop. Could any of these be the possible cause in your case?
Signed in members can post, follow updates, and more. New here? Register a free account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.