|
|
مواضيع المطورين الأخرى مواضيع المطورين التي لا تنتمي الى أي من التصنيفات السابقة مثل لغة الديكستريتي (Dexterity) والأدوات التطويرية الأخرى (eConnect , Integration Maneger ,VS2005 for GP...etc.) |
| أدوات الموضوع | انواع عرض الموضوع |
17-Apr-2012, 12:26 PM | #1 |
مشرف منتدى المطورين | اكواد اضافة القوائم لبرنامج الجريت بلينز اكواد اضافة القوائم للجريت بلينز: اولا يجب ان تقوم بتصميم واضافة Command Form ويمكنك مراجعة موضوع اضافة القوائم للجريت بلينز لمعرفة الخطوات الضرورية للقيام بذلك. ثانيا. سوف تحتاج لاضافة كود لفتح هذا النموذج وكود اخرى لاغلاقه اولا ضمن قسم ا Script اضف شفرة جديدة اعطها الاسم OpenCommandForm واكتب الكود التالي فيها: كود: open form Command_Name; كود: close form Command_Name; استبدل Command_Name باسم النموذج الخاص بك الذي سوف تكونه بالخطوة الاولى. لذلك سوف تحتاج لاضافة او تسجيل Triggers للقيام بعملية تنفيذ الشفرتين السابقتين انقر على قسم Script ضمن برنامج الدكسترتي واضف شفرة جديدة اعطها الاسم التالي registerNavigationMenuTriggers وضمن هذه الشفرة اكتب الكود التالي: كود: local integer l_result; {Register Menu Triggers} {trigger to open command form} l_result = Trigger_RegisterProcedure(script OpenCommandForms, TRIGGER_AFTER_ORIGINAL, script OpenCommandForm); if l_result <> SY_NOERR then warning "Command Procedure trigger registration failed."; end if; {trigger to close command form} l_result = Trigger_RegisterProcedure(script CloseCommandForms, TRIGGER_AFTER_ORIGINAL, script CloseCommandForm); if l_result <> SY_NOERR then warning "Close Command Procedure trigger registration failed."; end if; كود: call registerNavigationMenuTriggers; كود: in integer LoadMode; optional in boolean ShowProgress; local CmdSequence Seq; local integer Status; local boolean AddMenuItems; AddMenuItems = true;{at begining we assume this menu dose not exsits so we try to add to table SY07110} if LoadMode = MENULOAD_TOTABLE then {Find out whether the menu items exist in the Menu Master table.} if MenusExistForProduct(IS_FTLA_ID) of form syMenuObj = true then {Do not need to add the menu items} AddMenuItems = false; end if; end if; if AddMenuItems = true then {-- Add the Registration menu to the tools>>setup submenu--} {Add a separator, which is a built-in command} Seq = 0; Status = AddCommandToMenu(DYNAMICS, resourceid(form Command_System), resourceid(command CL_Cards of form Command_System), Seq, CMD_BUILTINCMD_DICTID, CMD_BUILTINCMD_FORMID, resourceid(command cmdSeparator), true, LoadMode); if Status <> OKAY then error "Could not add separator item."; end if; {Add Cards-->Funds Transfer Letter} Seq = 0; Status = AddCommandToMenu(DYNAMICS, resourceid(form Command_System), resourceid(command CL_Cards of form Command_System), Seq, IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command CL_FTLA_Cards of form Command_ISYS_FTLA), true, LoadMode); if Status <> OKAY then error "Could not add command IG_Lead_Maintenance."; end if; {Add Cards -> Funds Transfer Letter --> Credit} Seq = FindCommandInMenu(DYNAMICS, resourceid(form Command_System), resourceid(command CL_Cards of form Command_System), IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command CL_FTLA_Cards of form Command_ISYS_FTLA), LoadMode, ""); if Seq <> 0 then Seq = Seq + 1; end if; Status = AddCommandToMenu(IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command CL_FTLA_Cards of form Command_ISYS_FTLA), Seq, IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command cmdCardsCredit of form Command_ISYS_FTLA), true, LoadMode); if Status <> OKAY then error "Could not add command ListObj_Leads."; end if; {Add Cards -> Funds Transfer Letter --> Credit} Seq = FindCommandInMenu(DYNAMICS, resourceid(form Command_System), resourceid(command CL_Cards of form Command_System), IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command CL_FTLA_Cards of form Command_ISYS_FTLA), LoadMode, ""); if Seq <> 0 then Seq = Seq + 1; end if; Status = AddCommandToMenu(IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command CL_FTLA_Cards of form Command_ISYS_FTLA), Seq, IS_FTLA_ID, resourceid(form Command_ISYS_FTLA), resourceid(command cmdCardsDebit of form Command_ISYS_FTLA), true, LoadMode); if Status <> OKAY then error "Could not add command ListObj_Leads."; end if; end if; هذه الشفرة تستخدم لاضافة قائمة الى القائمة Cards اذا اردت اضافة قائمة للقسم Sales ضمن Card استخدم Command_Sales راجع الموضوع السابق لمزيد من التفاصيل. استبدل Command_ISYS_FTLA باسم الامر الذي يمثل اسم القائمة الفرعية الخاصة بك و استبدل Command_ISYS_FTLA باسم النموذج الذي كونته بالخطوة الاولى واستبدل cmdCardsCredit و cmdCardsDebit باسماء الاوامر التي سوف تقوم باضافتها الى القائمة الفرعية والتي قمت بتكوينها في الخطوة الاولى اخيرا استبدل IS_FTLA_ID بالمعرف الذي سوف تستخدمه Product Identity واذا لم تكن عندك معلومات حول Product Identity راجع موضوع ايها الافضل استخدام الدكسترتي او VBA Modifier حيث تطرقت فيه بشكل مفصل لهذا المعرف والذي هوه ببساطة عبارة عن رقم صحيح سوف تقوم باضافته اثناء تكوين Chunk file وهي المرحلة الاخيرة لنشر مشروع مصمم بواسطة الدكسترتي وهذا الرقم سوف يستخدم لتمييز مشروعك عن باقي المكونات الاخرى ويفضل استخدام ارقام مثل 9087 لكي لا تتعارض مع مكونات الجريت بلينز الاصلية. __________________ GP Techno-Functional Consultant |
يتصفح الموضوع حالياً : 1 (0 عضو و 1 ضيف) | |
|
|
المواضيع المتشابهه | ||||
الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
دورات تدريبية لبرنامج الجريت بلينز بالسعودية | joomrd | منتدى جريت بلينز العام | 2 | 16-Oct-2014 10:58 PM |
قيَّم استخدامك لبرنامج جريت بلينز | Monzer Osama | منتدى جريت بلينز العام | 0 | 11-Dec-2013 04:12 PM |
كيفية تصميم القوائم لبرنامج الجريت بلينز | humam | مواضيع المطورين الأخرى | 25 | 07-Jul-2012 02:24 AM |
ما هو الجريت بلينز | وافي السليمي | ملتقى تعارف مطوري ومستخدمي برنامج جريت بلينز | 3 | 30-May-2012 05:56 PM |
اكواد مهمة وجديدة لبرامج بالفيجوال بيسك | hackermaxy | منتدى أكواد فيجوال بيسك VBA | 5 | 29-Aug-2011 07:38 AM |