بتاريخ: 2 يونيو 201510 سنة comment_262872 عملت تقرير وفي باراميتر من نوع CHAR حيث ان الباراميتر اسمه P2 وكتبت في التقرير هذا الكود SELECT ROWNUM, ALL_DEVICES.USER_NAME, ALL_DEVICES.USER_NO, ALL_DEVICES.DEVICE_NAME, ALL_DEVICES.DEVICE_CODE, ALL_DEVICES.SHASE_NO, ALL_DEVICES.PROJECT, ALL_DEVICES.ALL_CASE, ALL_DEVICES.NOTES, ALL_DEVICES.PROJECT_ID, PROJECT.PROJECT_NAME_MAIN FROM ALL_DEVICES, PROJECT WHERE (ALL_DEVICES.PROJECT_ID = PROJECT.PROJECT_ID) AND PROJECT.PROJECT_NAME_MAIN LIKE '%'||:P2||'%' وكتبت في الفورم هذا الكود لاستدعاء الباراميتر SET_REPORT_OBJECT_PROPERTY(v_rep_id, REPORT_OTHER, 'P2=' ||:LIST_PART||' paramform=no'); حيث أن الباراميتر يأخذ قيمته من LIST_PART المشكلة ان الباراميتر يأخذ اول كلمة فقط من الليست يعني مثلا لو قيمة الليست (الانفاق والكباري) يأخذ كلمة (الانفاق ) فقط ويبحث على اساسها وهذا يعطي قيم زائدة في التقرير ارجو حل لهذه المشكلة بحيث ان الباراميتر يأخذ القيمة كاملة تقديم بلاغ
بتاريخ: 3 يونيو 201510 سنة كاتب الموضوع comment_262878 الباراميتر حجمه 50 الباراميتر حجمه كام ؟ الباراميتر حجمه 50 تقديم بلاغ
بتاريخ: 3 يونيو 201510 سنة كاتب الموضوع comment_262895 الباراميتر حجمه 50 الباراميتر حجمه كام ؟ الباراميتر حجمه 50 يا جماعة لو في حد يحل المشكلة .. حجم الباراميتر يتحمل القيمة المعطاه له تقديم بلاغ
بتاريخ: 4 يونيو 201510 سنة كاتب الموضوع comment_262929 الباراميتر حجمه 50 الباراميتر حجمه كام ؟ الباراميتر حجمه 50 يا جماعة لو في حد يحل المشكلة .. حجم الباراميتر يتحمل القيمة المعطاه له هل من مجيب؟؟ تقديم بلاغ
بتاريخ: 4 يونيو 201510 سنة comment_262932 السلام عليكم ورحمة الله وبركاته اخي الكريم حجم الباراميتر في الشاشة مطابق لحجم الباراميتر في التقرير جرب الكود التالي DECLARErepid REPORT_OBJECT;v_rep VARCHAR2(32767);p_list paramlist ;BEGINrepid := find_report_object('REP1');SET_REPORT_OBJECT_PROPERTY(repid,REPORT_FILENAME,getpath||'reports\R_ACT.rdf');SET_REPORT_OBJECT_PROPERTY(repid,REPORT_DESFORMAT,'pdf');IF :IS_SELECT = 1 THENp_list :=create_parameter_list('PLIST');add_parameter(p_list,'P_NAM',text_parameter,:TITL);add_parameter(p_list,'P1',text_parameter,Get_Cond1);v_rep := RUN_REPORT_OBJECT(repid,p_list);WEB.SHOW_DOCUMENT('http://127.0.0.1:8889/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=repserver90','_blank');destroy_parameter_list(p_list);ELSEp_list :=create_parameter_list('PLIST');add_parameter(p_list,'P_NAM',text_parameter,:TITL);add_parameter(p_list,'P1',text_parameter,Get_Cond2);v_rep := RUN_REPORT_OBJECT(repid,p_list);WEB.SHOW_DOCUMENT('http://127.0.0.1:8889/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=repserver90','_blank');destroy_parameter_list(p_list);END IF ;END; جزاك الله كل خير تقديم بلاغ
بتاريخ: 4 يونيو 201510 سنة كاتب الموضوع comment_262939 الحمد لله تم حل المشكلة جربت هذا الكود واشتغل تمام DECLARE pl_id paramlist; x VARCHAR2 (150); y NUMBER; report_service_name VARCHAR2 (200); BEGIN -- Create parameter List to pass report parameters through it. pl_id := GET_PARAMETER_LIST ('tmpdata'); IF NOT ID_NULL (pl_id) THEN DESTROY_PARAMETER_LIST (pl_id); END IF; pl_id := CREATE_PARAMETER_LIST ('tmpdata'); -- Adding Parameters to parameter List ADD_PARAMETER (pl_id, 'P2' ,text_parameter,:LIST_PART); -- Set Report server name which uses to run report programatically report_service_name := 'rep10g'; SET_REPORT_OBJECT_PROPERTY ('ALL_DEVICES_REP3', report_server, report_service_name); -- Set report output format programatically -- Set spreadsheet output SET_REPORT_OBJECT_PROPERTY ('ALL_DEVICES_REP3',report_desformat,'pdf'); --set pdf output --SET_REPORT_OBJECT_PROPERTY ('REPORT_NAME', report_desformat, 'pdf'); --- Execute report ar Report Service y := LENGTH (report_service_name) + 2; x := RUN_REPORT_OBJECT ('ALL_DEVICES_REP3', pl_id); --Display a report in URL web.show_document ('/reports/rwservlet/getjobid' || SUBSTR (x, y) || '?server=' || report_service_name); END; شاكر لكم جميعا وجزاكم الله خيرا تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.