Ik heb, voor de zoveelste keer, weer eens ruzie met Crystal Reports (9, dev. edition)...
Dit is het geval: Ik heb in mijn database een aantal velden, bijv. telefoon, fax, email van een klant. Nu wil ik als er iets in die velden staat dat CR er "tel. " voor zet, of "fax. ". Ik weet dat ik gewoon een los text-object voor het field kan zetten op mijn report met die tekst er dan dus vast in. Maar ik wil dat als er géén telefoonnummer bekend is, dat "tel. " ook niet weergegeven wordt.
Nu kun je dat doen met een formula field met een formule als:
ik heb voor basic syntax gekozen onder Crystal Reports
De ellende is dat ik zo een hele bult veldjes heb, en ik dus voor ieder veldje dan een formula moet maken. Kan ik niet op de een of andere manier een formula field aanroepen of een functie maken die dit voor me doet? Dus iets van:
En dan op de een of andere manier zo'n db-field er door heen jassen zonder steeds een formula te moeten maken? En zo nee, wat ik dus vrees (hence de topictitel), kan ik dan voor ieder db field een formula maken die mijn prefix functie (formula?) vervolgens weer aanroept in de trend van:
Dat scheelt elke keer die klote IIF en db fieldnamen 2x typen (jaja, of klikken ja...)
Als ik door ga zoals ik het nu heb, dan is het reportje niet erg onderhoudsvriendelijk...
En dan heb ik nog wat "losse flarden vraagjes":
• Kent Crystal geen constanten voor CrLf (vbCrLf) en Tab (vbTab) ofzo? Ik kan wel crPi, crRTFText en nog een whole bunch of useless consts vinden, maar zulke simpele niet
• Als ik een tekstveld laat "groeien" (dus meerdere regels) dan schuiven alle velden eronder niet mee, tenzij ik er een aparte sectie van maak... wat is dat nou weer voor onzin? Mis ik iets?
Ik baal er nu al weer van dat ik in de aanloop van het project niet heb gekozen voor XSL-FO (*hoewel die ook weer zijn nadelen heeft*)
Dit is het geval: Ik heb in mijn database een aantal velden, bijv. telefoon, fax, email van een klant. Nu wil ik als er iets in die velden staat dat CR er "tel. " voor zet, of "fax. ". Ik weet dat ik gewoon een los text-object voor het field kan zetten op mijn report met die tekst er dan dus vast in. Maar ik wil dat als er géén telefoonnummer bekend is, dat "tel. " ook niet weergegeven wordt.
Nu kun je dat doen met een formula field met een formule als:
code:
1
| IIF(Len({tbl_Relaties.rel_Telefoon})>0,"Tel. " & Chr(9) & {tbl_Relaties.rel_Telefoon},"") |
ik heb voor basic syntax gekozen onder Crystal Reports
De ellende is dat ik zo een hele bult veldjes heb, en ik dus voor ieder veldje dan een formula moet maken. Kan ik niet op de een of andere manier een formula field aanroepen of een functie maken die dit voor me doet? Dus iets van:
code:
1
2
3
| function myPrefix(sPrefix, sValue) IIF(Len(sValue)>0,sPrefix & Chr(9) & sValue,"") end function |
En dan op de een of andere manier zo'n db-field er door heen jassen zonder steeds een formula te moeten maken? En zo nee, wat ik dus vrees (hence de topictitel), kan ik dan voor ieder db field een formula maken die mijn prefix functie (formula?) vervolgens weer aanroept in de trend van:
code:
1
| myPrefix("Tel. ", {tbl_Relaties.rel_Telefoon}) |
Dat scheelt elke keer die klote IIF en db fieldnamen 2x typen (jaja, of klikken ja...)
Als ik door ga zoals ik het nu heb, dan is het reportje niet erg onderhoudsvriendelijk...
En dan heb ik nog wat "losse flarden vraagjes":
• Kent Crystal geen constanten voor CrLf (vbCrLf) en Tab (vbTab) ofzo? Ik kan wel crPi, crRTFText en nog een whole bunch of useless consts vinden, maar zulke simpele niet
• Als ik een tekstveld laat "groeien" (dus meerdere regels) dan schuiven alle velden eronder niet mee, tenzij ik er een aparte sectie van maak... wat is dat nou weer voor onzin? Mis ik iets?
Ik baal er nu al weer van dat ik in de aanloop van het project niet heb gekozen voor XSL-FO (*hoewel die ook weer zijn nadelen heeft*)
[ Voor 32% gewijzigd door RobIII op 19-01-2005 16:01 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij