Box around detail section spanning multiple columns Crystal reports - layout

I would like to layout my report in multiple columns. This is possible. But now i want to create a box around each group and the box should span both columns.
So I would like to create this:
||===============================================||
||GROUP HEADER A ||
||-----------------------------------------------||
||column 1: column 2: ||
||-----------------------||----------------------||
||question_1 answer_1 || question_4 answer_4 ||
||question_2 answer_2 || question_5 answer_5 ||
||question_3 answer_3 || question_6 answer_6 ||
||===============================================||
||===============================================||
||GROUP HEADER B ||
||-----------------------------------------------||
||column 1: column 2: ||
||-----------------------||----------------------||
||question_1 answer_1 || question_2 answer_2 ||
||question_3 answer_3 || question_4 answer_4 ||
||question_5 answer_5 || question_6 answer_6 ||
||===============================================||
Is this possible? If yes how? Multiple column layout in section experts just see two columns as narrow pages. Using the pageheader as groupheader is no option.
Thanks!

I know this answer is way late, but I was experimenting with something similar, and ended up using a series of lines instead of boxes, as follows:
In each Detail section, have a vertical line on the left side of Question 1, and the right side of Answer 1. Right-click the line, and select "Format Line", and check the "Extend to Bottom of Section when Printing" option.
At the top of the Group Footer, draw a horizontal line so that its endpoints touch the vertical lines in the Detail Section.
At the bottom of the Group Header, draw a horizontal line so that its endpoints touch the vertical lines in the Detail section.
At this point you've essentially created your inner boxes around your questions and answers.
While the vertical lines in the Detail Section will be copied over to the second column, the horizontal lines and column headers won't be. Copy the column headers and horizontal bars over to the second column.
Draw vertical bars from the top of the Group Header down to the bottom of the Group footer on the far left and right sides; these will be your outer borders.
The only downside to all this I have seen is that if you have no questions in the second column, you'll still get the "Column 2" caption, and both the Group Header and Group Footer horizontal lines, but there won't be any Detail vertical lines (since there is no content in the Detail section), like this:
||===============================================||
||GROUP HEADER B ||
||-----------------------------------------------||
||column 1: column 2: ||
||-----------------------||----------------------||
||question_1 answer_1 | |
||question_3 answer_3 | |
||question_5 answer_5 | |
||================================================|

Related

pdfplumber - How to extract table with no horizontal lines?

So I have a table like this one, with an unknown number of description lines. Some can have 1, 2, 5, even zero, or more lines:
(I removed all sensitive informations.)
and I use :
with pdfplumber.open("invoice.pdf") as pdf:
pages = pdf.pages
for page in pages:
page.extract_table()
which is does extract all data from the table but the second column it treats as one row.
I want somehow to split the lines of second column (or better all columns) by a small blank row, which so I put it on red rectangles to highlight it.
I know that I need to use table_settings={}, but I can't figure out ... yet, which property (ies), to use ?
What I tried:
print(page.extract_table(table_settings={
"horizontal_strategy": "text",
"snap_y_tolerance": 3,
"keep_blank_chars": True,
}))
Which, again, it splits when he wants ..
So it's possible to extract a mix-borderless table ?

Graph three columns in Excel as one data point

I'm having trouble graphing some data in Excel properly. I have three columns, which are time, name, and value. If I'm just graphing one name, i.e. "speed", my file looks like this
time | data | value
1 | speed | 1
2 | speed | 2
3 | speed | 3
When I try to graph this, it thinks speed is three different things, and graphs as speed 1, speed 2 and speed 3. I instead want a straight line with a slope of 1, called speed, so it recognizes that they're all the same data. Ideally, I could add in extra data names such as acceleration, and it would treat all of those the same too.
In Excel 2007: Go to insert --> Scatterplot and create the chart type "Scatter with smooth lines".
Give a mouse right click on the chart and pick "Select Data" option.
Click on Add series button and place "Series X values" as the range of values in column Time and fill in "Series Y values" with the range data on column Value.
If you have additional rows with data meaning something else than speed, like acceleration you can add a second series to make the second line in the graph.
Example:

