We have an application that saves comments in multiple 40 character 'chunks' in the format Project#,Seq#,Comment(40 Char). I need to be able to read multiple rows, concatenating the Comment until I either hit EOF or a blank line. Blank lines indicate the end of a 'paragraph'. There can be many 'paragraphs', but I only want to print the first 4.
ACTUAL RECORD CONTENTS (COMMENTS)
1-1-08 FREQUENT SNOW STORMS HAVING SOME
IMPACT ON THE SCHEDULE. MASONRY
STARTING WORK QUALITY LOOKS GOOD.
12-1-08 WORK PROGRESSING ON SCHEDULE.
INTERIOR STUD WORK BEGINNING. DUCTWORK
BEGINNING. RESOLUTION OF LAND
AQUISITION STILL BEING WORKED BY REAL
ESTATE WITH UDOT.
11-1-08 WORKING ON AGREEMENTS WITH
ROCKY MOUNTAIN POWER AND QUESTAR FOR
ELECTRICAL AND GAS SERVICE. WORK
PROGRESSING ON SCHEDULE. STEEL ERECTION
NEAR COMPLETION. CONCRETE SLAB WORK IN
PROGRESS.
10-1-08 STEEL ERECTION CONTINUES.
UNDERGROUND UTILITIES IN PROGRESS. A/E
STILL WORKING WITH BUILDING OFFICIAL TO
GET STAPMPED PLANS FOR CONFORMED SET.
9-1-08 STEEL ERECTION IN PROGRESS.
PROJECT ON SCHEDULE. NOW NEGOTIATING
FINAL BUDGET EXPENDITURE CHANGE ORDER.
8-1-08 VALUE ENGINEERING SESSIONS TO
BRING PROJECT CLOSER TO BUDGET.
CONSTRUCTION CONTINUES AGRESSIVELY.
SITE WAS FLOODED WITH RAIN STORM TWO
WEEKS AGO. REAL ESTATE WORKING WITH
UDOT TO GET PROPERTY TRANSFERRED.
7-1-08 MAT FOOTINGS NEAR COMPLETION.
FINAL BID PACKAGE ON JULY 16TH. SITE
UTILITIES NEAR COMPLETION.
=====================================================
DESIRED OUTPUT
1-1-08 FREQUENT SNOW STORMS HAVING SOME IMPACT ON THE SCHEDULE. MASONRY STARTING WORK QUALITY LOOKS GOOD.
12-1-08 WORK PROGRESSING ON SCHEDULE. INTERIOR STUD WORK BEGINNING. DUCTWORK BEGINNING. RESOLUTION OF LAND AQUISITION STILL BEING WORKED BY REAL ESTATE WITH UDOT.
11-1-08 WORKING ON AGREEMENTS WITH ROCKY MOUNTAIN POWER AND QUESTAR FOR ELECTRICAL AND GAS SERVICE. WORK PROGRESSING ON SCHEDULE. STEEL ERECTION NEAR COMPLETION. CONCRETE SLAB WORK IN PROGRESS.
10-1-08 STEEL ERECTION CONTINUES. UNDERGROUND UTILITIES IN PROGRESS. A/E STILL WORKING WITH BUILDING OFFICIAL TO GET STAPMPED PLANS FOR CONFORMED SET.
=====================================================
In Actuate, I accomplished this with a Single Input Filter and the following Actuate Basic code in the Fetch Method:
Function Fetch( ) As AcDataRow
' Concatenate comments before output
Dim arow As AcDataRow
Dim proj As String
Dim seq As Integer
Dim str As string
str = ""
Do
Set arow = Super::Fetch( )
If arow Is Nothing And str = "" Then
Set Fetch = arow
Exit Function
ElseIf arow Is Nothing Then
Set arow = New AcDataRow
arow.setValue("AE_J_CUS_E_Project", proj)
arow.setValue("AE_J_CUS_E_Seq", seq)
arow.setValue(RTRIM$("AE_J_CUS_E_Comm"), str)
Set Fetch = arow
Exit Function
End If
proj = arow.getValue("AE_J_CUS_E_Project")
seq = arow.getValue("AE_J_CUS_E_Seq")
str = str & " "
str = str & RTrim$(arow.getValue("AE_J_CUS_E_Comm"))
Loop While Not isNull(arow.getValue("AE_J_CUS_E_Comm"))
arow.setValue("AE_J_CUS_E_Comm", str)
If gictr < 4 Then
gictr = gictr + 1
Set Fetch = arow
End If
End Function
=====================================================
How can I accomplish this in BIRT 2.3.1

?