مدونة منذر اسامة

العودة   منتديات جريت بلينز العربية Great Plains For Arab > منتدى مطوري جريت بلينز > مواضيع المطورين الأخرى

مواضيع المطورين الأخرى مواضيع المطورين التي لا تنتمي الى أي من التصنيفات السابقة
مثل لغة الديكستريتي (Dexterity) والأدوات التطويرية الأخرى (eConnect , Integration Maneger ,VS2005 for GP...etc.)

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 05-Dec-2011, 09:49 AM   #1
humam
مشرف منتدى المطورين
افتراضي ايهما افضل VBA Modifier او الدكسترتي

ان عملية الاختيار بين VBA Modifier وبين Dexterity سوف تعتمد على عوامل عديدة اذا نظرنا بصورة مبسطة من ناحية التعقيد سوف نلاحظ ان استخدام VBA Modifier اسهل بكثير من استخدام Dexterity والسبب ان لغة البيسك تعتبر من اقدم واسهل لغات البرمجة اذا ما قورنت باللغات الاخرى مثل C# وC++ ولكنها بنفس الوقت تمتلك نفس الامكانيات التي نمنلكها اللغات الاخرى اضافة الى توفر العديد من مصادر الدعم الفني على شبكة الانترنت بحيث يكفي القيام بعملية بحث بواسطة اي محرك بحث للحصول على الشفرات البرمجية او المكتبات الديناميكية او حتى مواد تعليمية تخص هذه اللغة.
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:50 AM   #2
humam
مشرف منتدى المطورين
افتراضي

اما اذا جئنا الى لغة الدكسترتي طبعا مجازا نطلق عليها لغة الدكسترتي حيث انه في الواقع ان الاسم دكسترتي يشير الى Tool تستخدم في عملية تطوير برنامج الجريت بلينز اما اللغة البرمجية التي تستخدمها هذه الاداة يطلق عليها SanScript وهي لغة مشابهة الى JScript و VBScript من حيث التركيب البرمجي ولكن سوف استمر في استخدام مصطلح الدكسترتي.
اذا جئنا الى مسئلة الانتشار فهي لغة غير معروفة نسبيا الا من قبل الاشخاص الذين هم على تماس مع برنامج الجريت بلينز سواء كانوا مطورين او مستخدمين للبرنامج وعدم الانتشار وقلة عدد مستخدمين هذه اللغة دفع الى نتيجة حتمية وهي قلة المصادر المتوفرة عن هذه اللغة في شبكة الانترنت وفي معظم الاحيان تفشل عمليات البحث التي كنت اجريها في الوصول الى النتيجة المطلوبة. اضافة الى ذلك ان لغة السانسكربت التي تحتويها الدكسترتي هي لغة موجهة الى التعامل مع قواعد البيانات وهي بذلك تحتوي على جمل وعبارات برمجية موجهة للتعامل مع قواعد البيانات غير موجودة في اللغات الاخرى وهي تعتبر نقطة قوة وضعف في نفس الوقت نقطة ضعف لان هذه الجمل والعبارات تستخدم اساليب جديدة وعلى المطور ان يتقن هذه الاساليب اما نقطة القوة فهي تعطي للمطور الذي استوعب هذه الاساليب الجديدة مرونه كبيرة في التعامل مع قواعد البيانات من ناحية تخزين ومعالجة وعرض البيانات غير متوفرة في اللغات الاخرى اضافة الى وجود العديد من المحددات الاخرى المتعلقة بأمكانيات لغة SanScript وهي شأنها شأن لغات البرمجة الخطية الاخرى Jscript وVBScript لاتدعم المفاهيم البرمجة كائنية التوجه والمفاهيم المتقدمة في هذا المجال مثل الفئات والوراثة والتسلسل الى اخره مما يعتبر من عيوب هذه اللغة.
واخيرا هناك نقطة مهمة اخرى وهي ان المطور الذي يتجه ليكون مطور جريت بلينز سوف يتعلم لغة برمجية تكون قاصرة على منتج واحد فقط من المايكروسوفت وهو لا يستطيع استخدام هذه اللغة مع اي تطبيق اخر.
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:51 AM   #3
humam
مشرف منتدى المطورين
افتراضي

