এসএসআরএস ২০০৮ আর ২ - এসএসআরএস ২০১২ - রিপোর্টভিউয়ার: সাফারি / ক্রোমে রিপোর্ট কিন্তু ফায়ারফক্স / ইন্টারনেট এক্সপ্লোরার ৮ এ ভাল কাজ করে ... কেন?


83

আমার কিছু সাধারণ প্রতিবেদন রয়েছে SSRS 2008 R2তবে সেগুলি সাফারি বা ক্রোমে প্রদর্শিত হবে না। মাইক্রোসফ্টের বই অনলাইন অনুসারে, এই ব্রাউজারগুলি সীমিত ফ্যাশনে সমর্থিত। তবে, "" লোডিং "ঘড়িটি ডেটা শেষ হওয়ার পরে আমি কিছুই দেখতে পাচ্ছি না। পৃষ্ঠার শীর্ষে প্যারামিটার বার এবং ব্রেড ক্রাম্ব নেভিগেশন বিভাগটি সেখানে রয়েছে। এছাড়াও, আমি সাফারি এবং ক্রোমের যে কোনও বিন্যাসে সংরক্ষণ / রফতানি করতে পারি। এটি কেবল রিপোর্ট বিভাগটি প্রদর্শন করবে না, যা কেবল ফাঁকা।

আমার কি শংসাপত্র এবং সুরক্ষিত সংযোগগুলি (বর্তমানে এইচটিটিপিএসের সাথে সেটআপ করা হয়নি, কেবলমাত্র এইচটিটিপিএস) ব্যবহার করার কথা রয়েছে? এমন কোনও সার্ভার-সাইড কনফিগারেশন রয়েছে যেগুলি টিক করা দরকার? পূর্ববর্তী এসএসআরএস সংস্করণ (2005) ব্যবহার করে কেউ কি সাফারি / ক্রোমে কোনও প্রতিবেদন প্রদর্শন করতে সাফল্য পেয়েছে ?

আমি ব্যবহার করছি Safari 5.0.4এবং Chrome 10.0.648.151। আমি জানি যে এই দুটি ব্রাউজারের মিলই হ'ল তারা উভয়ই ওয়েবকিটের উপর ভিত্তি করে ।

প্রতিবেদনটি ইন্টারনেট এক্সপ্লোরার 8 (অবশ্যই) এবং ফায়ারফক্স 4.0 এ সাফল্যের সাথে রেন্ডার করে।

কেউ যদি এ সম্পর্কে কিছু আলোকপাত করতে পারে তবে আমি সত্যই এটির প্রশংসা করব



4
গ্রেগ এইচ আমার সমাধান দেখুন এবং আমাকে সমস্যাটি সমাধান করে কিনা তা আমাকে জানান
Emanuele Greco

উত্তর:


94

চূড়ান্ত সমাধান (এসএসআরএস ২০১২ তেও কাজ করে!)

" সি: \ প্রোগ্রাম ফাইলগুলি \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ এমএসআরএস 10_50. এমএসএসকিউএলসারভার Services রিপোর্টিং পরিষেবাদি \ রিপোর্টম্যানেজার \ জেএস \ রিপোর্টিংস সার্ভিসেস.জেএস " (এসএসআরএস সার্ভারে) এ নিম্নলিখিত স্ক্রিপ্টটি যুক্ত করুন:

function pageLoad() {
    var element = document.getElementById("ctl31_ctl10");
    if (element)
    {
        element.style.overflow = "visible";
    }
}

আসলে আমি জানি না ctl31_ctl10ডিভের নামটি সর্বদা থাকে কিনা : আমার ক্ষেত্রে এটি (পরিবর্তে এসকিউএল সার্ভারের চেয়ে বেশি 2012 অজলক পাওয়া গেছে ctl32_ctl09)।

যদি এই সমাধানটি কাজ না করে, আপনার ব্রাউজার থেকে এইচটিএমএল দেখুন যে স্ক্রিপ্টটি ওভারফ্লো: অটো প্রপার্টি ওভারফ্লোতে দৃশ্যমান : সঠিকভাবে কাজ করেছে কিনা তা দেখতে ।


