Replied 4 August 2017, 2:41 pm EST
Think of your detail section as just on record from you database, i.e. the six fields, Fist & Last Name, City, Fax & Phone numbers. This detail section will repeat as many times as you have records in the recordset.
Now you want to display 4 records/details per page, in a 2 row and 2 column format, so you will basically have 4 cells, assuming you are using 8.5 x 11 paper and using half inch margins with zero column spacing. I would size each cell/record/detail to a quarter of the avaiable space, 3.75 x 5 inches or 5,400 x 7,200 twips and set both CanGrow and CanShrink to false and your columncount set to 2 and direction to downacross.
Now I would place six textbox/field controls in the detail section, one for each field in your recordset. Size them according to your needs with whatever multiline functionality that you need, just remember the detail section itself will not expand.
Now setup your code to run the unbound portion of the report and feed your recordset (or array) via the FetchData and DataInitialize events.
That should do the trick, if you are still having issues with the columns you could try using the following code example...
<font face="Courier New"> Private Sub Detail_Format()
Static intCol As Integer
Static intPage As Integer
intCol = intCol + 1
If intPage >= 2 Then
Detail.NewPage = ddNPBefore
intPage = 0
ElseIf intCol > 2 Then
Detail.NewColumn = ddNPBefore
intCol = 0
intPage = intPage + 1
Detail.NewColumn = ddNPNone
Detail.NewPage = ddNPNone