Conditional row coloring in PowerBuilder 10.5

I'm using Power Builder 10.5 and I'm having a problem that seems simple at first, but can't get near the solution.
Is it possible to color rows differently depending on a condition? I have a select statement that retrieves numerous rows, that have different status: status A means the row is active, ERR that something is wrong, F that is finished, and so on...
What I need is the color of the column with status "ERR" to be red, and the color of the column with status "A" to be green. All else columns may be white.
I can do only half the job at the moment. I've added a dummy field in my Data Window, called "color". For all the cells I've written this in the design view, background color properties..
IF ( color =1, 65280, 16777215)
Now I move to the clicked event of my OK button where I retrieve data...
dw_1.Retrieve()
FOR ll_=1 to dw_1.RowCount()
ls_status=dw_1.GetItemString(ll_,"status")
IF ls_status='A' THEN
dw_1.SetItem(ll_, 'color', 1)
ELSEIF ls_status='ERR' THEN
??????
END IF
NEXT
The part with question marks is where I can't move forward. This highlights all my rows where status is "OK" green, but I can't seem to get the error ones red. I've tried manipulating the code in background color properties (trying to give him a condition if color=2), but I just keep getting the "Expression not valid" message.
Modify method also didn't help me much, as I can't seem to make him color only does rows with "ERR" status using Modify method.
Any advice will help.
You should set your 'color' column in the SQL statement itself.
SQL something like
CASE status WHEN 'ERR' THEN 'R' WHEN 'A' THEN 'G' END
Then in an expression on the background color of the columns of your datawindow you can put something like
if (color[0] = 'R', RGB(255,0,0), if (color[0] = 'G', RGB(0,255,0), RGB(0,0,0)))
In the datawindow properties of the object or band, go to the background tab. The Color property has a little button with an equal sign (=) on it. Click that and write an expression to derive a RGB value based on the value of a column.
I wrote an article about this stuff here: PBDJ Article
You can use case statements in the computed property. Something like this:
case( status when 'ERR' then RGB(255,0,0) when 'A' then RGB(0,255,0) else RGB(0,0,0) )

How do I limit the number of columns of a basic table field?

I have a basic table field.
I only need three columns but it displays more.
How do I limit it to three?
And how do I set the width of the columns?
If you have a 600 pixel wide field named "Data" with tab delimited data;
set the tabStops of field "Data" to "200,400,600"
will set the column widths. The last tab stop at 600 throws any content beyond the third column outside of the visible area of the field.
set the tabStops of fld "Data" to 100,0,150,0,0
will hide column 2 and 4, 5, 6, ..., n.
If you want to hide the column, set it's width to 0. If the last parameter is 0 then the rest of columns will be not visible, and it'll be missing vertical line of last visible column. If you want vertical line after last field, add additional 0 [set ... to 100,0,200,0,0]

How to draw a "Line with Markers" graph like this?

Please view this image (focus to red around area):
I cannot get it to work with the letters, but I can get it to work with numbers (=CODE(A1)-CODE("a")+1):
UPDATE after reading Jean-François's answer (but on another computer):
Added a second series just for the custom labels
Show data labels for the new series
Explicitly set the Y axis minimum at 0
Deleted the original X axis labels
Deleted the legend entry of the second series
A few more steps and we're there:
multiplied the X axis values by 10, to adjust granularity for positioning stuff
subtracted 5 for series1 values, to get the data in the middle between major tick marks
played with series2 values, to get the labels also in the middle between major tick marks
Here's an easier way.
Set up the data like this:
Select the first two columns (blue) and insert a column chart (zero value columns do not appear):
Select and copy third and fourth columns (red), select the chart, Paste Special as new series, check first column and first row boxes (it's added as another column):
Right click new column series, choose Change Series Chart Type, and select the XY with Lines style:
Right click XY series, choose Format Data Series, change to Primary Axis:

Resources