الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Export To Excel

Featured Replies

بتاريخ:

السلام عليكم ورحمه الله وبركاته
انا جايب بروسيدر وحبيت اشاركه معاكم ان شاء الله
البروسيدر ده بيكتب لاكسيل
كل ما عليك اما تنسخه وتطبعه في بوتن
او تعمله كوحده برمجه زي ما انا عامله كده
اي استفسار ممكن تساله وان شاء الله حجاوبه الربوسيدر ده بيكتب ااتنين كولم بس ممكن تغير الكرسر لاكتر من كده وطبعا لازم تغير في السلز بتاعت الاكسل علشان يلائم عدد الاعمده بس المهم تفهم الفكره
هيه بسيطه قوي ان شاء الله

PROCEDURE open_exce IS
  
idd varchar2(30);
name varchar2(30);
 	CURSOR c_cur IS
   SELECT employees.last_name,employees.hire_date
	FROM employees; 
MyApplication  OLE2.OBJ_TYPE;
args  OLE2.LIST_TYPE;
wb	OLE2.OBJ_TYPE;
wss   OLE2.OBJ_TYPE;
wbs   OLE2.OBJ_TYPE;
cell  OLE2.OBJ_TYPE;
went ole2.obj_type;
c1 number(4);
c2 number(4);
args1 OLE2.LIST_TYPE;
begin
MyApplication  := OLE2.CREATE_OBJ('Excel.Application');
 OLE2.SET_PROPERTY(MyApplication , 'Visible',1);
 wbs := OLE2.GET_OBJ_PROPERTY(MyApplication ,'Workbooks');
 wb := OLE2.INVOKE_OBJ(wbs,'Add');
wss := OLE2.GET_OBJ_PROPERTY(MyApplication ,'ActiveSheet');
OLE2.SET_PROPERTY(wss , 'Value','Sheet1');


OPEN c_cur;
c1:=1;		
LOOP


c2:=1;


fetch c_cur into idd,name;
exit when c_cur%NOTFOUND;	
	
loop 
if c2=2 then exit;
end if;
args := OLE2.CREATE_ARGLIST; 

OLE2.ADD_ARG(args, c1);
OLE2.ADD_ARG(args, c2);
cell := OLE2.GET_OBJ_PROPERTY(wss,'Cells', args);
OLE2.SET_PROPERTY(cell, 'Value', idd);
OLE2.DESTROY_ARGLIST(args);
ole2.release_obj(cell);

c2:=c2+1;
args := OLE2.CREATE_ARGLIST; 
OLE2.ADD_ARG(args, c1);
OLE2.ADD_ARG(args, c2);
cell := OLE2.GET_OBJ_PROPERTY(wss,'Cells', args);
OLE2.SET_PROPERTY(cell, 'Value', name);
OLE2.DESTROY_ARGLIST(args);
ole2.release_obj(cell);

END LOOP;
c1:=c1+1;
  


END LOOP;

CLOSE c_cur;
OLE2.DESTROY_ARGLIST(args);


args1 := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args1, 'C:\DOCS\EXAMPLE.xls');
OLE2.INVOKE(wb, 'SaveAs', args1);
OLE2.DESTROY_ARGLIST(args1);
OLE2.INVOKE(wb,'CLOSE');
ole2.invoke(MYApplication,'Quit');

ole2.release_obj(wb);
ole2.release_obj(wbs);
ole2.release_obj(wss);
ole2.release_obj(wss);
ole2.release_obj(wb);

OLE2.RELEASE_OBJ(MyApplication);


END;

تم تعديل بواسطة zaeen

بتاريخ:
  • كاتب الموضوع

عدد القراء الي قراوا الموضوع 28 واحد وانا متاكد علي الاقل نصهم نسخ الكود ومفيش ولا واحد رد وقال الموضوع كويس بايخ مبيشتغلش بيشتغل ايه التعديل الي ممكن نعمله فيه
ههه

