سؤال

هل أي شخص من أي وقت مضى تجد وسيلة للحصول على تقرير تحكم عارض مايكروسوفت (الويب) للعمل من داخل UpdatePanel اياكس؟

هل كانت مفيدة؟

المحلول

والسبيل الوحيد هو حقا لخلق إطار iframe مع التقرير في وجود IIRC. ومع ذلك، هذا المنصب هنا يدعي الرجل لديه وسيلة لإصلاحه مع بعض التعليمات البرمجية. ولو ط havnt حتى حاول هذا الأمر لم يكن لدي حاجة لإظهار أي من تقاريري في لجنة التحديث. أنا أميل للحفاظ على تقاريري خارجي من أي تطبيقات اياكس، على سبيل المثال عندما يتم طلب تقرير سوف تفتح نافذة جديدة فقط مع التقرير. بلدي المستخدمين مثل ذلك أفضل على أية حال.

نصائح أخرى

وأنا إصلاح هذا الخطأ باستخدام

وعارض التقرير مايكروسوفت 2010 القابلة لإعادة التوزيع من:

HTTP: // شبكة الاتصالات العالمية .microsoft.com / تنزيل / details.aspx؟ displaylang = أون وFamilyID = a941c6b2-64dd-4d03-9ca7-4017a0d164fd

وبعد ذلك تغيير التكوين على شبكة الإنترنت على النحو التالي

من

        <assemblies>                <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />                <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />                <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />                <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />                <add assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />                <add assembly="Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />            </assemblies>
        <assemblies>

            <add assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />

            <add assembly="Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />

        </assemblies>

إلى

  <assemblies>

    <add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

    <add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

  </assemblies>

وهذا إضافة إلى وقت التشغيل

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

  <dependentAssembly>

    <assemblyIdentity name="Microsoft.ReportViewer.WebForms" publicKeyToken="b03f5f7f11d50a3a"/>

    <bindingRedirect oldVersion="9.0.0.0-9.1.0.0" newVersion="10.0.0.0"/>

  </dependentAssembly>

</assemblyBinding>

ولم يحاول حقا، ولكن أنا متأكد من أن السيطرة لا تعمل على الفور. وأنا متأكد من أنه يحتاج إلى تحميل بعض جافا سكريبت إضافي، لأنه يضيف الكثير من التعقيد، لذلك قد تحتاج إلى تحميل تلك قبل تحديث لوحة.

ويمكنني أيضا التأكد من أن أحدث إصدار (2010) المذكورة في الوظيفة السابقة بتصحيح المسألة. كما أنه يزيل الحاجة إلى وضع صراحة AsyncRendering = خطأ: وأذكر هذا لأن اقتراحات أخرى هناك على شبكة الإنترنت تقول لتحديد تلك القيمة على تلك الممتلكات

وإليك exemple:

<asp:Button ID="Button1" runat="server" OnClick="ViewReport_Clicked" Text="View Report" SkinID="ButtonA" />
<asp:UpdatePanel ID="TFD_UP" runat="server">
    <ContentTemplate>
        <rsweb:ReportViewer ID="ReportViewer1" runat="server" SizeToReportContent="True"
            Height="202px" Width="935px" Font-Names="Verdana" Font-Size="8pt" InteractiveDeviceInfos="(Collection)"
            WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt" Visible="false">
            <LocalReport ReportPath="Reports\Report4.rdlc">
                <DataSources>
                    <rsweb:ReportDataSource DataSourceId="SqlDataSourceArchiSpecs" Name="Proc_TechFilesDownloadsDataSetParent" />
                </DataSources>
            </LocalReport>
        </rsweb:ReportViewer>
        <asp:SqlDataSource ID="SqlDataSourceArchiSpecs" runat="server" ConnectionString="<%$ ConnectionStrings:ArchiSpecsDBConnectionString %>"
            SelectCommand="PROC_TECHNICALFILES_DOWNLOAD_DETAILS" SelectCommandType="StoredProcedure">
            <SelectParameters>
                <asp:Parameter Name="supId" Type="Int32" />
                <asp:Parameter Name="startDate" Type="DateTime" />
                <asp:Parameter Name="endDate" Type="DateTime" />
            </SelectParameters>
        </asp:SqlDataSource>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
    </Triggers>
</asp:UpdatePanel>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top