adil abd بتاريخ: 3 نوفمبر 2017 تقديم بلاغ مشاركة بتاريخ: 3 نوفمبر 2017 عند التحويل البيانات من الدفلوبر فورم الى الاكسيل تظهر البيانات التي باللغة العربية حسب الكتابه ادناه ممكن الحل علما اني استخدم هذه الطريقه ادناه äæßíÇ 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; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.