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

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

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

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 17-Apr-2012, 12:26 PM   #1
humam
مشرف منتدى المطورين
افتراضي اكواد اضافة القوائم لبرنامج الجريت بلينز

اكواد اضافة القوائم للجريت بلينز:

اولا يجب ان تقوم بتصميم واضافة Command Form ويمكنك مراجعة موضوع اضافة القوائم للجريت بلينز لمعرفة الخطوات الضرورية للقيام بذلك.
ثانيا. سوف تحتاج لاضافة كود لفتح هذا النموذج وكود اخرى لاغلاقه اولا ضمن قسم ا
Script اضف شفرة جديدة اعطها الاسم OpenCommandForm واكتب الكود التالي فيها:

كود:
open form Command_Name;
واضف شفرة ثانية اعطها الاسم CloseCommandForm واضف الكود التالي:

كود:
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;
الان كون شفرة جديدة ضمن قسم Script واعطها الاسم Startup واضف الشفرة التالية فيها:

كود:
call registerNavigationMenuTriggers;
الان كون شفر ة جديدة ضمن قسم Script اعطها الاسم Create_Menu_Cards في هذه الشفرة سوف نضيف الكود اللازم لتكوين واضافة قائمة فرعية جديدة وامر Item جديد وهنا يجب ان تستخدم ال Commands التي قمت بتكوينها بالخطوة الاولى :
كود:
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
humam غير متواجد حالياً   رد مع اقتباس
إضافة رد


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

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

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

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

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
دورات تدريبية لبرنامج الجريت بلينز بالسعودية 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


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


Powered by vBulletin® Version 3.8.3

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

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