So here is an example of the type of system I want to Manifold 9 to help manage, especially in terms of editing Geometry data, but also where manifold could help when adding a new client to the database. CREATETABLE [dbo].[Geom_of_Parcels]( [OID] [int] IDENTITY(1,1) NOT NULL, [Version] [int] NULL, [Year] [int] NULL, [ParcelName] [nchar](50) NULL, [Client_ID] [nchar](10) NULL, [PrintOrder] [int] NULL, [Geometry] [geometry] NULL, [Attr_a][nchar](10) NULL, [Attr_b] [nchar](10) NULL, [Attr_c] [nchar](10) NULL, [Attr_d] [nchar](10) NULL, [Active] [char](1) NULL, [AcresFromMap] [float] NULL, [AcresManuallyEntered] [float] NULL, [editDate] [date] NULL, [EditedBy] [int] NULL, [WKT_temp] [varchar](max) NULL, CONSTRAINT [PK_Geom_of_PARCELS3] PRIMARY KEY CLUSTERED ( [OID] ASC )WITH (PAD_INDEX= OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] )ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] CREATETABLE [dbo].[Geom_Of_SubParcels]( [OID] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL, [Version] [int] NULL, [ParcelName] [char](50) NULL, [SubSection] [char](50) NULL, [Client _ID] [char](10) NULL, [Year] [int] NULL, [Geometry] [geometry] NULL, [Active] [char](1) NULL, [EditedBy] [nchar](40) NULL, [EditDate] [date] NULL, [AcresFromMap] [float] NULL, [AcresManuallyEntered] [float] NULL, [Attr_a][nchar](10) NULL, [Attr_b] [nchar](10) NULL, [Attr_c] [nchar](10) NULL, [Attr_d] [nchar](10) NULL, [LabValue1] [smallint] NULL, [LabValue2] [float] NULL, [LabValue3] [char](5) NULL, [LabValue4] [smallint] NULL, [LabValue5] [float] NULL, [LabValue6] [float] NULL, [DateOfReport] [datetime] NULL, [geometry_temp] [varchar](max) NULL, CONSTRAINT[PK_Geom_Of_Sections1] PRIMARY KEY CLUSTERED ( [OID] ASC )WITH (PAD_INDEX= OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] )ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] These two table will track hundreds of clients who each have anywhere from 1 to 500 ( or more) parcels.And each of the parcels can have anywhere from 1 to 50 ( or more ) subparcels.In addition to these two tables in SQLserver there are many more tables that track all manner of tabular data about the client.Most of this data is available via a Software management system that allows multiple people to have access to this data, all at the same time. ( I.E. This is not a standalone database sitting on one desktop computer ) Because there may be Tens of thousands of parcel and subparcel records, a starting set of capabilities, in Manifold, that would be of great use are: - 1)be able to pull in just one Client/Year set of Records via a Query.
- 2)Be able to edit the geometry data.
- 3)Be able to edit some of the tabular data.
- 4)Create new entries in the table for the current client/year
- 5)This data should be available within seconds, not tens of seconds.
<!--[if !supportLists]-->There are other functions that Manifold could probable perform once this basic set of capabilities was in place (e.g. Do a join query with another dataset and based on those results update the Parcel table ). From a programming standpoint I am not sure why you are using the model you are. That is, why are you storing all of the metadata back to SQLserver. If one wants to write a query about the Parcel data, why is Manifold not maintaining an object, within Manifold, that has the source of the data, the list of geometry fields, SRIDs, list of indexes, etc. All of this data can be queried from SQLserver. This would allow Manifold to have only the data it needs to manage the set of tables that the end user has specified are needed within the current project. If you want me to continue with filling in my wants for a GIS data management system I can continue....
|