وبصراحة ان هذه المقارنه المبسطة سوف لن تعطي النتيجة المطلوبة للاجابة على التساؤل الذي يطرحه عنوان الموضوع ايهما افضل VBA Modifier او Dexterity حيث ان مسألة التعقيد والسهولة لن تكون حاضرة في ذهن Functional Consultant عندما يقوم بأعطاء المتطلبات الى Technical Consultant ويطلب منه تحقيق هذه المتطلبات بغض النظرعن كيفية القيام بذلك مع العلم انه من الجيد لأي مشروع ناجح متعلق بالجريت بلينز ان يكون Functional Consultant على الاقل ملم بأمكانيات ادوات التطوير المتوفرة لدى المطور حتى تكون المتطلبات التي يطرحها منطقية.

المهم في النهاية سوف تكون الكرة في ساحة المطور وهو عليه ان يختار اداة التطوير المناسبة هل يذهب الى الدكسترتي ام الى VBA Modifier وعموما لاتوضح وثائق المايكروسوفت المرفقة مع الجريت بلينز اي معلومات بهذا الاتجاه ولذا سوف اطرح رأي شخصي نابع من خبرتي المتواضعة في هذا المجال وهي بكل تأكيد قابلة للنقض او التقاطع مع افكار الاخرين وانا ارحب مسبقا بأي راي قد يكون مغاير لانه من الجيد دائما في موضوع البحث العلمي الاطلاع على اراء الاخرين ومحاولة الاثراء من تجاربهم .
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:52 AM   #4
humam
مشرف منتدى المطورين
افتراضي

ولكي تكون قادر على الاختيار يجب ان تعلم مسبقا النتائج المستقبلية التي لهذا الخياراو ذاك وهذا مثلا عند العمل مع VBA Modifier سوف تحتاج الى التعامل مع Dynamics.DIC وهو Dictionary الرئيسي للجريت بلينز هذا في حالة كونك رغبت ان تقوم بعملية التعديل على احدى نماذج الجريت بلينز الموجودة ضمن هذا ال Dictionary ومن الجيد ان تعلم ان هناك لكل Dictionary يوجد Two Dictionaries مرتبطة به ارتباط وثيق وهي Report Dictionary و Form Dictionary واذا راجعت وثائق الجريت بلينز المتعلقة بعملية Upgrade تلاحظ انها تنص على ضرورة قيامك بعملية تحديت upgrade لل Report Dictionary و Form Dictionary وانا اذكر هنا انه في اول مرة طلب مني ضمن العمل القيام بعملية Upgrade لاحد عملائنا في الشركة من GP8 الى GP9 قمت بعمل بحث مصغر عن كيفية القيام بذلك وما هي الخطوات المطلوبة لانه من الجيد القيام بعملية اعداد نظري قبل المباشرة بالعمل والافضل منه وخصوصا بما يتعلق بعملية Upgrade ان تجري عملية Simulation على نسخة تجريبية قبل القيام بذلك مباشرة عند Client و لا اريد الاسهاب في هذا الموضوع لانه موضوع منفصل المهم كانت من ضمن الخطوات المفروض القيام بها هي عمل upgrade لل Report Dictionary و Form Dictionary واذكر اني بحثت مطولا عن هذاين القاموسين ضمن مجلد الجريت بلينز ولم اجد لهما اي اثر
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:53 AM   #5
عماد زيد
مشرف عام في منتديات جريت بلينز العربية
افتراضي

عزيزي همام :
هناك فروق جوهرية بينهما و بين تعامل كل منهما مع أي طبقة من البرنامج Layer
نحن نعلم أن جريت بلينز يتألف من أربع طبقات Layers:
user interface
Business logic
data dictionary
database
اختيار الأداة المناسبة رهن بمدى التعديلات المطلوبة و على أي مستوى و منها نقرر الأداة الأفضل.

اشتقتلك يا زلمي
عماد زيد غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:54 AM   #6
humam
مشرف منتدى المطورين
 
الصورة الرمزية humam
 
تاريخ التسجيل: Jul 2007
الدولة: UAE
المشاركات: 323
إرسال رسالة عبر مراسل Yahoo إلى humam
من مواضيعي  
افتراضي