রিপোর্টভিউয়ার নিয়ন্ত্রণের জন্য সমাধান

.aspxপৃষ্ঠায় এই স্টাইলের লাইনটি প্রবেশ করুন (বা .cssযদি কোনও লিঙ্কযুক্ত ফাইলের মধ্যে পাওয়া যায় তবে):

#reportViewer_ctl09 {
  overflow:visible !important;
}

কারণ

ক্রোম এবং সাফারি ওভারফ্লো রেন্ডার করে : ইন্টারনেট এক্সপ্লোরারকে আলাদা আলাদাভাবে সম্মতি দেয়।

এসএসআরএস এইচটিএমএল হল কুইর্কসমোড এইচটিএমএল এবং এটি 5.5 বাগের উপর নির্ভর করে। নন-আইই ব্রাউজারগুলিতে আইই কুইর্কস্মোড নেই এবং তাই এইচটিএমএলকে সঠিকভাবে রেন্ডার করুন

এসএসআরএস ২০০৮ আর 2 রিপোর্টগুলির দ্বারা উত্পাদিত এইচটিএমএল পৃষ্ঠায় একটি ডিভ রয়েছে যা ওভারফ্লো: অটো স্টাইল এবং এটি প্রতিবেদনটিকে একটি অদৃশ্য প্রতিবেদনে পরিণত করে।

<div id="ctl31_ctl10" style="height:100%;width:100%;overflow:auto;position:relative;">
...</div>

ম্যানুয়ালি পরিবর্তন চূড়ান্ত এইচটিএমএল (Chrome এর ডিবাগ উইন্ডো ব্যবহার করে) স্বয়ং: ওভারফ্লো মধ্যে ওভারফ্লো: দৃশ্যমান আমি ক্রোম রিপোর্ট দেখতে পারেন।

আমি টিমের সমাধান পছন্দ করি ; এটা সহজ এবং কাজ করে।

তবে এখনও একটি সমস্যা রয়েছে: যেকোন সময় ব্যবহারকারী প্যারামিটারগুলি পরিবর্তন করে (আমার রিপোর্টগুলি প্যারামিটারগুলি ব্যবহার করে!) এজেএক্স ডিভকে রিফ্রেশ করে, ওভারফ্লো: অটো ট্যাগটি আবারও লিখিত হয়, এবং কোনও স্ক্রিপ্ট এটি পরিবর্তন করে না। এই টেকনোট বিশদটি ব্যাখ্যা করে যে সমস্যাটি কী।

এটি ঘটেছিল কারণ এজ্যাক্স প্যানেলগুলি দিয়ে নির্মিত একটি পৃষ্ঠায়, কেবলমাত্র এজেএক্স প্যানেলগুলি পুরো পৃষ্ঠা সতেজ করে না করেই তাদের রাজ্য পরিবর্তন করে। ফলস্বরূপ, আপনি ট্যাগটিতে প্রয়োগ করা OnLad ইভেন্টগুলি কেবল একবারই বরখাস্ত করা হয়: প্রথমবার আপনার পৃষ্ঠাটি লোড হয়। এর পরে, এজেএক্স প্যানেলের কোনও পরিবর্তন করলে এই ইভেন্টগুলি আর ট্রিগার হবে না।

মিঃইনার্ক আমাকে এখানে সমাধানটির পরামর্শ দিয়েছিলেন ।

আরেকটি বিকল্প হ'ল পেজলডে আপনার ফাংশনটির নামকরণ।

এই নামের কোনও ক্রিয়াকলাপ এএসপি.নেট আজাক্স স্বয়ংক্রিয়ভাবে কল করা হবে যদি এটি পৃষ্ঠায় উপস্থিত থাকে তবে প্রতিটি আংশিক আপডেটের পরেও। আপনি যদি এটি করেন তবে আপনি বডি ট্যাগ থেকে ওভারলোড বৈশিষ্ট্যটিও সরাতে পারেন

সুতরাং আমি সমাধানে প্রদর্শিত উন্নত স্ক্রিপ্ট লিখেছি।


ভাল হটডমন, আমি এটি আমার জন্য কাজ করার বিষয়টিও নিশ্চিত করতে পারি (এসকিউএল ২০০৮ আর 2)।
ভিনসেন্ট ভ্যাঙ্কালবার্গ

4
এসএসআরএস ২০১২-তেও কাজ করছে my আমার ক্ষেত্রে ডিভের আইডি "ctl31_ctl09" রয়েছে। ধন্যবাদ!
ক্রিস

ইমানুয়েলে প্রদত্ত সমাধানটি আমার পক্ষে কাজ করেছিল তবে, আমার এসপেক্স পৃষ্ঠায় রিপোর্টভিউয়ার নিয়ন্ত্রণ ব্যবহার করে প্রতিবেদনটি দেখতে আমার সমস্যা হয়েছিল। সুতরাং আমি এসপেক্স পৃষ্ঠায় কিছু কোড যুক্ত করেছি। আমি এখানে
সমীর কে

আমি "পেজল্ড" ইভেন্টটি চালাতে অক্ষম, যদিও আমি এটি আমার এসএসআরএস রিপোর্টিং সার্ভারে নির্দেশিত জেএস ফাইলের নীচে কাটা-পেস্ট করেছি। কেন এটি বন্ধ হচ্ছে না সে সম্পর্কে কোনও পরামর্শ?
বেন ফিনকেল 26'12

@ বেনফিন্কেল "পেজল্ড () প্রতিটি আপডেটপ্যানেল রিফ্রেশের পরে ডাকা হয়" ( encosia.com/docament- چمتو-and-pageload-are-not-the-same ) তাই সমস্যাটি অন্যরকম হতে পারে .. ব্রাউজারের ডিবাগ উইন্ডোটি চেষ্টা করে দেখুন কিনা আপনার দ্বারা সংশোধিত পাঠ্যটি লিঙ্কযুক্ত এবং জাভাস্ক্রিপ্ট ত্রুটি থাকলে।
ইমানুয়েল গ্রিকো

43

সিএসএস-ভিত্তিক সমাধান

রিপোর্টিং পরিষেবাদির স্টাইলশিটে আমি নিম্নলিখিতগুলি যুক্ত করতে সক্ষম হয়েছি এবং এটি ক্রোমে এটি আমার জন্য স্থির করেছে।

দাবি অস্বীকার: ক্রস ব্রাউজারের সামঞ্জস্যের জন্য এটি পুরোপুরি পরীক্ষিত নয়।

/ ************** ক্রোম বাগ ফিক্স ***************** /
বিভাগ # সিটিএল 31_ctl09,
Div # ctl31_ctl10
{
    উপচে পড়া: দৃশ্যমান! গুরুত্বপূর্ণ;
}
/ ******************************************* /

ReportingServices.cssফাইলটির শুরুতে এটি যুক্ত করুন।

আমার জন্য, ফাইলটি এখানে অবস্থিত:

C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager\Styles\ReportingServices.css


4
+1 পরীক্ষা করা সমস্ত ব্রাউজারগুলিতে (ক্রোম, সাফারি, আইই 9, আই 10) মনোযোগের মতো কাজ করে। ম্যাক ওএস এক্স ক্রোমে একই ...
YvesR

আপনার যদি সমস্ত ব্যবহারকারীর জন্য সিএসএস পরিবর্তন করতে সার্ভারে অ্যাক্সেস না পান তবে আপনি স্টাইলবোটের মতো ব্রাউজার এক্সটেনশান সহ এই উত্তরটিতে সিএসএস ব্যবহার করতে পারেন ।
মাইক বকাস

+1 চমৎকার সমাধান! এটি জাভাস্ক্রিপ্টের সাথে ফিক্সিংয়ের চেয়ে সস্তা (পারফরম্যান্স ওয়াইস) এবং এজেএক্স প্যানেলের আপডেটগুলি প্রতিবার আপডেট করার দরকার নেই।
কাইলমিট

4
কি দারুন! এটি আমার সমস্যা ছিল, আমি কেবল এসএসআরএস আর 2 রিপোর্ট স্থাপনার অধ্যয়ন করতে শুরু করেছি এবং এটি আইআই তে প্রদর্শিত হয় তবে ক্রোমে নয়। কেন একটি ব্যাখ্যা আছে? যাইহোক, রায়ান ধন্যবাদ!
ফ্রান্সিস শৌল

4
আমার এসএসআরএস ২০১২ সালে ctl32_ctl109 হিসাবে লেবেল করা হয়েছিল that এটি দেখার পরে এবং আমার সিএসএসকে আমার মূল্য ব্যবহার করার পরে এটি পুরোপুরি কার্যকর হয়েছিল worked
ম্যাট এইচ

18

এই হল জ্ঞাত সমস্যা । সমস্যাটি হ'ল একটি ডিভি ট্যাগটিতে "ওভারফ্লো: অটো" স্টাইল রয়েছে যা সম্ভবত ওয়েবকিট দিয়ে ভালভাবে প্রয়োগ করা হয়নি যা সাফারি এবং ক্রোম দ্বারা ব্যবহৃত হয় (ইমেনিয়েল গ্রিকোর উত্তর দেখুন )। আরএস: রিপোর্টভিউরহোস্ট উপাদানটি ব্যবহার করতে ইমানুয়েলের পরামর্শটি কীভাবে গ্রহণ করতে হবে তা আমি জানতাম না, তবে আমি জাভাস্ক্রিপ্ট ব্যবহার করে এটি সমাধান করেছি।

সমস্যা

এখানে চিত্র বর্ণনা লিখুন

সমাধান

যেহেতু "ওভারফ্লো: অটো" আইডি "ctl31_ctl10" আইডির সাথে ডিভ এলিমেন্টের স্টাইল অ্যাট্রিবিউটে নির্দিষ্ট করা হয়েছে, তাই আমরা এটি স্টাইলশিট ফাইলে ওভাররাইড করতে পারব না তাই আমি জাভাস্ক্রিপ্টের দিকে রইলাম। আমি নীচের কোডটি "সি: \ প্রোগ্রাম ফাইলস \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ এমএসআরএস 10_50. এমএসএসকিউএলএসভার \ রিপোর্টিং পরিষেবাগুলি \ রিপোর্টম্যানেজার \ জেএস \ রিপোর্টিং সার্ভিস.জেএস" এ যুক্ত করেছি

function FixSafari()
{    
    var element = document.getElementById("ctl31_ctl10");
    if (element) 
    {
        element.style.overflow = "visible";  //default overflow value
    }
}

// Code from /programming/9434/how-do-i-add-an-additional-window-onload-event-in-javascript
if (window.addEventListener) // W3C standard
{
    window.addEventListener('load', FixSafari, false); // NB **not** 'onload'
} 
else if (window.attachEvent) // Microsoft
{
    window.attachEvent('onload', FixSafari);
}

বিঃদ্রঃ

এসএসআরএস ২০০৫ এর জন্য এমন কোনও সমাধান রয়েছে যা আমি চেষ্টা করে দেখিনি তবে আমি এটি এসএসআরএস ২০০৮ এর জন্য প্রযোজ্য বলে মনে করি না কারণ আমি "ডকপ্যাম্পএন্ডআরপোর্টফ্রেম" শ্রেণিটি খুঁজে পাচ্ছি না।


7

সিএসএস-ভিত্তিক সিস্টেম-ভিত্তিক সমাধান

এর জন্য কোনও জাভাস্ক্রিপ্ট বা অ্যাজাক্স ফ্রেম বা অন্য কোনও মোড়কের দরকার নেই। এটি ইন্টারনেট এক্সপ্লোরার, ফায়ারফক্স, সাফারি এবং ক্রোমে পরীক্ষা করা হয়েছিল।

রিপোর্ট সার্ভারে এটি স্টাইল শীট স্তরে স্থির করা যেতে পারে।

প্রথমে, যে ডিরেক্টরিতে রিপোর্টিং পরিষেবাদি ইনস্টল করা আছে সেখানে যান, আমার ক্ষেত্রে ( এসকিউএল সার্ভার 2012 এসপি 1) এটি:

C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer

সেই ডিরেক্টরিতে, আপনি রিপোর্টারসওয়ার.কনফিগ নামের একটি ফাইল পাবেন।

দেখুন এইচটিএমএল ভিউয়ার এবং প্রতিবেদন ব্যবস্থাপকের জন্য কাস্টমাইজ স্টাইল শীট

এই ফাইলে একটি একক এক্সএমএল লাইন প্রবেশ করান (উপরের নথি থেকে):

<Configuration>
...
          <HTMLViewerStyleSheet>SafariChromeFix</HTMLViewerStyleSheet>
...
</Configuration>

সেভ করুন

উপরের লিঙ্কে তারা আপনাকে যা বলে না তা হ'ল এই এন্ট্রিটি ডিফল্ট স্টাইল শিটটি সম্পূর্ণরূপে ওভাররাইড করে। ডিভ স্টাইলশিট যুক্ত করে কাজগুলি রেন্ডার করার জন্য আমার প্রথম প্রচেষ্টা, সমস্ত কিছু ভেঙে গেছে। একবার যখন আমি বুঝতে পেরেছিলাম যে এই সম্পাদনাটি reporserver.config ফাইলটিতে বাড়ানো হয়নি, তবে আসলে এটি ডিফল্ট শৈলীর শীটটি প্রতিস্থাপন করে, আমি ডিফল্ট শৈলীর শীটে অনুলিপি করেছিলাম এবং সমস্ত কিছুই কাজ শুরু করে started

এরপরে, স্টাইল ডিরেক্টরিতে অন্তর্ভুক্ত করুন ( C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\Styles)।

এসপি_ফুল.সি.এস. নামের ফাইলটি একটি অনুলিপি তৈরি করুন এবং সেই অনুলিপিটির নাম সাফারিক্রোমফিক্স.এস.এস. এই মুহুর্তে, সাফারিক্রোমফিক্স.এসএস এসপি_ফুল.কমের মতো হওয়া উচিত।

সাফারিচ্রোমফিক্স.এসএস সম্পাদনা করুন এবং নীচে নীচের লাইনগুলি যুক্ত করুন:

div {
    overflow: visible !important;
}

এটি সংরক্ষণ করুন.

এটি সংরক্ষণ করা হয়ে গেলে, প্রতিবেদনের পরিষেবাদির এই উদাহরণে বিদ্যমান সমস্ত প্রতিবেদনগুলি ক্রোম এবং সাফারি সহ সমস্ত ব্রাউজারগুলিতে রেন্ডার হবে।

দয়া করে নোট করুন:

এটি কেবল সম্ভব নয়, তবে অত্যন্ত সম্ভাবনাময় যে রিপোর্টার সার্ভার.কনফাইগ রিপোর্টিং পরিষেবাদির আপডেটের সাথে ওভাররাইট করা হবে, সুতরাং আপনাকে <HTMLViewerStyleSheet>SafariChrome</HTMLViewerStyleSheet>সময়কালে এটিতে ট্যাগ যুক্ত করতে হতে পারে ।

এটি আমাদের ডিফল্ট শৈলীর শিটটি ভাঙ্গার এবং ইতিমধ্যে কাজ করা কিছু থেকে শুরু করে প্রচুর অন্যান্য কাস্টম পরিবর্তন করারও জায়গা দেয়। এবং যেহেতু এটি ডিফল্ট স্টাইলশিট নয়, আপনার নতুন কাস্টম সিএসএস ফাইল আপগ্রেড এবং প্যাচগুলির সময় ওভাররাইট করা হবে না।


"এটি সংরক্ষণ করা হয়ে গেলে প্রতিবেদনের পরিষেবাগুলির এই উদাহরণে বিদ্যমান সমস্ত প্রতিবেদনগুলি ক্রোম এবং সাফারি সহ সমস্ত ব্রাউজারগুলিতে রেন্ডার হবে" " - হ্যাঁ, তবে তারা এখনও ভয়ঙ্কর দেখাবে।
স্টিফান স্টেইগার

4

আমার ক্ষেত্রে আপত্তিজনক ডিআইভি হ'ল "ctl31_ctl09" তাই যদি উপরের সমাধানটি আপনার পক্ষে কাজ না করে তবে পরিবর্তনের চেষ্টা var element = document.getElementById("ctl31_ctl10");করেvar element = document.getElementById("ctl31_ctl09");


4

আমার সমাধানটি নিম্নলিখিতগুলিতে যুক্ত <script>করা ছিল:

প্রতিবেদনের পরিষেবাগুলি \ রিপোর্টম্যানেজার \ পৃষ্ঠা \ রিপোর্ট.এএসপিএক্স

স্ক্রিপ্টটি দৃশ্যমান প্রতিবেদনের সামগ্রীর পিতা - মাতাকে 1 লক্ষ্যবস্তু করে এবং প্রতিবার মাল্টিপেজ প্রতিবেদনের মাধ্যমে 2 -প্যাকেজিং অন্তর্ভুক্ত করে প্রতিবেদনটি সেট করে ।style.overflow:visible

if (window.addEventListener && document.querySelector) window.addEventListener("load", function () {

    // drop out if Sys.Application.add_load is undefined
    if (!window.Sys || !Sys.Application || !Sys.Application.add_load) return;

    // register a function for when report data is loaded
    Sys.Application.add_load(function () {

        // get the report content control
        var n = document.querySelector("[id^=VisibleReportContent]");

        if (n) {

            // get the report content control's parent
            n = n.parentNode;

            if (n) {

                // revert overflow:hidden to "visible"
                n.style.overflow = "visible";

            }
        }

    });
});

1 : এর অর্থ হল আমরা উত্পন্ন আইডি যা পরিবর্তন একটা প্রবণতা, অর্থাত্ আছে লক্ষ্য হবে না ctl31_ctl09, ctl31_ctl10, ctl32_ctl09ইত্যাদি,
2 দেখুনSys.Application.add_load()


4
এটি এসএসআরএস ২০০৮ আর 2-এ আমার জন্য পুরোপুরি কাজ করেছিল। এটি আমাদের একজন ম্যাক ব্যবহারকারীর (যাঁর কাছে আইই ব্যবহার করার সহজ উপায় নেই)
লসন

2

রিপোর্টিং পরিষেবাদির এসকিউএল সার্ভার 2014 প্রকাশ Google Chrome ব্রাউজারের জন্য সমর্থন যোগ করে তবে আইওএসের জন্য এখনও কোনও সমর্থন নেই support বিস্তারিত এখানে দেখুন ।



2

আমাকে ক্রোমে যেতে হয়েছিল F12এবং লক্ষ্য করেছি আমার ctl32 _ctl09 ছিল , আমার ডিভে ctl31_ctl09 নয়।

এটি এসকিউএল সার্ভার 2012 এর সাথে উইন্ডোজ সার্ভার 2008 আর 2 64 বিটের জন্য । স্ক্রিপ্টটি যুক্ত করুন এবং তারপরে এসএসআরএস পুনরায় চালু করুন এবং ব্রাউজারের ক্যাশে সাফ করুন।

// ক্রোমকে এসএসআরএস প্রতিবেদন প্রদর্শনের অনুমতি দেওয়ার জন্য ঠিক করুন

    function pageLoad() {
    var element = document.getElementById("**ctl32**_ctl09");
    if (element)
    {
        element.style.overflow = "visible";
    }
}

2

দুর্ভাগ্যক্রমে, মূল উত্তরটি ইন্টারনেট এক্সপ্লোরার রিপোর্টগুলিতে ভাসমান (অবস্থান নিরঙ্কুশ) কলামগুলি ভেঙে দেয়। অতএব, আমি এটিকে কিছুটা সংশোধন করেছি, যা আমি পছন্দ করি না কারণ এটি বিশেষত ওয়েবকিট অনুসন্ধান করে, তবে এটি কাজ করে:

//SSRS 2012 Chrome fix
function pageLoad() {
    var element = document.getElementById("ctl32_ctl09");
    var isWebKit = !!window.webkitURL;    // Chrome or safari really (WebKit browsers).
    // We don't want to do this fix in Internet Explorer, because it breaks floating columns
    if (element && isWebKit)
    {
        element.style.overflow = "visible";
    }
}


1

উপাদান আইডি হার্ডকোড থাকার প্রায় কাছাকাছি পেতে, আমি আরএস সার্ভারে [[ড্রাইভ]]: S প্রোগ্রাম ফাইলগুলি \ মাইক্রোসফ্ট এসকিউএল সার্ভার \ [রিপোর্টিং পরিষেবাদির উদাহরণ] \ রিপোর্টিং পরিষেবাদি \ রিপোর্টম্যানেজার \ জেএস \ রিপোর্টিংস সার্ভিস.জেএস-এ রিপোর্টিং সার্ভিস.জেএস ফাইল সম্পাদনা করেছি I jQuery আনতে কিছু কোড অন্তর্ভুক্ত করতে, এটি পৃষ্ঠাতে লোড করুন এবং তারপরে ওভারফ্লো অটোতে সেট করা আছে এমন সমস্ত উপাদান সন্ধান করুন।

রিপোর্টিং সার্ভিস.জেএস ফাইলের শীর্ষে নীচের কোডটি সন্নিবেশ করুন

var loadjQuery = function (cb) {
    if (typeof (jQuery) == 'undefined') {
        var scr = document.createElement('script');
        scr.setAttribute('type', 'text/javascript');
        scr.setAttribute('src', 'http://code.jquery.com/jquery-latest.js');

        if (scr.readyState) {
            scr.onreadystatechange = function () {
                if (scr.readyState === 'complete' || scr.readyState === 'loaded') {
                    scr.onreadystatechange = null;
                    if (typeof (cb) === 'function') {
                        args = [].slice.call(arguments, 1);
                        cb.apply(this, args);
                    }
                }
            };
        }
        else {
            scr.onload = function () {
                if (typeof (cb) === 'function') {
                    args = [].slice.call(arguments, 1);
                    cb.apply(this, args);
                }
            };
        }

        var head = document.getElementsByTagName('head')[0];
        head.insertBefore(scr, head.firstChild);
    }
}

তারপরে তার পরের লাইনটি মূলত জেএস ফাইলটিতে ছিল।

এর পরে, নীচের কোডটি যুক্ত করুন

var _rmFixReady = false;
function pageLoad() {
    loadjQuery(function () {
        _rmFixReady = true;
    });
    if (_rmFixReady) {
        var overflowElements = $('div').filter(function () { return $(this).css('overflow') == 'auto'; });
        overflowElements.each(function () {
            $(this).css('overflow', 'visible');
        });
    }
}

আমি কেবল একটি আরএম ২০১২ উদাহরণে ক্রোম ২ 27 এবং আইই 10 এর সাথে এটি পরীক্ষা করে শেষ করেছি এবং এটি দুর্দান্ত কাজ করেছে।


1

ক্রোম 22.0.1229.79 এ এখনও সমস্যা রয়েছে।

ওয়াইএমএমভি , তবে আমি খুঁজে পেয়েছি যে রিপোর্টভিউর ট্যাগ থেকে উচ্চতা সরিয়ে ফেলা এই সমস্যাটিকে সংশোধন করে।

আমি এসএসএএস রিপোর্টগুলির সাথে এই সমস্যাটি নিয়ে আসছিলাম তবে এসএসআরএস সংক্রান্ত নয়। পৃষ্ঠাগুলির পার্থক্যগুলি পরীক্ষা না করা পর্যন্ত আমি কেন বুঝতে পারি না (একজন পরামর্শক এসএসএএস রিপোর্ট করেছিলেন)। তিনি রিপোর্টভিউর উচ্চতা = 60% নির্ধারণ করছিলেন এবং এসএসআরএস রিপোর্টগুলি উচ্চতা নির্দিষ্ট করে না।

আমি একবার উচ্চতা সরিয়ে ফেললে আমার প্রতিবেদনগুলি প্রদর্শিত হয়।


1

উইন্ডোজ সার্ভার 2008 আর 2 এক্স 64 এ এসএসআরএস 2012 এর জন্য একটি কার্যনির্বাহী স্ক্রিপ্টটি হ'ল:

function pageLoad()
{
    var element = document.getElementById("ctl31_ctl09");
    if (element)
    {
        element.style.overflow = "visible";
    }

    if (window.addEventListener) // W3C standard
    {
         window.addEventListener('load', FixSafari, false); // NB **not** 'onload'
    }
    else
        if (window.attachEvent) // Microsoft
        {
            window.attachEvent('onload', FixSafari);
        }
}

function FixSafari()
{
    var element = document.getElementById("ctl31_ctl09");
    if (element)
    {
        element.style.overflow = "visible";  // Default overflow value
    }
}

উপরের সমস্ত প্রস্তাবিত সংস্করণগুলি মোটেই কাজ করছে না।


1

overflow:visibleঠিক করার ক্ষেত্রে একটি সমস্যা হ'ল ভাসমান শিরোনামগুলি সমস্ত ব্রাউজারে ছিন্ন হয়ে যায়। নিম্নলিখিত স্ক্রিপ্টটি ইন্টারনেট এক্সপ্লোরারকে একা ছেড়ে যাবে এবং কেবলমাত্র অ-ইন্টারনেট এক্সপ্লোরার ব্রাউজারগুলিতে এই ফিক্সটি প্রয়োগ করবে। এটির সাহায্যে ইন্টারনেট এক্সপ্লোরার ব্যবহারকারীদের জন্য সমস্ত কার্যকারিতা ধরে রাখা হয় এবং অন্যান্য ব্রাউজারগুলি এখনও প্রতিবেদনগুলি দেখতে পারে view

function pageLoad() {
    var eval = getInternetExplorerVersion();
    if (eval == -1)
    {
        var element = document.getElementById("ctl31_ctl09");
        if (element)
        {
            element.style.overflow = "visible";
        }
    }
}

function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
    var rv = -1; // Return value assumes failure.
    if (navigator.appName == 'Microsoft Internet Explorer')
    {
        var ua = navigator.userAgent;
        var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
        if (re.exec(ua) != null)
            rv = parseFloat( RegExp.$1 );
    }
    return rv;
}

1

আমি পদ্ধতির চেষ্টা করেছি এবং এটি আমার পক্ষে কাজ করেছে, তবে আমাদের সিস্টেম প্রশাসকরা এই পরিবর্তন সম্পর্কে সন্দেহ প্রকাশ করেছিলেন।

উচ্চতায় 100% এ সেট করার পরিবর্তে ReportViewer, আমি একটি নির্দিষ্ট উচ্চতা ব্যবহার করেছি এবং এটি ইন্টারনেট এক্সপ্লোরার এবং ক্রোমের জন্য আমার অ্যাপ্লিকেশনটিতে কাজ করতে সক্ষম হয়েছিল।


1

ক্রোমে প্রতিবেদন প্রদর্শনের সাথে আমার কোনও ভাগ্য হয়নি। মাইক্রোসফ্টের বেশিরভাগ ডকুমেন্টেশনও এটি তালিকাভুক্ত করে না তাই আমি ধরে নিয়েছি ক্রোমের অবশ্যই এএসপিতে কোনও কিছুর অর্থ ব্যাখ্যা করতে সমস্যা হবে।

দেখুন রিপোর্টিং সার্ভিস ও বিদ্যুত্ দেখুন জন্য ব্রাউজার সাপোর্ট

আমি ক্রোম 11 চালাচ্ছি এবং আপনার মত একই ব্যবহার আচরণ করব।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.