أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		السلام عليكم ورحمة الله وبركاته
عندي قاعدة بيانات أكسس تحتوي على قرابة 300 جدول وكل جدول يحتوي على عمودين للإحداثيات وعمود فيه قيمة الهطول المطري في سنة معينة
والمطلوب  تحويل كل جدول إلى راستر 
أريد إنشاء سكريبت أو برنامج صغير بحيث يحول هذه الـ 300 جدول بشكل مباشر إلى 300 راستر 
هل يوجد لديكم حل ؟؟
مشكورين سلف
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		السلام عليكم ورحمة الله وبركاته
ان برنامج الماب انفو وكذلك الارك افيو يمكن بها العمل علي مجموعة كبيرة من الملفات في ان واحد فعند اجراء كل عملية يتم الضغط علي الزر شفت
وتحدبد جميع الملفات كمجموعه فتظهر جميعها باللون الازرق وبالضغط علي الزر اوكي تنفتح كل الملفات في ان واحد ..هذا لا يعني انه يمكن تحويل الداتا الي راستير في آن واحد انما ذلك يختصر الوقت والجهد الي حد كبير 
والله اعلم
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		شكراً على ردك أخي الكريم 
ولكنني أحاول أن أنفذ المطلوب برمجياً وليس يدوياً وللأسف خبرتي البرمجية ضعيفة فأرجو من أصحاب الخبرة مساعدتي 
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		[align=justify]في المشاركة بعنوان: مركز GIS بجامعة هارفارد في الرابط:
http://www.gisclub.net/vb/showthread.php?t=2822
يوجد في هذا الموقع ملف بصيغة pdf يحمل لك الاجابة علي سؤالك ويشرح بالتفصيل و الصور كيف تحول جدول بيانات الي طبقة ! الشرح مع أنه بالانجليزية الا أنه بسيط و ممتع ويمكنك تنفيذه بسهوله. رابط الملف هو:
http://isites.harvard.edu/fs/docs/ic..._Shapefile.pdf
بالتوفيق
[/align]
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		شكراً لردك الكريم د. جمعة 
طريقة تحويل الجدول إلى طبقة معروفة وسهلة ولكن ما أبحث عنه هو كيفية تحويل هذه العمليات البسيطة إلى ماكرو ثم وضع هذا الماكرو ضمن حلقة For  بحيث يتم تحويل الـ 300 جدول بشكل مباشر إلى طبقات
لأنني لو قمت بتنفيذ المطلوب يدوياً لإستغرق الأمر زمناً طويلاً جداً وقد لا يخلو هذا التنفيذ من أخطاء بشرية 
مشكورين لردودكم القيمة 
ولكنني ما زلت أبحث عن الحل
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		الاخ الفاضل 
السلام عليكم ورحمة الله
حسب علمي ان ماكرو يمكن تطبيقة علي مئات الصور ولكن يقوم بتحليل واحد فقط اي اجراء تحليل او وظيفة واحدة فقط (مثلا يمكن استخدام ماكرو لقطع منطقة الدراسة من مرئية كبيرة" اي يطبق الوظيفة windows or image subsit " ولكن لا يمكن اجراء عدة وظائف معقدة متتالية في ان واحد واحد مثلما ترغب انت... علي العموم ان لم تجد طريقة فأن العمل اليدوي لا يستغرق وقت طويل كما ضننت فهناك تسهيلات يمكن استخدامها بحيت تقوم باجراء كل خطوه مع جميع ملفاتك في ان واحد..انا عن نفسي قمت بنفس العمل مرتين مره بأستخدام الارك فيو ومره اخري بأستخدام الماب انفو مع 230 ملف في ان واحد
تمنياتي لك بالتوفيق
والسلام عليكم
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		بسم الله الرحمن الرحيم
تحياتي أخ محمد 
من خلال VBA يمكنك تنفيذ أي سلسلة من الأوامر مهما بلغت من التعقيد 
من ملفات الـ Help وجدت الأكواد التالية
كود لإنشاء شيب فايل جديد
Public Function CreateShapefile(sPath As String, sName As String) As IFeatureClass ' Dont include .shp extension
  
  ' Open the folder to contain the shapefile as a workspace
  Dim pFWS As IFeatureWorkspace
  Dim pWorkspaceFactory As IWorkspaceFactory
  Set pWorkspaceFactory = New ShapefileWorkspaceFactory
  Set pFWS = pWorkspaceFactory.OpenFromFile(sPath, 0)
  
  ' Set up a simple fields collection
  Dim pFields As IFields
  Dim pFieldsEdit As IFieldsEdit
  Set pFields = New Fields
  Set pFieldsEdit = pFields
  
  Dim pField As IField
  Dim pFieldEdit As IFieldEdit
  
  ' Make the shape field
  ' it will need a geometry definition, with a spatial reference
  Set pField = New Field
  Set pFieldEdit = pField
  pFieldEdit.Name = "Shape"
  pFieldEdit.Type = esriFieldTypeGeometry
  
  Dim pGeomDef As IGeometryDef
  Dim pGeomDefEdit As IGeometryDefEdit
  Set pGeomDef = New GeometryDef
  Set pGeomDefEdit = pGeomDef
  With pGeomDefEdit
    .GeometryType = esriGeometryPolygon
    Set .SpatialReference = New UnknownCoordinateSystem
  End With
  Set pFieldEdit.GeometryDef = pGeomDef
  pFieldsEdit.AddField pField
  ' Add another miscellaneous text field
  Set pField = New Field
  Set pFieldEdit = pField
  With pFieldEdit
      .Length = 30
      .Name = "MiscText"
      .Type = esriFieldTypeString
  End With
  pFieldsEdit.AddField pField
  
  ' Create the shapefile
  ' (some parameters apply to geodatabase options and can be defaulted as Nothing)
  Dim pFeatClass As IFeatureClass
  Set pFeatClass = pFWS.CreateFeatureClass(sName, pFields, Nothing, _
                                           Nothing, esriFTSimple, "Shape", "")
                                           
  Set CreateShapefile = pFeatClass
End Function
كود لإضافة شيب فايل إلى المشروع
Public Sub AddLayerFileToMap()
  Dim filePath As String
  filePath = "D:\arcgis\arcexe83\ArcObjects Developer Kit\samples\data\USA\states.lyr"
  Dim pGxLayer As IGxLayer
  Dim pGxFile As IGxFile
  Set pGxLayer = New GxLayer
  Set pGxFile = pGxLayer
  pGxFile.Path = filePath
  Dim pMxDoc As IMxDocument
  Set pMxDoc = ThisDocument
  pMxDoc.FocusMap.AddLayer pGxLayer.Layer
End Sub
وبالتالي يمكن تحويل أي عملية تقوم بها يدوياً ضمن ArcMap أو ArcCataloge إلى كود برمجي تنفذه بكبسة زر
من خلال تعديل الكود السابق ودمجه يمكن مثلاً إنشاء أي عدد تريد من الـ shapefiles وإضافتها إلى Arcmap بشكل آلي
والآن أنا أبحث عن الكود المقابل لأمر Add XY data
وكود لتحويل إلى راستر
وهكذا
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		بسم الله
السلام عليكم
قد يكون الاضافة بطريقة البرنامج تأخذ وقت اقل من عمل كود
ثم فحصه ثم اضافتة البرنامج
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		بسم الله الرحمن الرحيم
تحياتي أخ بهجت
إذا كنت تقصد أن إعداد الكود يتطلب وقت طويل ، والأفضل أن نستغل هذا الوقت في تنفيذ المطلوب يدوياً ، فهذا قد يكون صحيح 
وأنا حاليأ أنفذ المطلوب مني يدوياً وهذا سيأخذ على الأقل عمل 5 أيام ولكن إذا أخذت بعين الاعتبار أن هذا العمل مطلوب تكراره كل شهر تقريباَ أي أنني سأمضي ستون يومأ في السنة أقوم بنفس العمل.
بينما في حال نجحت في إعداد برنامج يقوم بتنفيذ المطلوب آلياً فإن إعداد البرنامج وفحصه قد يستغرق 30 يومأ بالتالي أكون قد ربحت 30 يومأ في السنة و 60 يومأ في السنة القادمة وهكذا
	 
	
	
	
		رد : أبحث عن طريقة آلية لتحويل مجموعة لجداول إلى راستر
	
	
		السلام عليكم اخوي  محمد فوزي
سوف ادلو بدلوي حسب ماعرفه  فخبرتي بالموضوع 4 شهور 
	اقتباس:
	
		
		
			عندي قاعدة بيانات أكسس تحتوي على قرابة 300 جدول وكل جدول يحتوي على عمودين للإحداثيات وعمود فيه قيمة الهطول المطري في سنة معينة
			
		
	
 بخصوص ربط قاعدة البيانات بالواجهة البرمجية فالامر سهل 
	اقتباس:
	
		
		
			برنامج صغير بحيث يحول هذه الـ 300 جدول بشكل مباشر إلى 300 راستر
			
		
	
 هنا لم افهم قصدك  بأي طريقة تحول هذه البيانات الى راستر  بمعنى لبدء ان تشرح لي طريقتك اليدويه في التحويل الى راستر 
ثم بعد ذلك أرى كيف استطيع ان اخدمك