Hallo nochmal,
in meinem Rechnungsbericht gibt es ein Feld Bezeichnung. Dieses Feld kommt aus dem gleichnamigen Feld der Rechnungsdetails. Wenn nun ein längerer Text eingestellt wird, möchte ich, dass das Feld im Bericht mehrzeilig wird. Im Moment wird so ein rotes Dreieck angezeigt, dass der Text länger ist als das Feld.
Welche Einstellungen sind möglich?
Mehrzeiliges Textfeld im Bericht
Moderator: Moderatoren
Mehrzeiliges Textfeld im Bericht
Viele Grüße aus dem Flammkuchenland
Re: Mehrzeiliges Textfeld im Bericht
Hallo OrionVII,
das ist ein Nachteil, der für den ReportBuilder noch nicht behoben ist. Die Felder haben nicht die Einstellungsmöglichkeit "automatische Höhe". Wenn Du den Bericht allerdings über ein Makro von einem Formular aus startest, dann steht im Handbuch dazu eine entsprechende Prozedur bereit:
Im Handbuch wird noch gezeigt, wie der Bericht unsichtbar im Hintergrund gedruckt wird, ohne überhaupt erst im Writerfenster zwischendurch in Erscheinung zu treten.
Gruß
Robert
das ist ein Nachteil, der für den ReportBuilder noch nicht behoben ist. Die Felder haben nicht die Einstellungsmöglichkeit "automatische Höhe". Wenn Du den Bericht allerdings über ein Makro von einem Formular aus startest, dann steht im Handbuch dazu eine entsprechende Prozedur bereit:
Code: Alles auswählen
SUB BerichtZeilenhoeheAuto
DIM oTables AS OBJECT
DIM oTable AS OBJECT
DIM inT AS INTEGER
DIM inI AS INTEGER
DIM oRows AS OBJECT
DIM oRow AS OBJECT
oReport = ThisDatabaseDocument.ReportDocuments.getByName("Berichtsname").open
oTables = oReport.getTextTables()
FOR inT = 0 TO oTables.count() - 1
oTable = oTables.getByIndex(inT)
IF Left$(oTable.name, 6) = "Detail" THEN
oRows = oTable.Rows
FOR inI = 0 TO oRows.count - 1
oRow = oRows.getByIndex(inI)
oRow.IsAutoHeight = True
NEXT inI
ENDIF
NEXT inT
END SUB
Gruß
Robert
Re: Mehrzeiliges Textfeld im Bericht
Zusammen mit dem Makro Filtern_und_drucken sieht das dann so aus:
Sauber, danke...
Code: Alles auswählen
SUB Filtern_und_Drucken
DIM oDoc AS OBJECT
DIM oDrawpage AS OBJECT
DIM oForm AS OBJECT
DIM oFeld AS OBJECT
DIM oDatenquelle AS OBJECT
DIM oVerbindung AS OBJECT
DIM oSQL_Anweisung AS OBJECT
DIM oTables AS OBJECT
DIM oTable AS OBJECT
DIM inT AS INTEGER
DIM inI AS INTEGER
DIM oRows AS OBJECT
DIM oRow AS OBJECT
DIM stSQL AS STRING
oDoc = thisComponent
oDrawpage = oDoc.Drawpage
oForm = oDrawpage.Forms.getByName("MainForm")
oFeld = oForm.getByName("RechnungsID")
oDatenquelle = ThisComponent.Parent.CurrentController
If NOT (oDatenquelle.isConnected()) THEN
oDatenquelle.connect()
END IF
oVerbindung = oDatenquelle.ActiveConnection()
oSQL_Anweisung = oVerbindung.createStatement()
stSql = "UPDATE ""tblFilter"" SET ""Integer"" = '"+oFeld.GetCurrentValue()+"' WHERE ""ID"" = TRUE"
oSQL_Anweisung.executeUpdate(stSql)
oReport = ThisDatabaseDocument.ReportDocuments.getByName("rptRechnung").open
oTables = oReport.getTextTables()
FOR inT = 0 TO oTables.count() - 1
oTable = oTables.getByIndex(inT)
IF Left$(oTable.name, 6) = "Detail" THEN
oRows = oTable.Rows
FOR inI = 0 TO oRows.count - 1
oRow = oRows.getByIndex(inI)
oRow.IsAutoHeight = True
NEXT inI
ENDIF
NEXT inT
END SUB
Viele Grüße aus dem Flammkuchenland