وبعد الرجوع الى الوثائق عرفت ان هذه القواميس سوف لن تظهر الا عند قيامك بأستخدام VBA Modifier للقيام بعملية تغيير على GP Forms او GP Report حيث سوف تنتقل هذه النماذج او التقارير المعدلة الى هذه Dictionaries (Report & Form ) وسوف يقوم الجريت بلينز بالوصول الى هذه Dictionaries لعرض هذه النماذج او التقارير المعدلة للمستخدم بدلا من عرضها من Dynamics.DIC وهنا كما يقال مربط الفرس حيث اني اود القول ان استخدام VBA Modifier سوف يؤدي الى ظهور Report Dictionary و Form Dictionary لذا سوف تكون مسؤول عن تحديث هذه القواميس ليس على GP Server فحسب بل وعلى كل Client Machines اضافة الى كل هذا من المحتمل وهذا وارد بشكل كبير ان يكون الحقل الذي اضفته بواسطة Modifier يتعارض مع موقع حقل جديد قامت المايكروسوفت باضافته الى النافذة وغيرها من التعقيدات الاخرى المحتمل حدوثها اما اذا كانت عملية التغيير التي تريد اجرائها على نموذج يتبع ل Third Party Product مثل اي نموذج او تقرير ضمن Analytical Account عند ذلك سوف تحتاج الى اضافة Reference لل Dictionary الذي يمثل هذا المنتج الى VBA Modifier حتى تكون قادر على الوصول الى النماذج والتقارير الخاصة بهذا المنتج حيث كما هو معلوم انه لكل منتج اضافي لبرنامج الجريت بلينز سوف يمتلك Dictionary خاص به يتم اضافته الى مجلد الجريت بلينز عند تنصيب المنتج وكذلك ان هذا Dictionary سوف يمتلك Report Dictionary و Form Dictionary تظهر في مجلد الجريت بلينز عند القيام بعملية تغيير النماذج والتقارير بواسطة VBA Modifier وكذلك سوف تحتاج الى القيام بعملية Upgrade لهذه Dictionaries عند قيامك بالترقية من نسخة جريت بلينز الى اخرى .
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:56 AM   #7
humam
مشرف منتدى المطورين
افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة عماد زيد مشاهدة المشاركة
عزيزي همام :
هناك فروق جوهرية بينهما و بين تعامل كل منهما مع أي طبقة من البرنامج Layer
نحن نعلم أن جريت بلينز يتألف من أربع طبقات Layers:
user interface
Business logic
data dictionary
database
اختيار الأداة المناسبة رهن بمدى التعديلات المطلوبة و على أي مستوى و منها نقرر الأداة الأفضل.

اشتقتلك يا زلمي
احسنت اخي عماد على هذه الاشارة نعم ان توضيح مستويات البرنامج يساعد المطور على اختيارالاداة المطلوبة للتطوير وقد يكون الحل مثلا استخدام اجراء مخزن وغيره من الامكانات الاخرى التي لم اتطرق اليها في هذا الموضوع وصدقا ملاحظة قيمة ودائما ابقى اتعلم منك يا استاذي العزيز عماد

والله انا مشتاقلك اكثر وانشاء الله نلتقي مجددا
__________________
GP Techno-Functional Consultant

آخر تعديل بواسطة humam ، 05-Dec-2007 الساعة 10:49 AM.
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:58 AM   #8
humam
مشرف منتدى المطورين
افتراضي

