مشاهدة النسخة كاملة : كيف اعمل ارقام متسلسلة في field
م محمد توفيق
05-02-2010, 03:09 PM
السؤال سهل و بسيط لدرجة اني مفكرتش ازاي يتعمل ؟؟؟؟؟؟؟؟
كيف اعمل ارقام متسلسة في field فاضي لو حد يقدر يجاوب يقولي, شكراً
عصام عطيه
05-02-2010, 03:13 PM
ماذا تعني اخي الكريم بارقام متسلسلة وضح السؤال، وان كنت تعني مثلا 1-2-3-4، لابد اولا ان تعمل حقل ثم تقوم بكتابة ما تريد من ارقام وبالتوفيق
م محمد توفيق
05-02-2010, 03:15 PM
بالفعل المطلوب ارقام متسلسة من 1- 2- و هكذا و لكن اكيد مش الحل اني اقوم بكتابتها فاني ساحتاج لارقام متسلسة قد تصل لاكثر من مائتي رقم و بالتالي ليس الحل ان اقوم بكتابتها يدويا اكيد في حل ,,, و مش مطلوب استخدام اي بيانات في خانة objectid لان الارقام بها غير متسلسة و غير مظبوطة نظراً لتكرار عمليات المسح و التعديل
هشام عزام
05-02-2010, 04:44 PM
قم بفتح احد ملفات ال shape file وهو صاحب الامتداد dbf. على برنامج excel وقم بكتابة رقم 1 ثم رقم 2 مثلا ثم بعمل سحب الى اسفل العمود سيتم الترقيم حتى نهايته والمفروض ان تفعل ذلك بحرص حتى لا يفسد shape file
اتمنى ان اكون وضحت الفكرة
وشكرا
م محمد توفيق
05-02-2010, 04:46 PM
انا شغال علي فيتشر في داتا بيز مش شغال علي شيب فايل
بهجت يوسف الجعافرة
05-02-2010, 05:15 PM
السلام عليكم
اذا عملت وخزنت الملف داخل قاعدة البياتات geodatabase
فاتك تصتطيع فتح الملف عن accessor ArcGis
وتضيف رقم بخاصية AutoNumber
م محمد توفيق
05-02-2010, 11:34 PM
انا شغال علي برنامج arc map 9.2 لو في حل من خلال البرنامج ده ياريت يكون افضل
طارق العتيبي
05-15-2010, 10:04 PM
السلام عليكم ورحمة الله وبركاته
لتجنب إستخدام ال OBJECTID
قم بكتابة هذا script في ال Field Calcucalte في ال Advance
static x
x = x +1
ثم
في خانة اليساوي
x
م.ياسر أحمد سالم
05-16-2010, 01:16 AM
طريقة الاخ طارق العتيبي هي اسهل الطرق و احسنها و عن تجربه و كذلك بكتابة الكود يمكن عمل الكثير في ال field >>>احسنت استاذ طارق العتيبي
صلاح أحمد صالح
05-17-2010, 08:38 PM
ممكن عن طريق Field Calcucalte ومن ثم عنوان الحقل الذي تريد ترقيمة يساوي المعادلة التالية
[FID] +1 ثم كليك على OK وبالتالي الناتج سوف يكون نفس الأرقام الموجودة في حقل FID مضاف عليها واحد اي ان ترقيم الحقل سيبدأ من الواحد الصحيح وهذا رابط لملف ورد فية صورتين توضح الشرح
http://rapidshare.com/files/388443794/__________________________.doc.html
م محمد توفيق
06-21-2011, 12:29 PM
طريقة الاخ طارق هي المطلوبة بالظبط و ارجو منه ان يمدنا بالمزيد من هذة المعادلات لانها مفيدة جداً ,,
بشار محمد خير
06-24-2011, 10:05 PM
اخي العزيز هناك طريقه سهله جدا
استخدم برنامج ال Arc View 3
و استخدم الاكستنشن DC processing
في صفحة الجدول استخدم create unique id
اتمنى اكون افدتك
تغريد على
06-28-2011, 10:54 PM
السلام عليكم ورحمة الله وبركاته
لقد قمت بعمل جميع الخطوات المذكوره برد الاخ طارق العتيبى ولكن يظهر رقم 1فى جميع الخلايا وليست ارقام متسلسله وجملة static x اقوم بازالتها لانها تعطينى رساله خطاء عند اجراء المعادله ارجو الافادة من فضلك لانى اقوم بنفس العمليه على عدد خلايا كبير ولكم جزيل الشكر والتقدير
محمد مجدي
06-29-2011, 12:54 AM
السلام عليكم ورحمة الله وبركاته:
الطريقة السابقة تصلح لجميع أصدارات ArcGIS عدا الأصدار العاشر ArcGIS 10
نظرا لأن مايكروسوفت أحدثت بعض التغييرات في طريقة كتابة الكود
مع العلم بأن ArcGIS 10 هو أخر أصدار يدعم VB Script وأبتداء من الأصدار القادم سيدعم فقط Python
عموما يمكن أستخدام الكود التالي وهو بلغة Python
1- نختار Python بدلا من VB script من Parser
2- نختار Show codeblock
3- نكتب ما يلي في الجزء الخاص بـ Pre-Logic Script Code
rec=0
def autoIncrement():
global rec
pStart = 1 #adjust start value, if req'd
pInterval = 1 #adjust interval value, if req'd
if (rec == 0):
rec = pStart
else:
rec = rec + pInterval
return rec
4- نكتب ما يلي في الجزء السفلي Field Name =
()autoIncrement
إن شاء الله هذه الطريقة تعطي نفس النتائج السابقة
-------------------
والله أعلى وأعلم
نجد جمال
06-29-2011, 10:18 PM
السلام عليكم الاخوة الكرام
لعمل هذه الطريقة
Static rec As Long
Dim pStart As Long
Dim pInterval As Long
' adjust start value if you want it to
' start at a value other than 1.
' For example, 1000.
' ====================================
pStart = 1
' adjust interval value if you want it to
' increment at a value other than 1.
' For example, 2.
' =======================================
pInterval = 1
If (rec = 0) Then
rec = pStart
Else
rec = rec + pInterval
End If
وهذه النتائج التي تم التوصل اليها بعد تطبيق الكود السابق
http://www3.0zz0.com/2011/06/29/19/577014173.png
http://www3.0zz0.com/2011/06/29/19/505006621.png
ارجو ان يستفيد منه الجميع وشكرا
م محمد توفيق
07-31-2011, 03:49 PM
السلام عليكم ورحمة الله وبركاته
لقد قمت بعمل جميع الخطوات المذكوره برد الاخ طارق العتيبى ولكن يظهر رقم 1فى جميع الخلايا وليست ارقام متسلسله وجملة static x اقوم بازالتها لانها تعطينى رساله خطاء عند اجراء المعادله ارجو الافادة من فضلك لانى اقوم بنفس العمليه على عدد خلايا كبير ولكم جزيل الشكر والتقدير
يجب عليكي الاتي :
1- اختاري علامة صح علي advanced
2- اكتبي المعادلة static x
x = x +1 علي سطرين تحت بعض
3- اكتبي الرمز x في الخانة =
م محمد توفيق
07-31-2011, 05:00 PM
السلام عليكم ورحمة الله وبركاته:
الطريقة السابقة تصلح لجميع أصدارات ArcGIS عدا الأصدار العاشر ArcGIS 10
نظرا لأن مايكروسوفت أحدثت بعض التغييرات في طريقة كتابة الكود
مع العلم بأن ArcGIS 10 هو أخر أصدار يدعم VB Script وأبتداء من الأصدار القادم سيدعم فقط Python
عموما يمكن أستخدام الكود التالي وهو بلغة Python
1- نختار Python بدلا من VB script من Parser
2- نختار Show codeblock
3- نكتب ما يلي في الجزء الخاص بـ Pre-Logic Script Code
rec=0
def autoIncrement():
global rec
pStart = 1 #adjust start value, if req'd
pInterval = 1 #adjust interval value, if req'd
if (rec == 0):
rec = pStart
else:
rec = rec + pInterval
return rec
4- نكتب ما يلي في الجزء السفلي Field Name =
()autoIncrement
إن شاء الله هذه الطريقة تعطي نفس النتائج السابقة
-------------------
والله أعلى وأعلم
يرجي فقط توضيح كيف يتم تغيير اللغة من Python بدلا من VB script ليتسني لنا التجربة
محمد مجدي
08-02-2011, 12:26 PM
السلام عليكم ورحمة الله وبركاته:
يمكن أستخدام Help لنسخ الكود ولصقة نظرا لأن لغة python تراعي المسافات في بداية السطور لتحديد مسار البرنامج و الصورة التالية توضح كيفية عمل ذلك في ArcGIS 10
http://s3.postimage.org/gsruexii2/python.jpg ( http://imageshack.us/photo/my-images/827/python3c.jpg/)
أحمد فؤاد الأفندى
08-07-2011, 11:13 PM
فعلا نحتاج الى العديد من المعادلات
كل عام وانتم بخير
Powered by vBulletin® Version 4.1.11 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.