Acumatica: Report Design Different When Printed - acumatica

I noticed that the report's designs preview and printed are different.
I found it that all of the reports are the same.
So I tried to create new test report and notice that background colors are not rendered on print.
How too keep the design when printing?
Design:
+++
Printed:

By default Reports are rendered in HTML mode. As is often the case with HTML, the report as seen in the browser uses a different CSS style then the one sent to the browser print dialog. I'm pretty sure the reason for this is to accommodate printer technology. Printing solid dark backgrounds uses up a lot of ink and text is more legible when it's black text over a white background.
With HTML rendering, browser view and print preview differ to accommodate printer limitations:
HTML was never meant for accurate rendering anyway so I think the CSS change is for the better but if you want exact result just switch to PDF mode which is meant to provide accurate rendering. Print preview should match very closely the PDF rendering in browser when the report is displayed in PDF mode:
It can get tiring to manually switch to PDF each time by clicking the rendering mode button so you can change the default mode in the report configuration:
It is also possible to edit your custom reports or the standard ones so they default to PDF rendering in the browser instead of the current HTML default:
To edit report you will need to install Acumatica Report Designer (it is in Acumatica ERP Windows Installer) and use the EDIT REPORT button and then use Save to Server file menu item in the report designer to save the report modifications:

Have you checked the Background Graphics checkbox in the printing dialog of your printing preview program? It's primarily in the More Settings section.
Please find below example for Google Chrome's dialog:

Related

Chrome Developer Tools -> Source -> Coverage

I used Coverage to identify unused CSS and JavaScript Code on my landing page. This helped tremendously to reduce loading times. But now I experience the problem that when I view my page on a small device there seems to be missing css code (or javascript code not sure about that) for a drop down menu which should transform into a burger menu.
So my question is how does coverage calculate code which is not used. Does it do this just with the current browser view (which probably does not use all css code in case of responsive design?)
If this is true how can I find out whats really not used. Try various resolutions and run coverage several times?
Anyone experience the same problems?
The coverage panel is "live", as you use the page more CSS and JS will be used.
What I mean is that when you first load the page all of the CSS and JS required to render and make interactive that initial view will be highlighted as green and needed. If you then opened your menu that CSS would turn green as it was used. If you never open your menu with the coverage panel running it will not count the CSS as needed.
So because your menu CSS code was not needed when you ran the coverage panel and you removed the CSS for the menu you obviously will have issues.
You are kind of misusing the coverage panel, it is more intended to help you optimise your critical CSS or to find libraries that are completely unused.
If you want to use it to identify CSS and JS that is not used at all you would have to resize the screen to every break point (to account for different screen sizes and the different layouts you use for mobile, tablet etc.), open every menu item, tab to all areas of the site, fill in all the forms, both correctly and incorrectly etc. to ensure all states were covered and the relevant CSS and JS was used.
If you did manage to successfully do the above, that would show you the coverage for one page, but what about other pages? You would have to repeat the process there to ensure you haven't removed a needed style. As you can imagine this is not likely to be successful without mistakes!
Instead you should use the coverage panel to identify items that are required for "above the fold" content as this means you can inline any critical CSS and JS within your initial page HTML and get sub 1 second First Contentful Paint etc. (Yet again you need to resize the screen here to account for different breakpoints, but you do not need to open menus etc.)
Don't use it to try and identify things that aren't used unless you are absolutely certain they will not be needed (for example if there is a whole library included by mistake that does not get used, you can safely remove that.)

How do you embed images into Acumatica Report hyperlinks?