بصورة عامة ان VBA Modifier يستخدم من قبل Functional Consultant للقيام بعمليات التغيير المطلوبة على برنامج الجريت بلينز وذلك لسهولة الاستخدام حيث ان بيئة العمل متوافقة مع بيئة الجريت بلينز. اما بالنسبة للمطورين فأعتقد انه من غير المفضل الاكثار من استخدام Modifier الا في حالة الضرورة وسوف اوضح هذا الاحتمال فعند قيامك بتطوير منتج جديد للجريت بلينز لا تحاول استخدام Modifier الا في حالات خاصة وهي عندما يتضمن المشروع الذي تعمل عليه التعامل مع المنتجات الاضافية للجريت بلينز مثل Analytical Account ,Human Resources, Bank Management الى اخره من المنتجات الاضافية وهذا يعتمد على نوع التعديل المطلوب حيث ان الصعوبة في التعامل مع هذه المنتجات تكمن في انك لا تمتلك Developer Dictionary الذي استخدم لتطوير هذه المنتجات بعكس العمل مع نوافذ الجريت بلينز الاصلية حيث عند التعامل مع الجريت بلينز سوف نستخدم Dynamics.dic والذي يحتوي على كل المصادر resources حيث يمكنك الذهاب الى اي نسخة جريت بلينز تعمل بشكل سليم على جهازك وتنسخ Dynamics.dic وتبدأ بعملية التطوير بدون اي مشاكل
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 09:59 AM   #9
humam
مشرف منتدى المطورين
افتراضي

ولكن هذا غير ممكن مع المنتجات الاضافية وقد يقترح احدهم ان نقوم بنفس العملية التي قمنا بها مع Dynamics.dic حيث كما قلنا ان dictionaries لهذه المنتجات الاضافية سوف تكون موجودة ايضا في مجلد الجريت بلينز مثلا قد يقترح ان ننسخ ال POE2277.DIC الى مجلد التطويروهذا القاموس يمثل المنتج Purchase Order Enhancements اذا كنا نريد ان نقوم بعملية تعديل على نوافذ هذا المنتج. الجواب هذا غير ممكن نهائيا وحتى لو حاولت ونسخت هذا المجلد ثم قمت بفتحه بواسطة الدكسترتي سوف تجد معظم الحقول مفقودة والمجلد لا يحتوي على اي شفرات برمجة والسبب في ذلك ان هذا القاموس هو ليس Developer Dictionary (ان اي Developer Dictionary في الاصل هو Dynamics.dic ولكن نحن نقوم بتعديله وتطويره) بل هو عبارة عن Extracted
Dictionary يحتوي على المصادر التي تمت اضافتها الى Dynamics.dic اثناء عملية التطوير

ولكي نفهم هذه النقطة لنأخذ القاموس POE2277.DIC هذا القاموس كيف يتم تكوينه ؟ قد قام المطور اولا بأخذ نسخة من Dynamics.dic ثم بدأ بالعمل عليها واضاف مصادر جديدة اليه حقول وجداول ونوافذ مثلا و كذلك استخدم قسم من المصادر الموجودة في هذا القاموس الان بعد ما اكمل العمل وقام بعمليات Test ضمن Test Mode وضمن Multidictionary Mode واصبح المنتج جاهز الخطوة الاخيرة هي تكوين chunk file عن طريق استخدام اداة dexterity utility ما الذي يحص اثناء تكوين Chunk file سوف dexterity utilityبفحص Dynamics.dic بحثا عن المصادر الجديدة التي قام المطور باضافتها اليه وتقوم بعزل هذه المصادر الجديدة بعملية يطلق عليها اسم Extract وتقوم بوضع هذه المصادر في قاموس جديد يسمى Extracted Dictionary والذي يقوم المطور في هذه الاثناء باعطائه اسم خاص مثل POE2277 وبهذا اصبح POE2277.DIC يحتوي فقط على المصادر الجديدة ثم بعد ذلك يتحول الى صيغة مضغوطة اسمها Chunk File لذا عندما احاول استخدام POE2277.DIC للقيام بعملية تطوير سوف اجد فقط المصادر الجديدة ولكن لن اجد مصادر Dynamics.dic التي قد يكون المطور السابق قد استعان بها والان بعد ما وضحت الصورة اي لا يمكن استخدام Extracted Dictionary للقيام بعملية تطوير جديدة فما هو الحل ؟
__________________
GP Techno-Functional Consultant

آخر تعديل بواسطة humam ، 05-Dec-2007 الساعة 10:57 AM.
humam غير متواجد حالياً   رد مع اقتباس
قديم 05-Dec-2011, 10:05 AM   #10
humam
مشرف منتدى المطورين
افتراضي

هل اقوم بأستخدام Modifier او لا هنا الجواب يتعمد على ما تريد القيام به لذا سوف توجد احتمالات:
اولا. التعديل الذي تريد القيام به لايتضمن اضافة حقول او نوافذ جديدة الى المنتج الاضافي في هذه الحالة يجب ان تبقى في بيئة الدكسترتي ولا تحاول استخدام Modifier حيث ان الدكسترتي توفرمجموعة قيمة من Triggers التي يمكن استخدامها للوصول الى Dictionaries الاخرى من ضمن Dictionary الذي تعمل على تطويره حيث مثلا يمكن تسجيل Trigger على الزر Save الخاص بأحدى نوافذ المنتج Purchase Order Enhancementsلكي تقوم بحفظ المعلومات من هذه النافذة وربطها مع معلومات من المنتج الذي تطوره وخزن النتائج في جدول خاص وبتالي واثناء العمل سوف يقوم Dictionary الذي طورته انت بالوصول الى POE2277.DIC واخذ المعلومات من نافذته عند قيام المستخدم بضغط الزر Save .
ثانيا. اذا كانت التعديلات التي تريد القيام بها تتضمن اضافة حقول جديدة الى النافذة هنا ايضا يمكن الالتفاف حول هذه المشكلة عن طريق استخدام Extensions حيث توجد في الجريت بلينز قائمة تخص Add on تمكنك من القيام بالتالي تصميم الحقول المطلوب اضافتها في نافذة واحدة ضمن Dictionary الذي تعمل عليه ثم تدرج هذه النافذة ضمن قائمة Add on وبتالي عندما يريد المستخدم ادخال القيم ضمن الحقول الاضافية لاحدى نوافذ المنتج Purchase Order Enhancements فكل ما عليه فعله هو الذهاب الى قائمة Add on واخيار النافذة المطلوبة ويمكن مساعدته اكثر عن طريق توفير shortcut حيث يكفي ان يضغط ِAlt + 1 مثلا لفتح النافذة وادراج قيم الحقول الاضافية.
ثالثا. الاحتمال الاخير وهو اذا ارد الزبون ان يضع الحقول الاضافية ضمن النافذة الاصلية ولم يقتنع بحل النافذة الاضافية في هذه الحالة فقط عليك ان تستخدم Modifier لاضافة الحقول المطلوبة ولكن يفضل ان تذكر ضمن وثائق المشروع انك قمت بتنيه الزبون الى المشاكل التي قد تتسبب بهذا هذه الخطوة مستقبليا عند القيام بعملية تحديث المنتج وهذه الخطوة ضرورية للمطور لحماية نفسه من المشاكل التي قد تقع مستقبلا.
__________________
GP Techno-Functional Consultant
humam غير متواجد حالياً   رد مع اقتباس
إضافة رد


يتصفح الموضوع حالياً : 1 (0 عضو و 1 ضيف)
 
أدوات الموضوع
انواع عرض الموضوع

ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا يمكنك اضافة مرفقات
لا يمكنك تعديل مشاركاتك

BB code متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
تعلم لغة الدكسترتي humam مواضيع المطورين الأخرى 59 20-May-2013 12:00 PM
ما هو افضل برنامج لعمل التقارير abuizhery منتدى جريت بلينز العام 12 22-Dec-2012 11:27 PM
ما هي افضل الطرق للبدايه في تعلم Ms Gp waleedmohsen تركيب وإعدادات النظام وما يتعلق به توجيهات Installation & Configuration 1 04-Sep-2012 09:58 PM
تصميم النماذج والنوافذ في الدكسترتي humam مواضيع المطورين الأخرى 25 01-Jun-2012 08:40 AM
مستقبل لغة الدكسترتي في مواجهة ثورة الدوت نت hunter0003 مواضيع المطورين الأخرى 8 23-Oct-2011 09:00 AM


جميع الأوقات بتوقيت GMT +3. الساعة الآن 06:04 PM.


Powered by vBulletin® Version 3.8.3

الموقع والمنتدى من تطوير » شركة المنذر للاستضافة والتصميم

Copyright © 2000-2010 Jelsoft Enterprises Limited.
الموقع لا يمثل أي جهة رسمية بل هو جهد شخصي يرمي الى تجميع القدرات في برنامج جريت بلينز