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

استدعاء التقرير من client


moh2237

Recommended Posts

الرجاء المساعدة في طريقة استدعاء التقرير من client

تم استخدام run_product وتعمل بشكل صحيح على server
ولكن على client يختلف مسار ال report

فهل من طريقة لحل هذه المشكلة .؟؟؟؟

رابط هذا التعليق
شارك

أخي العزيز حتى لو كنت على كلينت وتم تحديد المسار بشكل صحيح فسوف يتم تنفيذ التقرير
تاكد من المجلد الموجود على السيرفر قابل للمشاركة لجميع المستخدمين
او انقل هذا التقرير على نفس الكلينت ونفذه

رابط هذا التعليق
شارك

الاخ الكريم
يوجد طريقة لحل المشكلة وهي عمل ما يسمى map drive
من السيرفر وهو عمل sharing للمجلد الموجود عليه التقارير والفورم
ثم الدخول الى السيرفر عن طرق client بحيث هذا الماب كأنك موجود على السيرفر
وتعمل كذلك shotcut على جهاز client
كما هو مرفق بالصورة

post-11-1124610002_thumb.jpg

رابط هذا التعليق
شارك

شكراً على المعلومات الثمينة ولكن بعد مشاركة المجلد ومحاولة تنفيذ التقرير المشكلة ظلت كما هي
لأن الذي ينفذ هو الruntime report وليس report builder .......
لان الruntime للتقرير يأخذ مسار معين لملف التقرير وهذا المسار يكون على السيرفر فكيف ممكن أعطي المسار للتقرير أثناء تنفيذه من الفورم ....

رابط هذا التعليق
شارك

شكراً على المعلومات الثمينة ولكن بعد مشاركة المجلد ومحاولة تنفيذ التقرير المشكلة ظلت كما هي
لأن الذي ينفذ هو الruntime report وليس report builder .......
لان الruntime للتقرير يأخذ مسار معين لملف التقرير وهذا المسار يكون على السيرفر فكيف ممكن أعطي المسار للتقرير أثناء تنفيذه من الفورم ....


الاخ الكريم
للايضاح فقط عندما وضعت لك الصورة لتحديد المسار كنت اقصد مسار الفورم
واي شئ بعد ذلك يتم تشغيله من الفورم يأخذ مسار الفورم
وهذه program unit لتحديد المسار

FUNCTION getpath RETURN VARCHAR2 IS
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
/ *  Purpose: To extract the current form path to be used by 
*            CREATED BY Admin05 ***\
\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
 path VARCHAR2(255) := Get_Application_Property(CURRENT_FORM);
 slash PLS_INTEGER;
BEGIN slash := instr(path,'\',-1);
 IF slash = 0 THEN	-- Unix ??
   slash := instr(path,'/',-1);
 END IF;
 Return(substr(path,1,slash));
END;



ثم تضعها في program unit
وتناديها فهي تعطيك المسار بشكل صحيح
كالتالي

Run_Product(REPORTS, getpath||'\your_report_name.rep', SYNCHRONOUS, RUNTIME, 
          FILESYSTEM, pl_id, NULL);


هذا في حالة ان يكون الفورم والريبورت بنفس المجلد

رابط هذا التعليق
شارك

اخ admin اود تقديم جزيل الشكر لك على ماتقوم به من خدة للزملاء
واتمنى لو استطيع ان اقدم لك معروف ردا لك
شكرا

رابط هذا التعليق
شارك

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

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

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

×   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.

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

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

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