بتاريخ:

الأخ / zaeen

جزاك الله خيرا

هل يمكن تطوير هذا ال PROCEDURE لكى يتعامل مع matrix report
وبالطبع سيكون عدد الاعمدة غير محدد

السؤال هو

ايه التعديل الي ممكن نعمله فيه


شكرا لك مرة اخرى
بتاريخ:
  • كاتب الموضوع

شكرا يأخ امجد علي الرد
حجرب حكايه الماتريكس دي
وان شاء حجيبها هنا في المنتدي علشان انا بصراحه مجربتهاش قبل كده
بس لاحظ في الكود ده حاجه مش ممكن تستخدمه علي عكس الغرض بتاعه
يعني مش ممكن بدل متستعمل ole2
علشان تعمل تصدير للبانات مش ممكن تستعملها علشان تعمل استيراد ليها
يعني تقري من اكسيل او اكسس حته
فكروا فيها ومستني رددوكم
تحياتـــــــــــــــــــــــــــــــي

بتاريخ:

جزاك الله كل الخير سواء اشتغل PROCEDURE ام لا المهم المشاركة وحب التعاول وان شاء الله سوف اجربة

بتاريخ:
  • كاتب الموضوع

شكرا ليك يا اخ خاليد وان شاء الله شغال

  • بعد 1 شهر...
بتاريخ:

جزاك الله خيرا البروسيدور شغال
مشــــــــكووووووووووووووووووووووووووووووووور

بتاريخ:
  • كاتب الموضوع

شكرا ليك علي المرور يا اخ haym

  • بعد 2 أسابيع...
بتاريخ:

مشكور على الجواب وان شاء الله شغال
ممكن عندك فكرة ربط الاوراكل مع اداة من ادوات فيجول بيسك
ان شاء الله نتواصل ونعرفكم بكل ما نتوصل اليه من الذي افدتونا به
وشكرا

  • بعد 6 شهور...
بتاريخ:

شكرا على المجهود الرائع
ولكن اريد ان اضيف في اول العمود عنوان الcolumn
مثل name , date

  • بعد 5 شهور...
بتاريخ:

مشكور أخي العزيز
هل من الممكن تعديل هذا الكود ليفتح ملف إكسيل محفوظ علي الجهاز لتفريغ البيانات فيه
هل يكمننا جعل ال cursor يعتمد علي باراميتر يحدد فيها أسماء الأعمده المراد إظهارها

  • بعد 4 شهور...
بتاريخ:

[size="4"]شكرا على المجهود المميز[/size]

  • بعد 1 شهر...
بتاريخ:

الله يعطيك العافية ، أنا ما جربت الكود لأنه مش الأوراكل مش نازل على الجهاز ، لكن رح أجربه و انشاء الله يشتغل.
بارك الله فيك أخي الكريم

  • بعد 2 شهور...
بتاريخ:

أخي العزيز بارك الله في جهودك وأتم عليك نعمه ، عندي سؤال
لو أن الـ Cursor برجع أكثر من قيمتان يعني 3 أو 4 قيم كيف سيتم التعديل على الكود الرجاء الرد مع الشكر الجزيل

  • بعد 3 أسابيع...
بتاريخ:

السلام عليكم

ممكن بس توضيح الكود يعني
ع كل سطر ملاحظه ممكن؟


وكمان كيف بدي اضيف الاسم التاريخ


على Excel sheet

وشكرا"

  • بعد 1 سنة...
بتاريخ:

ممتاز بس ياريت الافاده عن الحاله التاليه انا جربته بيجيب 22 سجل بالرغم ان الكويري لما بجربه في التود بيجيب 2000 هل في تعديل ممكن يتعمل

  • بعد 3 شهور...
بتاريخ:

جزاك الله خير اخى الكريم

بتاريخ:

حلوه اوى الفكره ميرسى عليها انا جربتها واشتغلت معايا

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.