Re: New reporting system
So basically we need a script that keeps all options open: if custom script exist - execute ([user dir]/script) else use standard script. if custom template exist - use it ([user dir]/template) else use standard template Fill template with data switch (option-browser) case internal browser: case external browser: The option-browser can be a selection the user can make. I agree we do not want to launch an external browser if we are navigating the accounts. But for reports/invoices it may be an acceptable alternative. And in time when the internal browser gets better the option external browser will not be used anymore. Maybe the script will have to rip some style tags for the template if the browser of choice is internal. I don't know I'm not familiar with the capabilities of the internal browser. There can even be an option in the configuration use standard or use custom if the user wants to see the effect of the standard script/template. With all the individuals on this world removing the reasons why individuals users need to have a customized/non-installed report is in my opinion an idle hope. In my opinion the individuals will customize the script/template, this is a fact. Therefor you have to define the restrictions rather then program for every eventuality. Sun Tzu (the art of war) said: Do not trust on the enemy not attacking but be prepared to encounter him. - Original Message - From: Josh Sled To: two old Subject: Re: New reporting system (Re: Again font size when printing) Date: Thu, 29 Mar 2007 17:17:11 -0400 (EDT) On Thu, March 29, 2007 3:16 pm, two old wrote: First I agree a script should output content to a HTML template. The template would secure the way my invoices or reports look on every update of GnuCash or even an update of the script. There's a separate set of concerns about customizing reports. If we install a revised report as a script + template, and you customize the template in the install location, it'll still get over-written at upgrade time. There are use-cases for both customizing only the template, and more so customizing the whole report (and likely the template). In my experience -- particuarly: customizing bugzilla both before and after they introduced explicit UI templates -- it can be almost as hard either way. Effort is required to revise a report in a way that customized templates are guaranteed to work going forward. Most likely, one wants to enhance the report, and thus the template, which will to some degree invalidate the customized templates as well. It's a pretty standard problem, so I'm not sure that we should do anything more than make it: a/ easier to customize the reports and templates, b/ encourage those customizations to be conditional/config-driven and c/ encourage contribution and thus our re-distribution. Basically: remove the reasons why individuals users need to have a customized/non-installed report that can be overwritten or invalidated. If we can make a script that put content into a HTML template and then launch a web-browser to view and/or print it, this would be a huge step forward. That's an interesting idea ... I'm not sure that it's the best user experience, though, in terms of the interactive refinement of the standard reports... where you change the date range, change the graph parameters, and don't really want to see another spawned browser instance. Moreover, we do support hyperlinking strings (and historically plot/graph elements) with other GnuCash interface elements like accounts registers and customers. In that case, you even more so want the browser embedded for practical/integration concerns. But if we do embed or use a browser component to which we can offload most of the heavy lifting of printing, we should leverage that. Besides that, step one can be developed without interfering with the printing libraries as they are now. I think ... The printing libraries are changing, so we do need to modify gnucash's use of them to stay current with our dependent libraries. The reports are the major consumer of printing services in GnuCash, but there are others. So first of all I'm looking for an understanding of how this printing/reporting/scripting business essentially works. I understand C but I know nothing of Scheme. Nevertheless maybe I can make a start For the existing code, there is some documentation in the source tree; in short... The report (a scheme script) is evaluated; it calls on the gnucash-provided reporting system to install itself into the report list and menu. When the menu item is invoked, a report-defined callback is called to generate a (html) document, which is then rendered in the gnc-plugin-page-report window, using gtkhtml. The report also defines an operation generator (another callback function
Re: Again font size when printing (reporting system help!!!)
Thanks for your replays. Exporting to HTML is not really working for me. Well it is working for reports but basically I have the same problem with invoices etc. Since I have a small business I want to send lots and lots of invoices :-) It sounds like a challenge. Is there a place where I can read some of the discussion about the reporting system and the thoughts the dev have? Thanks again. Rob. - Original Message - From: Derek Atkins To: two old Subject: Re: Again font size when printing (help!!!) Date: Wed, 28 Mar 2007 11:45:01 +0200 Hi, two old writes: I have searched the net and the mailing list and all I get are unanswered questions. Try this or try that, sometimes it works, sometimes it won't. I have even found a posting of programmers saying they are giving up on this problem. Yes I tried to change print-session.c no luck, it will not work. As far as I can tell, print-session.c is for checks. I'm not sure it's used for reports.. But honestly, I don't know. The report code was all written SO LONG ago that NONE of the current developers really know it well. Indeed, most of the developers want to rewrite the whole reporting subsystem. But this is a MAJOR undertaking, and might need to pull in yet more dependencies. There was even a discussion on changing over to Gecko, but that would make gnucash depend on mozilla! I'm trying to get this to work for 4 days now and being a small-business owner I really do not have the time to figure this out. Its a shame GnuCash is a really nice program. I like using it, but printing is hell. Indeed. Part of the problem may be GnuCash, but I think other parts of the problem are GtkHTML and GnomePrint, the libraries that GnuCash uses for reporting and printing. Is there anyone how knows exactly how this printing works? Please programmers! I do not want feature X or option Y I just want to get my financial data on a piece of paper and please bear in mind that I'm not blind and my storage is limited, I don't want huge fonts. I suspect the answer to your first question is yes, but more precisely I doubt that any of those people are still reading this mailing list. I do understand your pain. Honestly, what I do when I need to print something from gnucash is export to HTML and then load it into firefox and print from there. I know that my tone of voice probably will not invite you to answer. Sorry for that, I need to get my frustration out. I'm feeling much better now thanks :-) No problem. I DO feel your pain! Now my questions. When I push the print button what happens? Which files are used and in what order? Where are the variables located? And naturally where besides print-session.c are font sizes defined? Umm... I dont know. Sorry. Maybe another dev can answer you. Thanks, Rob (2old). -derek -- Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory Member, MIT Student Information Processing Board (SIPB) URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH [EMAIL PROTECTED] PGP key available ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
New reporting system (Re: Again font size when printing)
Hello Josh, Please, bear with me I'm new to this type of developing so maybe I say things that are stupid or offensive. Sorry for that. First I agree a script should output content to a HTML template. The template would secure the way my invoices or reports look on every update of GnuCash or even an update of the script. Second I don't know if and why the printing libraries should be modernized. Maybe the printing libraries should be eliminated all together. But that is not relevant for now. My thought on this is that web-browser developers also put effort into developing printing capabilities of there web-browser, so lets make use of that. My idea is to do step one first and maybe step two later. If we can make a script that put content into a HTML template and then launch a web-browser to view and/or print it, this would be a huge step forward. Besides that, step one can be developed without interfering with the printing libraries as they are now. I think ... Again I'm an end-user and a project manager as a profession so I'm looking towards the end-result more that the fun of doing it ourself, sorry :-) So first of all I'm looking for an understanding of how this printing/reporting/scripting business essentially works. I understand C but I know nothing of Scheme. Nevertheless maybe I can make a start .. Nicely printed invoices are important to me. So any help on how to get started would be appreciated. And as requested the follow up is limited to gnucash-devel. I learn something new every day. :-D Robert - Original Message - From: Josh Sled To: two old Subject: Re: Again font size when printing (reporting system help!!!) Date: Thu, 29 Mar 2007 12:42:04 -0400 (EDT) On Thu, March 29, 2007 5:02 am, two old wrote: It sounds like a challenge. Is there a place where I can read some of the discussion about the reporting system and the thoughts the dev have? I think the IRC logs contain some of that, though we've not talked about it formally much. Over the years, I there are a few aspects that we agree on: - the reports should not have scheme scripts emitting HTML (i.e., (simple-format #f ) or even the (gnc:html-p-element paragraph-content) form we have now, but instead have a script that generates the report content, then applies it to a templated HTML file. - we should modernize our use of the printing libraries, especially as it's moved into gtk in recent times; some of this is already in progress. - (maybe optionally) allowing gecko would get a capable HTML rendering engine, importantly supporting CSS for both display and printing. As yelp already defaults to dep'ing against firefox/gecko, this shouldn't be a huge burden, but I understand that this is a problem for some people. I'm not sure that we care or have time to support both gecko and gtkhtml, however. I could add more detail, but I'm not sure what you're after, exactly. (We should probably limit followups to gnucash-devel.) -- ...jsled http://asynchronous.org/ ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Again font size when printing (help!!!)
Hello , I am really frustrated with the way GnuCash handles the printing of reports. I'm an end-user I don't want to learn Scheme to get what I want. And if I can believe the questions I found in the mailing list there are bunch of us. I have searched the net and the mailing list and all I get are unanswered questions. Try this or try that, sometimes it works, sometimes it won't. I have even found a posting of programmers saying they are giving up on this problem. Yes I tried to change print-session.c no luck, it will not work. I'm trying to get this to work for 4 days now and being a small-business owner I really do not have the time to figure this out. Its a shame GnuCash is a really nice program. I like using it, but printing is hell. Is there anyone how knows exactly how this printing works? Please programmers! I do not want feature X or option Y I just want to get my financial data on a piece of paper and please bear in mind that I'm not blind and my storage is limited, I don't want huge fonts. I know that my tone of voice probably will not invite you to answer. Sorry for that, I need to get my frustration out. I'm feeling much better now thanks :-) Now my questions. When I push the print button what happens? Which files are used and in what order? Where are the variables located? And naturally where besides print-session.c are font sizes defined? Thanks, Rob (2old). ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel