The New York City Department of Finance Digital Tax Map is a system of editing and publishing components that is the tax map of record. The Department of Finance has historically used customized ArcGIS Desktop Software, aka "The Wizards," to edit an ESRI Enterprise Geodatabase hosted at the NYC Office of Technology and Innovation (formerly DoITT).
The goal of this repository is to help migrate the database components supporting Department of Finance editing from a legacy 10.2 ESRI User-Schema Enterprise Geodatabase on Oracle 11g to a supported ESRI Enterprise Geodatabase on Oracle 19c. We will pay no mind to requirements like publishing to the web application or NYC Open Data.
The code is mainly scripts and convenience wrappers to geodatabase-toiler, accounting for some of the patterns in this application that the geodatabase-toiler does not manage. Friends, this our taxmap toiling in an ESRI Enterprise Geodatabase, our rules, the trick is never to be afraid.
Basic stuff here. Requires a scratch Oracle database schema.
> set SDEFILE=X:\yyy\zzz.sde
> set PYTHONPATH=C:\gis\geodatabase-toiler\src\py;C:\gis\geodatabase-taxmap-toiler\src\py;%PYTHONPATH%
> testall.bat
The sample will delete everything on the destination, then import all. Edit the sample and rename it for any migration.
Edit the inventories under src/resources.
> sample_import.bat
Use this simple wrapper and call from Windows Scheduler to avoid idle time. Estimated run time - approximately 4 hours.
> migratedtm.bat
These appear to be convenience cruft that are not part of the required application setup.
This repository will not create versions. For reference:
Mixed case ESRI feature classes exist where indicated.
Registered as versioned and is edited.
Tables with mixed-case names are geodatabase-registered and versioned on the legacy source database. The wizards also edit some tables directly without the tables being registered with the geodatabase. These unregistered tables should not be migrated with arcpy.
Name | Registered | Versioned | |
---|---|---|---|
1. | Air_Rights_Condos | Y | Y |
2. | Air_Rights_Holders | Y | Y |
3. | Air_Rights_Lots | Y | Y |
4. | Condo | Y | Y |
5. | Condo_Units | Y | Y |
6. | Conversion_Exceptions | Y | Y |
7. | Conversion_Log (empty) | Y | Y |
8. | REUC_Lots | Y | Y |
9. | Subterranean_Lots | Y | Y |
The editing wizards use no views.
Use caution if examining views on the source environments. One view (condo_unit) is so poorly defined that previewing it in ESRI software will fire off automated database alerts!
One relationship class lives under the Cadastral feature dataset, see above. We will create 12 relationship classes.
Relationship classes listed in resources\relationshipclasses will be deleted. 11 are listed, the 12th relationship class accompanies the Cadastral feature dataset deletion. Relationship class creation requires 12 individual calls in sample_import.bat to createrelationshipclass.py. The organization here is meh, I know.
Best to include these, the Wizards expect them even if they are not edited or explicitly read.
Some of these tables store Portable Document Formatted maps as Binary Large Objects and are large. Using arcpy to migrate these tables without some additional cleanup is inappropriate because added geodatabase-managed columns and column type migrations will blow up the wizards.
Name | Registered | Versioned | Migrate with | |
---|---|---|---|---|
1. | DAB_ACTION_DEFINITION | N | N | exp/imp |
2. | DAB_AIR_RIGHTS | N | N | exp/imp |
3. | DAB_AIR_RIGHTS_DEFINITION | N | N | exp/imp |
4. | DAB_BOUNDARY_LINE | N | N | exp/imp |
5. | DAB_CONDO_CONVERSION | N | N | exp/imp |
6. | DAB_CONDO_UNITS | N | N | exp/imp |
7. | DAB_DOMAINS | N | N | exp/imp |
8. | DAB_REUC | N | N | exp/imp |
9. | DAB_SUBTERRANEAN_RIGHTS | N | N | exp/imp |
10. | DAB_TAX_LOTS | N | N | exp/imp |
11. | DAB_WIZARD_TRANSACTION | N | N | exp/imp |
12. | DTM_USER_MAINT | N | N | exp/imp |
13. | DTM_WORK_IN_PROGRESS | N | N | exp/imp |
14. | FINAL_ASMT | N | N | exp/imp |
15. | HAB | N | N | arcpy/sql |
16. | MAP_INSET_LIBRARY | N | N | arcpy/sql |
17. | MAP_LIBRARY | N | N | arcpy/sql |
We will ignore this reference data. But for reference here is a list.
This repository does not toil in workflow manager data. See [jtx_admin.md] (https://github.com/mattyschell/geodatabase-taxmap-toiler/blob/main/doc/jtx_admin.md)