سلام عليكم
عند حول البيانات من developer 6i الى الكسيل يظهر لي مشكله في اللغة العربية ( تظهر غير مفهومه ) علما اني استخدم الكود التالي ارجو المساعد ولكم مني فائق الشكر
declare
application ole2.obj_type;
workbooks ole2.obj_type;
workbook ole2.obj_type;
worksheets ole2.obj_type;
worksheet ole2.obj_type;
cell ole2.obj_type;
arglist ole2.list_type;
row_num number;
col_num number;
fontObj ole2.obj_type;
cursor rec is select invno,tyname from(
select sequ,invno,myinvno,indate,typecode.name tyname,mat.ma_name maname
,nvl(inqty,0)+nvl(ouqty,0) qty,price,mdendo,daando,mdende,daande,deno,type intype,parno
from debalanc,mat,typecode
where parno=ma_parno(+)
and type=typecode.code)
where deno=:deno;
procedure SetCellValue(rowid number,colid number,cellValue varchar) is
begin
arglist := ole2.create_arglist;
ole2.add_arg(arglist,rowid);
ole2.add_arg(arglist,colid);
cell:= ole2.get_obj_property(worksheet,'Cells',arglist);
fontObj := ole2.get_obj_property(cell,'Font');
ole2.destroy_arglist(arglist);
ole2.set_property(cell,'value',cellValue);
-- ole2.set_property(fontObj,'Size',16);
-- ole2.set_property(fontObj,'BOLD',1);
ole2.set_property(fontObj,'name','MS Serif');
ole2.release_obj(cell);
end SetCellValue;
procedure app_init is
begin
application := ole2.create_obj('Excel.Application');
ole2.set_property(application,'Visible',true);
workbooks := ole2.get_obj_property(application,'workbooks');
workbook := ole2.invoke_obj(workbooks,'add');
worksheets := ole2.get_obj_property(application,'worksheets');
worksheet := ole2.invoke_obj(worksheets,'add');
ole2.set_property(worksheet,'Name','Emp Sheet');
end app_init;
procedure save_excel(path varchar,filename varchar) is
begin
OLE2.Release_Obj(worksheet);
OLE2.Release_Obj(worksheets);
-- Save the Excel file created
If path is not null then
Arglist := OLE2.Create_Arglist;
OLE2.Add_Arg(Arglist,path||'\'||file_name||'.xls');
OLE2.Invoke(workbook, 'SaveAs', Arglist);
OLE2.Destroy_Arglist(Arglist);
end if;
end save_excel;
begin
app_init;
row_num:=1;
col_num:=1;
SetCellValue(row_num,col_num,'Emp Code');
col_num:=col_num + 1;
SetCellValue(row_num,col_num,'Emp Name');
-- col_num:=col_num + 1;
-- SetCellValue(row_num,col_num,'Date of Birth');
for i in rec loop
row_num:=row_num + 1;
col_num:=1;
SetCellValue(row_num,col_num,i.invno);
col_num:=2;
SetCellValue(row_num,col_num,i.tyNAME);
-- col_num:=3;
-- SetCellValue(row_num,col_num,i.date_of_birth);
end loop;
save_excel('c:\excel_export','emp_data');
OLE2.Release_Obj(workbook);
OLE2.Release_Obj(workbooks);
OLE2.Release_Obj(application);
end;