Щомісяця я маю до QA / QC деякі дані вулиць для цілого округу (понад 47 000 записів). Перший крок - порівняння двох файлів. В даний час я використовую інструмент, створений в будинку через VBA приблизно 5 років тому. Це працює, порівнює два файли та звітує про відмінності на основі кількох факторів (додані записи, видалені записи, зміни адреси, зміни міста, зміна довжини сегмента / вершин). Потім я експортую їх до окремих форм-файлів. Крім того, інструмент працює, ArcGIS 9.3
але більше не працюватимеArcGIS 10.1
Інструмент чудово працює, але на його виконання потрібно близько години.
Я почав працювати над надією на вдосконалення цього інструменту для прискорення продуктивності. Я розглядав різні методи, включаючи Compare Feature Tool
та Select by Location
.
Обидва ці інструменти працюють значно швидше, проте, схоже, вони не захоплюють все, що мені потрібно. Велике питання, що у мене виникає, Compare Feature Tool
полягає в тому, що я не можу вибрати, на якому полі порівняти. Він за замовчуванням застосовується до ObjectID, коли мені потрібно порівняти по Segment_ID. Немає можливості вибрати це.
Хтось має хороше рішення чи ідеї, як досягти повного порівняння, як я описав?
Чомусь ArcGIS не визнає приєднання, яке я намагаюся відповісти на відповідь РайанаДалтона.
Але
Дотримуючись поради щодо об’єднання, я зрозумів, як знайти додані записи та видалені відмінності між записами у двох файлах:
- Приєднання файлу форми попереднього місяця до файлу форми поточного місяця через поле Segment_ID
- Виконання запиту на визначення, де Segment_ID NULL
- Експорт цього нового файлу форми (Додані функції)
Потім я повертаю з'єднання і знаходжу видалені функції
Ще працюю над тим, щоб знайти інші перелічені відмінності, а потім зв'язати їх усі разом у моделі.
Я можу знайти всі записи, які змінилися, виконавши записи вибору за місцем розташування з одного з наборів даних, які ідентичні іншим набором даних. Потім я перемикаю виділення, і це дає мені всі записи, які не є ідентичними.
Я все це вкладу в модель і, сподіваюся, він працює так само добре.