Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

Advice on creating PDF reports containing lots of images

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Advice on creating PDF reports containing lots of images

    Hello. In the past, I've used the Alpha report generator to create columnar text/numeric reports in web apps with no problem. In my current web app, I need to produce PDF files containing catalogs of images (mostly JPGs) and their corresponding descriptions. It's not a complicated report, but it can have anywhere from a few images to several hundred, depending on the user.

    The problem is that the freeform report doesn't orient/rotate the images properly when I generate it as a PDF. It simply uses a default orientation, without regard to how the user may have rotated their mobile device when they captured and uploaded the image. Also, I can't see any way for the PDF generator to properly decode supplementary characters for text stored as utf8mb4 (4-bytes/character instead of 3). Other than that, the report is formatted correctly on the page and contains the desired footers and page breaks.

    If I generate the same report in HTML format, the images are all oriented properly and utf8mb4 characters decode correctly. However, there are no footers or page breaks in the output. In addition, generating a freeform PDF report with a lot of images pretty much takes forever, while the HTML rendering is much quicker. Either way, if there are lots of images to print, I can end up with a 413 error (payload too large) from the server.

    Until now, I was under the impression if I generated an Alpha report as a PDF or as an HTML file, it would look the same and not take an eternity to create. Apparently that is not the case. So I am looking for a more efficient solution to producing PDF files for this application. Because of the orientation issue, it looks like generating as HTML is the only viable alternative in Alpha. And maybe using the "chunked responses" mode and the HTML_TO_PDF function is the answer, but if it is, I still don't know how to embed footers and page breaks in the HTML code at the appropriate spots.

    Would using Alpha's built-in report generator still be your recommended approach in this case or is there a better/easier way? Am I missing some key point here or trying to implement this using the wrong coding for the report? Am looking for some direction or a resource to help me understand how to create a properly-formatted and printable PDF of any size, with images oriented correctly and text properly decoded.

    A few months ago, I submitted a bug report with a test case to Alpha and ended up without any helpful response. I am using the latest Alpha stable release (8867) and publishing to Alpha Cloud. Two sample output files for the same "PrintContent" report are attached, one rendered as a PDF and one as HTML (saved as a PDF). In addition, the attached Xbasic code is used in my callback to create the report.

    I am grateful for any help or guidance you can offer! Thank you!

    ​​
    Attached Files

    #2
    Forgot to upload report component...
    Attached Files

    Comment


      #3
      Here is one option: Off load report generating to a second server and then deliver the PDF via email or Amazon S3. You'd need a runtime license from Alpha (and of course a small server).

      I've developed several apps for various industries where there was some long running process that I needed to separate from the main app (so as not to bog it down). I use Amazon LightSail servers along with an Alpha Runtime license to automate/process all sorts of things: sending emails and SMS, creating large files, misc. database functions and maintenance, and large reports. It's my solution for things that the user doesn't need to see right away. My process then delivers the PDF, files, etc. via email or cloud storage.

      The reports I generate are fairly straightforward text documents with no images so I can't really speak to your image troubles. One alternative to Alpha's report writer is another product called Stimulsoft. However it is quite expensive.

      Lastly, when you submit a bug report make sure you submit the sample files, SQL tables if needed, etc. in a way that Alpha can easily duplicate the bug. I've had really good luck reporting bugs and find Alpha fairly responsive.
      Mike Brown - Contact Me
      Programmatic Technologies, LLC
      Programmatic-Technologies.com
      Independent Developer & Consultant​​

      Comment


        #4
        AA has a report server option.
        https://www.youtube.com/watch?v=XiWDrX0CagY
        Gregg
        https://paiza.io is a great site to test and share sql code

        Comment


          #5
          Thanks for your feedback on this!

          Having additional servers seems like a great option long-term for large-scale use, however, during development as a proof-of-concept I need to come up with a single-server solution. Alpha's Report Server sounds like exactly what I need to accomplish, however, when I looked at that feature under Project Properties just now, it says it is not used when running under IIS or on Alpha Cloud...bummer...

          As for submitting bug reports, yes, I agree Alpha has been very responsive...even to the point where Selwyn created a new function so we could quickly generate and download ZIP files containing a large amount of content. He's taught me quite a lot as I've worked on this project for the past few years. This thing with the image printing has been a tough one, apparently, but I'm confident there is a way to get there. As always, the trial-and-error and the learning process continues...

          Comment


            #6
            I don't think the print server is an additional device.
            I'm 99% certain it's a simple configuration setting but I'm waiting for confirmation from [email protected].
            Gregg
            https://paiza.io is a great site to test and share sql code

            Comment


              #7
              I don't know if this is the answer we're looking for, but it seems to be easy enough to try.
              Capture.png
              Gregg
              https://paiza.io is a great site to test and share sql code

              Comment


                #8
                I wonder if Alphas new Document Templates​ feature is suitable also with pictures. You should test it.

                Comment


                  #9
                  Yes, thanks for the Doc Templates suggestion. I played around with that feature yesterday and found it doesn't present images in the correct orientation either. Today, I'm trying to see if I can get a viewbox to do what I need...

                  Comment

                  Working...
                  X