I need to create a report tool with a print preview capability and ability to print a very simple report (not html,word or excel) that would print straight to the printer after the user had a chance to preview it and move around the objects dynamically (maybe in the same preview window) and am currently failing to see anything that comes standard with LV8.2. I'm talking about creating a WYSIWIG (what you see is what you get) type of report with an ability to rearrange items on the screen and then doing a print preview with movable page borders, zooming, etc. I was thinking of using some .NET classes but am not allowed b/c we'd have to include the framework or make users download it (ppl with win2k machines) which is a problem and cannot be considered.
Anyway, I was wondering if anyone can recommend any good 3rd party reporting package that's ActiveX compatible or any recommendations would be greatly appreciated.
Hey romulus, I believe that this could be accomplished with LabVIEW, but it definitely would not be a quick and easy application. It would require event structures to know when the user interacted with the page, and possible some ActiveX calls to display the data. If you want to pursue using LabVIEW, we'll be happy to help along the way 🙂
I'm only adding this for future reference - this question was cross-posted to LAVA and discussed there in detail (link). You can tackle this problem very well using NI DIAdem. Here's a video showing how this works.
Unfortunately you need to install DIAdem to use that VI. Ultimately you have to buy it, that would be OK if not for the steep cost of User run time licensing. This is a nice lure, but unfortunately there's always a hook at the end.
I see your point. The runtime licensing doesn't always work to our
advantage. May I ask whether you found the solution you were looking for?
Even if I might not like the answer
Unfortunately no and am struggling to do so. This is one of those times when you have bad thoughts about LV. I do like the built-in print preview included with LV. Is there any way to modify that or at the least call the preview function programatically?!
I guess the closest thing we got are the VI Server methods "Get Image"
and, more importantly, "Get Image Scaled". The latter is used
internally to feed the "Navigation Window" (Ctrl-Shift-N). The "Image
Data" output can be converted into all kinds of graphic files, or
displayed in a picture control. Given what all the picture control can
do (e.g. when reacting to mouse events), you might be able to use that
as a basis for your solution.
I wouldn't know that we have programmatic access to that dialog.
Implementing something similar based on the picture control and the
methods mentioned above should be pretty straightforward though. You
would basically use a picture control that redraws everytime the "Panel
Resize" event for "<This VI>" gets triggered. Utility functions
for all kinds of tasks related to the picture control can be found all
over vi.lib\picture.