قواعد المشاركة في المنتدى

(منتدى الأكسس) الموضوع:تمكين وعدم تمكين مربع نص خاص بالرقم بواسطة: (أبو بيبو) :: (منتدى مبرمجي Microsoft Visual C#.NET) الموضوع:تعلم كيفية فك ضغط ملف WinRAR بواسطة: (Abu Ehab) :: (منتدى الأكسس) الموضوع:بخصوص الشجرة TreeView بواسطة: (د.كاف يار) :: (منتدى ADO.NET العام) الموضوع:خدمات مجانية -تأجيرشقق و فيلات مفروشة وايجار سيارات في مصر 00201126266000 بواسطة: (جوجو عمل) :: (قسم الاعلانات) الموضوع:ساهم في مشروع تشجيع القراءة الان بواسطة: (korossama) :: (منتدى الأكسس) الموضوع:برنامج نادي صحي كمال اجسام بواسطة: (startnet) :: (قسم الاعلانات) الموضوع:سيارات ديهاتسو مستعملة للبيع بحالة الفابريكة بواسطة: (ديزاينر ديزاينر) :: (قسم الاعلانات) الموضوع:سيارات جاجور مستعملة للبيع بواسطة: (ديزاينر ديزاينر) :: (قسم الاعلانات) الموضوع:سيارات بنتلي مستعملة للبيع بواسطة: (ديزاينر ديزاينر) :: (قسم الاعلانات) الموضوع:بنامكس لأعمال الرخام الصناعي والمغاسل بواسطة: (حسن ابراهيم) :: (قسم الإنترنت) الموضوع:تصميم وبرمجة تطبيقات الهواتف الذكية بواسطة: (موشن جرافيك) :: (قسم الاعلانات) الموضوع:نصائح عامة بواسطة: (كوين) :: (منتدى الأكسس) الموضوع:الباركود بواسطة: (startnet) :: (منتدى ال Cisco) الموضوع:ccna 1 final examen بواسطة: (even2017) :: (منتدى الأكسس) الموضوع:طلب كود تشغيل عدة استعلامات بواسطة: (د.كاف يار) :: (قسم الاعلانات) الموضوع:رحلتي لزراعة الشعر في تركيا بواسطة: (فادي لبناني) :: (قسم الاعلانات) الموضوع:شقق مفروشة للايجار بأفضل المستويات والاسعار بالقاهرة الصور 00201227389733 بواسطة: (دنيامحمد) :: (قسم الاعلانات) الموضوع:طريقة تنظيف الموكيت بواسطة: (سجيات) :: (منتدى مبرمجي Microsoft Visual C#.NET) الموضوع:Abu Ehab Pie Chart Control بواسطة: (Abu Ehab) :: (قسم الخدمات) الموضوع:تصميم وبرمجة تطبيقات الهواتف الذكية بواسطة: (موشن جرافيك)


راديو القرآن

المواضيع المثبته: (منتدى التصميم والجرافيكس) الموضوع:دورة تصميم مواقع بواسطة: (aram) :: (منتدى Microsoft Excel) الموضوع:شرح دوال الاكسيل كلِ على حده بواسطة: (ramies) :: (منتدى Microsoft Excel) الموضوع:دروس إكسل و شرح الدوال و تقنيات متقدمة بواسطة: (صهيب جاويش) :: (منتدى برمجة الجرافكس) الموضوع:الجزء الاول من دروس تعلم GDI بواسطة: (alaa gomaa) :: (منتدى تصميم صفحات الويب) الموضوع:أرشيف المواضيع المميزة بواسطة: (alanees) :: (منتدى الكتب الالكترونية) الموضوع:مجموعة كبيرة من السرفرات بواسطة: (يوسف) :: (قسم الدعم الفني) الموضوع:هل تريد التحكم بجهازك كأنك محترف بواسطة: (ياسر جمال) :: (قسم الدروس و الدورات) الموضوع:دروس فيديو للمهندس عدي لتعليم فيجوال بيسك دوت نت بواسطة: (المهندس عدي) :: (منتدى ال SQL العام) الموضوع:كتاب يشرح اساسيات SQL بواسطة: (محمد جمعة) :: (منتدى مبرمجي ASP.NET) الموضوع:كيفية قرائة الصحف الإلكترونية والكتب والمجلات عبر الانترنت بواسطة: (عبدالله جابر شقليه) :: (منتدى ADO.NET العام) الموضوع:ربط قاعدة البيانات والفرق بين الوضع المتصل والوضع المنفصل وشرحها بالتفصيل بواسطة: (علاء عبدالخالق) :: (منتدى مبرمجي Microsoft Visual C#.NET) الموضوع:مكتبة الدوت نيت بواسطة: (fmo_82) :: (قسم البرامج الجاهزة و الاكواد) الموضوع:مشروع طبيب الاسنان مع السورس كود بواسطة: (ITPROGRAMMER) :: (منتدى برمجة الجرافكس) الموضوع:كلمه بخصوص قسم الجرافيك الجديد بواسطة: (alaa gomaa) :: (منتدى الدعم الفني للماسنجر المحيط العربي) الموضوع:مشاكل ماسنجر المحيط العربي بواسطة: (jbsa) :: (منتدى برمجة الألعاب) الموضوع:مجموعة من مشاريع الالعاب بواسطة: (مصطفي البارودي) :: (منتدى أنظمة الشبكات وأمنها) الموضوع:أنواع الشبكات الحاسوبية بواسطة: (مرحبا الساع) :: (منتدى مبرمجي ASP) الموضوع:Compact An Access Database File From ASP بواسطة: (عبدالله جابر شقليه) :: (منتدى Microsoft Visual Basic) الموضوع:شرح ODBC بواسطة: (VB_Manager) :: (منتدى التصميم والجرافيكس) الموضوع:الكتابة باللغة العربية في برنامج فلاش بواسطة: (مبرمجة فلسطينية)

عدد الصفحات : 2  1  2   > » إضافة رد إضافة موضوع جديد

> تفقيط الأرقام للغة العربية تحت بيئة oracle pl sql
Bookmark and Share
تقييم الموضوع Label معدل التقيم:0
مشاركةالسبت,02/فر/1426 هـ,04:54 مساءً
المشاركة #1

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 10
سجل في:السبت,02/فر/1426 هـ,12:57 مساءً
الدولة:الكويت
رقم العضوية: 2017



من عنده تفقيط أرقام عربي oracle pl/sql
بس مجرب وخالي من الشواءب والكولسترول



وفوق كل ذي علم علــــــــــــــــــــــــــيم

وجزاكم الله عنا خير الجزاء

عدنان
---------------------
جيتكم أبـحث عن التفقيط
لقـيت أحـــلى مـن التفقيط
حب العلم من دون تـفريط
والمساعدة من غير تنقيط


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,03/فر/1426 هـ,08:40 صباحاً
المشاركة #2

مشرف قسم الأوراكل سابقاً
الرتبة في المنتدى:ملازم

أيقونة المجموعة

المجموعة: المشرفين القدامى
المشاركات: 99
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 40



السلام عليكم
ممكن تسأل بلغة واضحة حتى أستطيع أن أفهم .


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,03/فر/1426 هـ,08:56 صباحاً
المشاركة #3

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 10
سجل في:السبت,02/فر/1426 هـ,12:57 مساءً
الدولة:الكويت
رقم العضوية: 2017



وعليكم السلام ورحمة الله وبركاته ,

التفقيط هو تحويل الأرقام إلى حروف وكلمات وتستخدم غالبا في الشيكات
مع مراعاة اللغة العربية والقواعد وهي مهمة ليست بالسهلة , وقد وجدت عدة كودات لهذا
الغرض في منتداكم الكريم والذي كان سببا في دخولي في منتداكم

وبحثي أنا هو هذا التفقيط بلغة Oracle PL/SQL
وقد جربت بعضاً منها ولكن وجدتها مشوبة ببعض المشاكل ومحدودة

آمل أن تكون لغتي أوضح هذه المرة ...

والسلام عليكم ورحمة الله وبركاته

عدنان
---------------------
جيتكم أبـحث عن التفقيط
لقـيت أحـــلى مـن التفقيط
حب العلم من دون تـفريط
والمساعدة من غير تنقيط


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,03/فر/1426 هـ,12:14 مساءً
المشاركة #4

مشرف قسم الأوراكل سابقاً
الرتبة في المنتدى:ملازم

أيقونة المجموعة

المجموعة: المشرفين القدامى
المشاركات: 99
سجل في:الخميس,09/شعبان/1425 هـ,08:02 صباحاً
الدولة:فلسطين
رقم العضوية: 40



السلام عليكم



create OR REPLACE FUNCTION							  formatnumber (no number,type number,des varchar2) RETURN varchar2 IS
t										varchar2(3);
desc1						varchar2(200);
desc2						varchar2(200);
desc3						varchar2(200);
desc4						varchar2(200);
p										varchar2(10);
a										varchar2(2);
n						number;
BEGIN
  desc4:=des;
  t:=lpad(to_char(no),3,'0');
  a:=substr(t,1,1);
  select decode(a,'0',null,
										'1','مائة',
										'2','مائتان ',
										'3','ثلاثة مائة',
										'4','اربعمائة',
										'5','خمسة مائة',
										'6','ستة مائة',
										'7','سبعة مائة',
										'8','ثمانيمائة',
										'9','تسعة مائة')
					into desc1
						from dual;
  a:=substr(t,2,2);
  if a<> '00' then
			a:=substr(t,2,1);
			select decode(a,'0',null,
										'1','عشرة',
										'2','عشرون',
										'3','ثلاثون',
										'4','اربعون',
										'5','خمسون',
										'6','ستون',
										'7','سبعون',
										'8','ثمانون',
										'9','تسعون')
					into desc2
						from dual;
				a:=substr(t,3,1);
			select decode(a,'0',null,
										'1','واحد',
										'2','اثنين',
										'3','ثلاثة',
										'4','اربعة',
										'5','خمسة',
										'6','ستة',
										'7','سبعة',
										'8','ثمانية',
										'9','تسعة')
					into desc3
						from dual;
				if substr(t,2,1) = '1' and substr(t,3,1)= '1' then
					desc3 := 'إحدى';
				elsif substr(t,2,1) = '1' and substr(t,3,1) = '2' then
					desc3 := 'اثنا';
				end if;
  end if;
  -----------------------------------------------------------------------------
  if desc4 is not null and desc1 is not null then
			desc4 := desc4||' و'||desc1;
  elsif desc4 is null and desc1 is not null then
			desc4 := desc1;
  end if;
  if not (t in('001','002') and type in (1,2,3)) then
			if desc4 is not null and desc3 is not null then
				desc4 := desc4||' و'||desc3;
				elsif desc4 is null and desc3 is not null then
						desc4 := desc3;
			end if;
  end if;
  if desc4 is not null and desc2 is not null then
			if substr(t,2,1) <> '1' then
				desc4 := desc4||' و'||desc2;
					elsif  substr(t,2,1) ='1' and substr(t,3,1) ='0'  then
						desc4 := desc4||' و'||desc2;
			else
				desc4 := desc4||desc2;
			end if;
			elsif desc4 is null and desc2 is not null then
			desc4 := desc2;
			end if;

			n :=to_number(substr(t,1,3));
			if type = 1 then
				if n=1 or n>=11 then
					p := 'بليون';
				elsif n=2 then
					p := 'بليونان';
				else
					p := 'بلايين';
				end if;
				elsif type = 2 then
					if n = 1 or n >= 11 then
					p := 'مليون';
				elsif n = 2 then
					p := 'مليونان';
				else
					p := 'ملايين';
				end if;
				elsif type = 3 then
				if n=1 or n>=11 then
					p := 'ألف';
				elsif n=2 then
					p := 'ألفان';
				else
					p := 'آلاف';
				end if;
  end if;
  desc4 := desc4 ||' '||p;
  return(desc4);

END;

create the above function first .



create OR REPLACE FUNCTION no2txt(x number) 
RETURN varchar2 IS
dsc							 varchar2(200);
d										varchar2(100);
a						number;
no						number;
w						number;
ln						number;
BEGIN
 d  := to_char(x);
 ln := length(d);
 w  := instr(d,'.',1);
 if w <> 0 then
  a := w-1;
 elsif w = 0 then
  a := ln;
 end if;
 if a <= 12 then
  no := trunc(X * 0.000000001);
  if no >= 1 then
			dsc := formatnumber(no,1,dsc);
  end if;

  no := trunc((X * 0.000000001 - trunc(X * 0.000000001)) * 1000) ;
  if no >= 1 then
			dsc := formatnumber(no,2,dsc);
  end if;

  no := trunc((X * 0.000001 - trunc(X * 0.000001)) * 1000) ;
  if no >= 1 then
			dsc := formatnumber(no,3,dsc);
  end if;

  no := trunc((X * 0.001 - trunc(X * 0.001)) * 1000) ;
  if no >= 1 then
			dsc := formatnumber(no,4,dsc);
  end if;
  if dsc is not null then
			dsc := dsc||' دينار';
  end if;

  no := trunc((X - trunc(X)) *100);
  if no > 0 then
			dsc := formatnumber(no,4,dsc)||' قرش';
  end if;
  return(dsc||' فقط لا غير.');
 end if;

END;

create the above function
ثم جرب

select (555) from dual


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالاثنين,04/فر/1426 هـ,09:38 صباحاً
المشاركة #5

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 10
سجل في:السبت,02/فر/1426 هـ,12:57 مساءً
الدولة:الكويت
رقم العضوية: 2017



السلام عليكم ورحمة الله وبركاته

أشكرك جزيل الشكر على هذا الكود والمساعدة

حقيقة جربت أكثر من كود لهذا الغرض
وبصراحة هذا من أنظف وأبسط الأكواد التي رأيتها
ولكن عندي ملاحظات بسيطة جدا

عندما تجرب رقما أكبر من 1,000,000 مليون لا يعمل ويعطي خطأ
وذلك سببه تعريف صغير قليلا
p varchar2(10);
فيجب أن تكبر الطول قليلا حتى يسع مليونان وهكذا
وسأستمر في اختبارها ...
بس بصراحة تحية لك وللإخوان جميعا

ولقد وجدت أنا أيضا كود من أحد الزملاء وعدلت فيه قليلا واعتمدت عليه في عملي
ألقي نظري يمكن يعجبك .. واعطني feedback

للإستخدام :
SELECT only_ar.f_only(555) FROM dual


ملاحظة : افتح الملف المرفق برنامج مثل write
حتى يتسنى قراءة العربي بسهولة

والسلام ختام
عدنان

-------------------
وما نيل المطالب بالتنمي ولكن تأخذ الدنيا غلابا



الملفات المرفقة
 ONLY_AR.html ( 6.19ك ) عدد مرات التنزيل: 4650


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,21/ربيع الأول/1428 هـ,01:00 مساءً
المشاركة #6

الرتبة في المنتدى:ملازم

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 143
سجل في:الجمعة,15/محرم/1428 هـ,07:55 صباحاً
الدولة:المغرب
رقم العضوية: 19137



ألف ألف ألف
شكر


--------------------
لا اله الا الله محمد رسول الله

للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالخميس,01/جمادى الأولى/1428 هـ,11:36 صباحاً
المشاركة #7

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 7
سجل في:الخميس,01/جمادى الأولى/1428 هـ,11:21 صباحاً
الدولة:مصر
رقم العضوية: 25964




السلام عليكم ورحمة الله وبركاته
تلك هى اول مشاركة لى فى هذا المنتدي المحترم ؛ وبما انها اول مشاركة لى فقد ارفقت لكم هدية بها كل الارقام وتحويلها الى اللغة العربية فتقبلوها منى
اخوكم
ميجا


الملفات المرفقة
 function التي أعطيها رقم وتعيده كتابتاُ.rar ( 1.48ك ) عدد مرات التنزيل: 2189


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,03/رجب/1428 هـ,01:07 صباحاً
المشاركة #8

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 21
سجل في:الخميس,17/ذو القعدة/1427 هـ,02:47 صباحاً
الدولة:السودان
رقم العضوية: 16360



أشكرك جزيل الشكر على هذا الكود



--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأربعاء,09/شعبان/1428 هـ,08:50 مساءً
المشاركة #9

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 7
سجل في:الثلاثاء,08/شعبان/1428 هـ,02:24 مساءً
الدولة:مصر
رقم العضوية: 32800



ماشاء الله تبارك الله .. بصراحة الله يجزي كل واحد من المنتدى خير عن مشاركته
الموضوع مهم ومش سهل ربنا يبارك فيكم جميعا


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالخميس,16/رمضان/1428 هـ,05:33 مساءً
المشاركة #10

الرتبة في المنتدى:رقيب

أيقونة المجموعة

المجموعة: الأعضاء
المشاركات: 21
سجل في:الخميس,23/فر/1427 هـ,02:38 مساءً
الدولة:مصر
رقم العضوية: 9299



مشكوووووووووووووووور


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة

    

عدد المتصفحين لهذا المنتدى «1»: (الضيوف «1» - المتخفون «0»)
الأعضاء «0»: .

عدد الصفحات : 2  1  2   > » إضافة رد جديد إضافة موضوع جديد



 
الوقت الأن:اليوم,11:15 صباحاً بتوقيت القدس المحتلة

Powered By arabmoheet v3.1

منتديات المحيط العربي  -  راسلنا  -   أعلى
X   رسالة المنتدى
(سوف يتم اغلاق هذه النافذة بعد 2 ثانية)
X   رسالة المنتدى
(سوف يتم اغلاق هذه النافذة بعد 2 ثانية)