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

(منتدى البرامج) الموضوع:تصميم وبرمجة تطبيقات الهواتف الذكية مع أطياف بواسطة: (ديزاينر 20) :: (منتدى تصميم صفحات الويب) الموضوع:تصميم وبرمجة تطبيقات الهواتف الذكية مع أطياف بواسطة: (ديزاينر 20) :: (قسم الاعلانات) الموضوع:دورة الإدارة الإلكترونية و مهارات التعامل مع نظم دعم القرار والنظم الخبيرة تعقد في مصر بواسطة: (مي عمر) :: (قسم الاعلانات) الموضوع:عرض خاص خلال الاسبوع علي جهاز حضور والانصراف IDM-950 بواسطة: (eng sara) :: (قسم الاعلانات) الموضوع:دورة تحليل الموازنة العامة تعقد في مختلف دول العالم على مدار العام بواسطة: (المجد للتدريب) :: (قسم الاعلانات) الموضوع:دورات في شؤون الموظفين تعق بواسطة: (المجد للتدريب) :: (قسم الاعلانات) الموضوع:الأنظمة الأمنية المتكاملة بواسطة: (ضيااء) :: (منتدى الأكسس) الموضوع:عدم اخراج كميات بالفاتورة اكبر من الموجودة في طلب التوريد بواسطة: (almosafer almasry) :: (منتدى الأكسس) الموضوع:طلب اتصال الاسكانر مع الفورم اكسيس وعرض الصور بواسطة: (P.C.C) :: (قسم الاعلانات) الموضوع:أفضل شركة عفش بالمدينة المنورة 0554901277 شركات نقل الاثاث اسماء المدينة بواسطة: (اسماء المدينة) :: (منتدى الأكسس) الموضوع:كيف اربط صنف مخزن صيدلية على وحدات مختلفة بواسطة: (iron2010) :: (منتدى الأكسس) الموضوع:تطبيق الشرط فى جملة If اكثر من مرة بواسطة: (amr ashraf) :: (منتدى تصميم صفحات الويب) الموضوع:تصميم وبرمجة تطبيقات الهواتف الذكية مع أطياف بواسطة: (ديزاينر 20) :: (منتدى الأكسس) الموضوع:اضافة اكثر من مستخدم في وقت واحد عن طريق بواسطة: (startnet) :: (منتدى التصميم والجرافيكس) الموضوع:تصميم تطبيقات الجوال مع أطياف بواسطة: (ديزاينر 20) :: (منتدى الأكسس) الموضوع:مطلوب المساعدة من ذوي الخبرة في نموذج ادخال بيانات بواسطة: (startnet) :: (قسم الاعلانات) الموضوع:بمناسبة أعياد الربيع عرض خاص لجهاز حضور والانصراف IDM-950 بواسطة: (eng sara) :: (منتدى ADO.NET العام) الموضوع:شقق مفروشة للايجار بأفضل المستويات والاسعار بالقاهرة الصور 00201227389733 بواسطة: (دنيامحمد) :: (قسم الاعلانات) الموضوع:شقق مفروشة للايجار بأفضل المستويات والاسعار بالقاهرة الصور 00201227389733 بواسطة: (دنيامحمد) :: (منتدى الأكسس) الموضوع:احتاج مساعدتكم يا اهل الخبرة بواسطة: (ابوريداء)


راديو القرآن

المواضيع المثبته: (منتدى Microsoft SQL Server) الموضوع:SQL SERVER vs ORACLE بواسطة: (m.atassi) :: (قسم الاعلانات) الموضوع:الرجاء عدم تكرار الاعلانات حتي يستفيد الجميع من المنتدي بواسطة: (startnet) :: (منتدى مبرمجي ASP) الموضوع:مواقع يعطي سكربتات لكل لغات البرمجة بواسطة: (ahmadtec) :: (منتدى الكتب و المقالات) الموضوع:الجديد في Office Access 2007 بواسطة: (عبد الله الثبيتي) :: (منتدى Microsoft Visual Basic) الموضوع:دروس صوت وصورة للربط بين اسكيوال سيرفر والفجوال بيسيك بواسطة: (wael abed) :: (منتدى مبرمجي ASP.NET) الموضوع:كتاب تصميم موقع اخباري بواسطة: (م.محمد الساعدي) :: (Oracle قسم قواعد البيانات أوراكل) الموضوع:ما هي أوراكل وماتعرف عنها بواسطة: (وليد القدسي) :: (Oracle قسم قواعد البيانات أوراكل) الموضوع:ADF بواسطة: (وليد القدسي) :: (قسم التعاميم والشكاوي) الموضوع:الرتب في المنتدى بواسطة: (عبدالله جابر شقليه) :: (منتدى الأكسس) الموضوع:الوصل الي المساعده بشكل سريع وتحميل المرفقات الى المنتدي بواسطة: (startnet) :: (قسم المواضيع المميزة) الموضوع:أرشيف للمشاركات المتميزة بواسطة: (أبو أفنان) :: (منتدى الوورد والباور بوينت) الموضوع:مكتبة الباور بوينت بواسطة: (ramies) :: (قسم الدروس و الدورات) الموضوع:دروس بالفيديو في VB.NET 2005 بواسطة: (HnHn) :: (منتدى مبرمجي ASP) الموضوع:برنامج اختبارات للجامعات بواسطة: (عبدالله جابر شقليه) :: (منتدى Microsoft Excel) الموضوع:شرح دوال الاكسيل كلِ على حده بواسطة: (ramies) :: (منتدى برمجة التقارير) الموضوع:شرح طريقة اضافة تقرير Crystal Reports في الـ ASP.NET بواسطة: (FunctionSys) :: (منتدى C و C) الموضوع:برنامج من سيربح المليون بواسطة: (مصطفي البارودي) :: (منتدى أنظمة الشبكات وأمنها) الموضوع:طريقة عمل شبكة لاسلكية بين جهازين او أكثر ..اكس بي.. لمشاركة الملفات والإنترنت بواسطة: (مرحبا الساع) :: (منتدى Microsoft SQL Server) الموضوع:دورة Transaction SQL بواسطة: (Server_Programmer) :: (منتدى ADO.NET العام) الموضوع:انشاء قواعد البيانات برمجيا جداول - علاقات -قيود بواسطة: (شهرزاد)

عدد الصفحات : 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ك ) عدد مرات التنزيل: 4678


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالأحد,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ك ) عدد مرات التنزيل: 2205


--------------------
للأعلىأبلغ المشرف عن هذه المشاركة
لتعقيب على هذه المشاركة مباشرة
مشاركةالثلاثاء,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   > » إضافة رد جديد إضافة موضوع جديد



 
الوقت الأن:اليوم,04:17 مساءً بتوقيت القدس المحتلة

Powered By arabmoheet v3.1

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