اعلانات انجمن


ارسال پاسخ 
 
امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
جواب ندادن کد بنده در arcobject
نویسنده پیام
arkadas آفلاین
کاربر عادی
*

ارسال‌ها: 1
تاریخ عضویت: اسف ۱۳۹۳
اعتبار: 0
ارسال: #1
جواب ندادن کد بنده در arcobject
با سلام خدمت شما، هرچند شاید اینجا مطرح کردن سوال تخصصی مناسب نباشد ولی جایی در سایت ندیدم برا همین اینجا مطرح می کنم،
ابتداً از راهنماییتان مچکرم بنده یک فایل نقطه ای دارم که در کل استان قزوین پخش شده است. در این لایه مقادیر یکی از فیلدها هر روز آپدیت می شود که این مقادیر براساس فیلد پهنه موجود در لایه صورت می پیرد. که برای اینکه سرعت کار بالا رود یک کد نوشته ام که در یک کمبو باکس نوشته شده و کابر با انتخاب پهنه ها در این کمبوباکس و سپس از طریق یک اینپوتباکس مقادیر جدید فیلدهای متناظر را وارد کرده و بدینگونه دیگر نیازی به استفاده از استارت إدیتینگ و.. نمی باشد. ولی کد بنده إرور می دهد ولی با بررسی فراوان نتوانستم علت اجرا نشدن آن را بدانم.اگر امکانش هست بنده را راهنمایی فرمائید.

 
کد php:
Private Sub UIComboBoxControl1_SelectionChange(ByVal newIndex As Long)
Dim pMxDoc As IMxDocument
Set pMxDoc 
ThisDocument
Dim pMaps 
As IMaps
Set pMaps 
pMxDoc.Maps
Dim pqazvinMap 
As IMap
Set pqazvinMap 
pMaps.Item(0)
Dim pkolLayerDef As IFeatureLayerDefinition
Set pkolLayerDef 
pqazvinMap.Layer(0)
Dim strQuery As String
strQuery 
"State_Name = '" UIComboBoxControl1.EditText "'"
Dim pEPAActiveView As IActiveView
Set pEPAActiveView 
pqazvinMap
pkolLayerDef
.DefinitionExpression strQuery
Dim pFilter 
As IQueryFilter
Set pFilter 
= New QueryFilter
pFilter
.WhereClause strQuery
Dim pkolFLayer 
As IFeatureLayer
Set pkolFLayer 
pkolLayerDef
Dim pkolFClass 
As IFeatureClass
Set pkolFClass 
pkolFLayer.FeatureClass
Dim pSelectionSet 
As ISelectionSet
Set pSelectionSet 
pkolFClass.Select _
(pFilter_
esriSelectionTypeHybrid
_
esriSelectionOptionNormal
_
Nothing
)
Dim pkolFClasss As IFeatureSelection
Set pkolFClasss 
pkolFLayer
Set pkolFClasss
.SelectionSet pSelectionSet
Dim pFLayer 
As IFeatureLayer
Set pFLayer 
pMxDoc.ContextItem
Dim pFields 
As IFields
Set pFields 
pkolFClass.Fields
Dim pFCursor 
As IFeatureCursor
Set pFCursor 
pkolFClass.Update(pFilterTrue)
Dim pFeature As IFeature
Set pFeature 
pFCursor.NextFeature
Do Until pFeature Is pFilter
InputBox("شماره جديد")
pFeature.Value(3) = X
Set pFeature 
pFCursor.NextFeature
pFCursor
.UpdateFeature pFeature
Loop
pMxDoc
.ActiveView.Refresh
pMxDoc
.UpdateContents
End Sub 


 
(آخرین ویرایش در این ارسال: ۲-۱۲-۱۳۹۳ ۱۰:۳۶ عصر، توسط علوی.)
۲-۱۲-۱۳۹۳ ۰۸:۰۱ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
علوی آفلاین
ناظر انجمن
******

ارسال‌ها: 496
تاریخ عضویت: مرد ۱۳۹۲
اعتبار: 246
ارسال: #2
RE: جواب ندادن کد بنده در arcobject
روی کدوم خط ارور میده و چه اروری؟

دو اصل اساسی انجمن:
1- احترام به یکدیگر
2- درصورت نقل مطلب، ذکر منبع و لینک به اصل مطلب

برای تقدیر و تشکر از دکمه [تصویر:  postbit_reputation.gif] در پایین هر ارسال استفاده کنید.
۲-۱۲-۱۳۹۳ ۱۰:۴۵ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
javadadabi آفلاین
کاربر عادی
*

ارسال‌ها: 94
تاریخ عضویت: خرد ۱۳۹۳
اعتبار: 38
ارسال: #3
RE: جواب ندادن کد بنده در arcobject
سلام دوست عزیز
باید توی کد قبل از اینکه value رو به feature curser پاس بدی editor رو start کنی،برای start کردن editor هم باید ابتدا workspace مربوط به لایه رو به دست بیاری.یعنی تغییر هر مقداری باید بین عبارت start و end edit صورت بگیره.
البته اگر قصد تغییر یک فیلد رو به طور کامل داری راه دیگه ای هم وجود داره و اون استفاده از geoprocessor و ابزار feild calculator در کد برنامه هست.
امیدوارم تا الان به جواب سوالتون رسیده باشید.

 
(آخرین ویرایش در این ارسال: ۳-۱۲-۱۳۹۳ ۰۳:۲۸ عصر، توسط javadadabi.)
۳-۱۲-۱۳۹۳ ۰۳:۲۷ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
 اعتبار داده شده توسط : علوی(+1)
ارسال پاسخ 


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان