Solved

Response.Write from within a class module

Posted on 2008-10-23
6
287 Views
Last Modified: 2012-05-05
I've build an VB class module that gathers data for a report, creates a PDF image of the finished report, and then attempts to issue a Response.Write statement to open the PDF report as follows:
        Response.Write("<script>window.open('" & HttpPath & "',target='_blank');</script>")
This causes 'Name Reponse is not Declared' to display and the project will not compile.

Looking at article I found here on Expert Exchange, I attempted the following code:
        Dim app As HttpApplication
        app.Context.Response.Write("<script>window.open('" & HttpPath & "',target='_blank');</script>")
This statement fails saying that app is a null reference.
I just can't seem to win here!

Can someone please tell me how to accomplish, what seems like should be, this simple task.

Thank you, Herb



0
Comment
Question by:stullhe104
  • 4
  • 2
6 Comments
 
LVL 17

Expert Comment

by:Daniel Reynolds
ID: 22788644
You will need to pass the application response object to the class from the calling web page.

By doing this, you get the current context of the response object.
0
 

Author Comment

by:stullhe104
ID: 22788716
That sounds easy enough. Can you give me an idea of what the code would look like to call the class?
I should think that the function I am calling within the class would look something like this:
    Public Shared Sub generateTechEvalReport(ByVal app As HttpApplication)

But what does the code look like to call this?
   generateTechEvalReport(?)

0
 
LVL 17

Expert Comment

by:Daniel Reynolds
ID: 22788787
You can even just pass the response object.
My example is in C#, but this should give you an idea

ombbt is a class that needs to use the response object

        ombbt.GenerateReport(Response);

        public void GenerateReport(HttpResponse parentResponse)
0
Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 17

Accepted Solution

by:
Daniel Reynolds earned 250 total points
ID: 22788803
generateTechEvalReport(Response)  ' should do it
or
generateTechEvalReport(Application)  ?  typing from memory here
0
 

Author Closing Comment

by:stullhe104
ID: 31509315
Hot dam... you don't know how long I've been trying to figure this out. It's been frustrating.

Thanks for coming through. This will help me a lot!

One quick follow up question... I noticed that when I do the response.write to open a new window and display the report that the webpage in the existing window of my application gets distorted by way of the images and text being larger.
Any idea why that happens?

Thanks again.. Herb
0
 
LVL 17

Expert Comment

by:Daniel Reynolds
ID: 22788902
sorry, not sure why the distortion.

Glad that helped.
Dan
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In an ASP.NET application, I faced some technical problems. In this article, I list them out and show the solutions that I found.  I hope it will be useful. Problem: After closing a pop-up window, the parent page should be refreshed automaticall…
ASP.Net to Oracle Connectivity Recently I had to develop an ASP.NET application connecting to an Oracle database.As I am doing it first time ,I had to solve several problems. This article will help to such developers  to develop an ASP.NET client…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question