আর্কম্যাপে "সম্পর্কিত সারণী" বোতামটির অনুলিপি তৈরি করতে আমি নীচের কোডটি ব্যবহার করছি is আর্কম্যাপে সেই বোতামটি অন্য কোনও বৈশিষ্ট্য শ্রেণি বা সারণীতে বৈশিষ্ট্যগুলির নির্বাচনের উপর ভিত্তি করে একটি বৈশিষ্ট্য শ্রেণি বা সারণীতে বৈশিষ্ট্য নির্বাচন করে।
আর্কম্যাপে আমি সেই বাটনটি কয়েক সেকেন্ডের মধ্যে আমার নির্বাচন সম্পর্কিত টেবিলটিতে "ধাক্কা" দিতে ব্যবহার করতে পারি। আমি আরকেপিতে অন্তর্নির্মিত এমন কোনও কিছুই খুঁজে পেতে অক্ষম ছিল যা বোতামটির প্রতিলিপি তৈরি করে তাই আমি একই কাজটি করতে কিছু নেস্টেড লুপ ব্যবহার করেছি।
নীচের কোডটি "চিকিত্সার" সারণির মধ্য দিয়ে লুপ করে। প্রতিটি চিকিত্সার জন্য, এটি "গাছ" এর একটি তালিকা মাধ্যমে লুপ করে। যখন চিকিত্সা এবং গাছের আইডি ক্ষেত্রগুলির মধ্যে কোনও মিল খুঁজে পাওয়া যায়, তখন একটি গাছ গাছের স্তরতে ঘটে। একবার কোনও চিকিত্সার জন্য কোনও মিল খুঁজে পাওয়া গেলে, কোড অতিরিক্ত ম্যাচের জন্য গাছের স্তরটি অনুসন্ধান করতে চালিয়ে যায় না। এটি চিকিত্সার টেবিলে ফিরে যায়, পরবর্তী চিকিত্সা নির্বাচন করে এবং আবার ট্রি বৈশিষ্ট্য শ্রেণীর মাধ্যমে অনুসন্ধান করে।
কোডটি নিজেই সূক্ষ্মভাবে কাজ করে, তবে এটি যন্ত্রণাদায়কভাবে ধীর। এই ক্ষেত্রে "চিকিত্সার টেবিল" এর 16,000 রেকর্ড রয়েছে। "ট্রি" বৈশিষ্ট্য বর্গের 60,000 রেকর্ড রয়েছে।
ইএসআরআই যা করছে তা পুনরায় তৈরি করার আরও একটি কার্যকর উপায় আছে যখন এটি একটি টেবিল থেকে অন্য টেবিলে নির্বাচনকে ঠেলে দেয়? আমি কি টেবিলগুলির জন্য একটি সূচক তৈরি করব? দ্রষ্টব্য: এই ডেটা একটি এসডিইতে সঞ্চিত রয়েছে।
# Create search cursor to loop through the treatments
treatments = arcpy.SearchCursor(treatment_tv)
treatment_field = "Facility_ID"
for treatment in treatments:
#Get ID of treatment
treatment_ID = treatment.getValue(treatment_field)
# Create search cursor for looping through the trees
trees = arcpy.SearchCursor(tree_fl)
tree_field = "FACILITYID"
for tree in trees:
# Get FID of tree
tree_FID = tree.getValue(tree_field)
if tree_FID == treatment_FID:
query = "FACILITYID = " + str(tree_FID)
arcpy.SelectLayerByAttribute_management(tree_fl, "REMOVE_FROM_SELECTION", query)
break