We are trying to incorporate an image within a link on an Acumatica report.
We are very close to getting the result we need with the 2018R2 version and have a strategy for a workaround in the 2018R1 version.
The TextBox control Is the only way we have found so far that will allow for setting a hyperlink within an invoice report definition. We are able to set a background image in the Appearance/Style/BackImage property. The only way we can get the whole image to be clickable is to have text span the whole control which is fine if we can set the text font to use a transparent color. Setting the Appearance/Style/Color seems to be the property to do this however when the report is previewed the font gets overridden and displayed as the standard Hyperlink color. The behavior when the report is rendered as a PDF via Acumatica’s email delivery system the font appears white. See Images for a visual.
Transparent Text in Report Preview
Transparent Text in Rendered PDF
There looks to be an Appearance/StyleName property for the TextBox control is there an underlying CSS file that can be further manipulated to also control the LinkText properties to display the LinkText in a transparent font? If yes is there any documentation that would help with doing this.
The 2018R1 versions and prior do not render a clickable link within a PDF if the above strategy is used. Per the ticket, I opened last week on the topic the only way to get this link is to have the whole URL on a single line.
PDFs rendered from a invoice definition hosting a hyperlink will not create a clickable link
This makes it a challenge to control the placement of the image to be centered as well as having only the space within the first line as being clickable. We have solved this in a different ERP system by having multiple links overlapping a background image also using transparent font. This required us to set the Z order so that the link controls are rendered on top of the back-ground image. The Acumatica Report Designer however appears to not have the ability to control Z order. Any attempt to place a link overtop of an image does not achieve the result we are looking for. If we can get this strategy to work we will likely also use it for the 2018R2+ versions to keep things consistent.
This screenshot depicts the strategy attempted.
Are there any other strategies to meet this requirement?
Thanks in advance.
For Version 2018 R2:
You can use the TextBox->Style->BackImage property to show the image and the NavigateUrl property to set the URL link. Html mode doesn't display back image but PDF mode will display it fine and the image link works:
For Version 2018 R1:
Unfortunately I didn't find a way to achieve this because I can't get the text to render transparent when it is located over an image.
There is z-order control (bring to front/send to back) in the report designer toolbar and right click context-menu. The problem here is that while the report designer supports overlapping control the report renderer doesn't. If controls are overlapping, when printing the report the overlapping controls won't get rendered on top of another like they are in the designer.
Having overlapping controls isn't really required here because we can display the image with the Textbox Style->BackImage property or with the Report->Style->BackImage.
It's also possible to make text font size bigger so you don't need multiple text box or set multiline=true with textwrap=false and repeat link on each line.
But the main issue remains rendering transparent text over an image. I couldn't find a way to do that. When there's an image under the text, the text is no longer transparent. That behavior happens for the textbox background image as well as the global report background image. This suggests to me that it might not be possible to put transparent text on top:

Setting italic in RichtText

I am displaying richtext on my web page. and have added an italic text, but it does no show as italic, just normal text.
when I look in developer tool it looks like the xsp.css is setting font-style to inherit but I can't decide what it inherits from.
how can I find out what is causing the italic to not being set correctly?
I created an empty database with a form and an xpage and seem to get the same problem
the result is the same in Chrome, Firefox and IE
In Developer Tools go to the second tab on the right called Computed. Here you can find "font-style" and see what style sheets are used to compute the styling.
Here's an example from an XPages app that uses the OneUI theme:

developing web interface in illustrator; font aliasing

illustrator shows the font/text aliased compared to the way the browser interprets it
the difference is noticeable here
(in chrome:)
the bottom is illustrator, and as you can see, it's a bit bolder and smoother.. is there a setting I can change in illustrator so I can see how it will look when I actually output it to the website ?
if I disable Aliasing artwork, it looks completely off.
this is more evident when the text is bigger, as well.
No, Illustrator has it's own text anti-aliasing modes that differ from what your browser shows you. However, the differences between your examples are minor compared to how different browsers and operating systems render the same fonts.
Preview the image in save for web and devices. (file -> save for web & devices) I'm assuming you're exporting the image traditionally through file -> export, but save for web & devices shows you how the image will look on the web. The reason it looks different is because illustrator is a vector-based design program, unlike photoshop which is bitmap, or pixel based. This means that text in illustrator has infinite resolution until you export it as an image. If you want a cleaner look for text, go to save for web & devices and select "type optimized" from the menu next to the "apply" button on the right side of the screen. Then hit "apply" and then "save".

SharePoint 2010 Publishing Page live preview... any thoughts?

I would like to collect your ideas on the following:
SharePoint 2010 (and 2007) does have a preview button... while you are editing a publishing page you can switch to the "Page" tab and hit the Preview button:
Clicking this button does some magic to save your data, and opens a new window where the preview page is displayed. Nice, but could be better. What I would like is live update on editing of field controls from the edit page on the preview page.
My thoughts on this is are as follows:
Field types have an ID. For rendering the field values on your preview page, subclass from the standard FieldValue control, and render a span with the same ID around the field value html. So if we have the text ABC in the content editable div of a RichTextFiled X, render the field value as ABC in the display output (for example using EditModePanels for Display and Edit)
Add key-stroke event handler on all fields for the edit mode page (using for example jQuery), on key press copy contents from edit browser window to preview browser window
Transfer can be done using http://www.sfpeter.com/2008/03/13/communication-between-browser-windows-with-jquery-my-new-plugin/.
Does this sound doable? Would be great to work dual monitor, edit on one monitor, preview page in its real rendering on the other monitor. Especially if the edit mode differs from the display mode.
Looking forward to your input!
I will answer my own question. It is not as easy as its sounds. Fields can use things like reusable content and render patterns. These features render at server side, and change the output. This would require postbacks, which renders the whole thing useless. Lets stay with the already available preview button.

Resources