الانتقال إلى المحتوى

مساعدة ... عند تحويل البيانات من الدفلوبر فورم الى الاكسيل


adil abd

Recommended Posts

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

äæßíÇ 108 ãÌÏÏ

  **----------------------------------------------------------------**PROCEDURE EXCEL_REP1 IS
CURSOR C1 IS SELECT MA_PARNO,MA_NAME
FROM MAT ;




row_num  NUMBER:=2;
args  OLE2.LIST_TYPE;
app  OLE2.OBJ_TYPE;
cell  OLE2.OBJ_TYPE;
ws  OLE2.OBJ_TYPE;
wb  OLE2.OBJ_TYPE;
wss  OLE2.OBJ_TYPE;
wbs  OLE2.OBJ_TYPE;


TYPE Header_Text IS TABLE OF VARCHAR2(30)
INDEX BY BINARY_INTEGER;
hdr Header_Text;


BEGIN
--- Initialise Excel 
app := OLE2.CREATE_OBJ('Excel.Application'); 


OLE2.SET_PROPERTY(app, 'Visible','True');


wbs := OLE2.GET_OBJ_PROPERTY(app,'Workbooks'); 
wb := OLE2.INVOKE_OBJ(wbs,'Add');




ws := OLE2.GET_OBJ_PROPERTY(app ,'ActiveSheet');


hdr(1) := '--';
FOR I IN 2..7 LOOP
args := OLE2.CREATE_ARGLIST; 
OLE2.ADD_ARG(args,row_num); --- Row Number
OLE2.ADD_ARG(args,I);  --- Column Number
cell := OLE2.GET_OBJ_PROPERTY(ws,'Cells', args); 
OLE2.DESTROY_ARGLIST(args); 
OLE2.SET_PROPERTY(cell,'Value',hdr(I-1));
OLE2.SET_PROPERTY(cell,'Font','Font_SIZE = 20');
OLE2.RELEASE_OBJ(cell); 
END LOOP; 


----------------------------------


--- Data 
FOR J IN C1 LOOP 
row_num := row_num +1;
FOR I IN 2..7 LOOP 
args := OLE2.CREATE_ARGLIST; 


OLE2.ADD_ARG(args, row_num); --- Row 
OLE2.ADD_ARG(args, I); --- Column 


cell := OLE2.GET_OBJ_PROPERTY(ws,'Cells', args); 
OLE2.DESTROY_ARGLIST(args); 


IF I = 2 THEN
OLE2.SET_PROPERTY(cell,'Value',row_num-2); 
ELSIF I = 3 THEN
OLE2.SET_PROPERTY(cell,'Value',j.MA_PARNO); 
ELSIF I = 4 THEN
OLE2.SET_PROPERTY(cell,'Value',J.MA_NAME); 
/* ELSIF I = 5 THEN
OLE2.SET_PROPERTY(cell,'Value',J.JOB);


ELSIF I = 6 THEN
OLE2.SET_PROPERTY(cell,'Value',NVL(J.SAL,0));
NULL;
ELSIF I = 7 THEN


NULL;*/
END IF;
END LOOP;
END LOOP;
----------------------------------




BREAK;


args := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args, 'C:\Meehemp_'||TO_CHAR(SYSDATE,'YYYYMMDD_HH24MISS')||'.xls');
OLE2.INVOKE(wb, 'SaveAs', args);
OLE2.DESTROY_ARGLIST(args);
OLE2.INVOKE(wb,'CLOSE');
OLE2.INVOKE(app,'Quit');


OLE2.RELEASE_OBJ(wbs);
OLE2.RELEASE_OBJ(ws);
OLE2.RELEASE_OBJ(wbs);
OLE2.RELEASE_OBJ(wb);
OLE2.RELEASE_OBJ(app);
END;
رابط هذا التعليق
شارك

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

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

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

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

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