The coresuite designer Layouts are printed slow. What are the reasons?
- A) Printerdriver can not handle GDI (Graphics Device Interface) output nicely.
- B) Big pictures >1MB (logo) in the layout.
- C) The documents gets collected into printjobs (multiple documents gets rendered before printing).
- D) The machine CPU Power or RAM is insufficient.
- E) The usage of LD.QueryData("SELECT ...").
A) Printerdriver can not handle GDI output nicely
- Start the printing.
- Open the coresuiteDebugLog.xml (Windows->Start->Run->%temp%->ENTER) and search for the term “Spoolertime”. This indicates how long it takes to submit the job to the spooler (printer).
- If this value is high install the so called FinePrint – Tool (http://fineprint.com/fp/).
- Start printing again using the FinePrint Printer (adjust Layout Definition).
- Check the value in the coresuiteDebugLog.xml again and compare if it’s better. If yes go ahead with the solution.
- Install newer/faster printerdrivers.
- Also check if there is an GDI optimized printerdriver available. If yes use this one.
B) Big pictures >1MB (logo) in the layout
- Create a backup of the layout. (Open the Layoutdefinition -> CTRL-D to duplicate the layout)
- Open the layout. Check for big pictures or pictures that load files dynamically (Property FullPath in the AdvancedPicture).
- Remove all pictures.
- Save the Layout.
- Print again.
- If it’s faster go ahead with the solution.
- Use smaller pictures/logos in your layout.
- Also check if there is an GDI optimized printerdriver available.
- Set the BUFFERING settings to TRUE to buffer the pictures from the hard-drive. Uses more RAM but does increase render speed. (Layoutdefinition -> Open Designer -> Choose the picture box -> Properties -> Buffering)
C) The documents gets collected into printjobs
- There are no troubleshooting steps as the described behaviour is a feature. But it can be disabled as it is described in the solution.
- To disable remove the Parameter AttGroup from your SelectGrid which is responsible for any grouping.
D) The machine CPU Power or RAM is insufficient
- Obviously install more RAM or use a faster machine.
E) The usage of LD.QueryData("SELECT ...")
- Check if the function LD.QueryData() is used in the layout.
- If it is used in the layout, check the single queries how time consuming they are. Consider that especially in rows this function is extremely dangerous, it will be called per each line once to twice.
A little help to find LD.QueryData() in the layout
- Open the layout in the designer.
- Click on "File" -> "Save as".
- Save on desktop as an xml-file.
- Open the xml-file in notepad and search for "QueryData".
- Create new data sources on the Layout Definition instead of LD.QueryData() .