Onderdelen op factuur laten zien, alleen als ze van toepassing zijn

Status
Niet open voor verdere reacties.

danielmolenaar

Gebruiker
Lid geworden
15 jun 2010
Berichten
18
Beste Helpmij-leden,

Ik zit wederom met een vraag. Ik heb een facturatiesysteem (orderverwerking) en ik moet van mijn opdrachtgever de volgende functie implementeren:

Op de factuur staat ook de korting vermeld die de klant krijgt. Nu wilt mijn opdrachtgever dat ik alleen de korting op het formulier laat zien als het van toepassing is. Als een klant dus geen korting krijgt, mag het veld Korting ook niet te zien zijn op de factuur.

Hoe krijg ik dit voor elkaar?

Alvast vriendelijk bedankt :)

Mvg,
Daniel
 
Laatst bewerkt:
In je rapport kun je (bijvoorbeeld met Voorwaardelijke Opmaak) het veld zichtbaar of onzichtbaar maken. D.w.z.: met V.O. maak je het veld niet echt onzichtbaar, maar je kunt bijvoorbeeld de tekstkleur wit maken, als de waarde 0 is.
Andere optie: via VBA het veld (en nu wel echt) onzichtbaar maken bij de gebeurtenis <Bij opmaken> van de Detailsectie.
 
Wederom vriendelijk dank Michel.

Hier kan ik weer verder mee.

Met vriendelijke groet,
Daniel
 
Toch nog 1 vraagje,

Ik snap het idee wat je had met de Voorwaardelijke Opmaak, dat de tekst dan wit kleurt (dus niet te zien is op een witte achtergrond.)
Wat ik alleen bedoelde (een beetje verkeerd verwoord denk ik, mijn excuses), is dat het label "Korting" in de Koptekst ook niet te zien mag zijn. Wat er namelijk gebeurt is dat als ik nu dus aangeef dat als de waarde 0 is, de tekst dan wit kleurt, het label "Korting" nog steeds in zwarte kleur in de koptekst staat. Dit mag alleen ook niet.

Om nog even samen te vatten:
Ik heb een factuur met kop en voetteksten. In de koptekst staan alle labels (Prijs, Artikel, Aantal, Korting e.d.) en in het Details deel van de factuur, staan de desbetreffende velden. Nu wil ik dat als er geen korting is, het label en het veld "Korting", alletwee niet te zien zijn.

Bij voorbaat dank.

Met vriendelijke groet,
Daniel
 
Daar was ik al bang voor :confused:
In dat geval moet je terugvallen op VBA, omdat je het label (en dan dus ook maar gelijk het tekstvak) niet met Voorwaardelijke Opmaak kunt opmaken.
Je krijgt dan zoiets:
Code:
Private Sub Details_Format(Cancel As Integer, FormatCount As Integer)
If Nz(Me.Brevet_Type, "") = "" Then
    Me.Brevet_Type.Visible = False
    Me.Bijschrift34.Visible = False
Else
    Me.Brevet_Type.Visible = True
    Me.Bijschrift34.Visible = True
End If
End Sub
 
Uit deze code maak ik op dat het label het en tekstvak totaal onzichtbaar worden als er geen korting is. Is het "type_brevet" dan het tekstveld en "Bijschrift34" dan het label?

Mvg,
Daniel
 
Heb je inderdaad goed gezien. Overigens maakt het in dit geval niet zoveel uit wat wat is; zowel een tekstveld als een label kun je verbergen of tonen. Me de regel IF(Nz([Tekstveld];"")="" check je of je tekstveld leeg is. Als dat waar is, worden het tekstveld en het label onzichtbaar gemaakt. Anders dus zichtbaar. Met Me. vraag je objecten op uit je formulier. Hierdoor hoef je maar een paar letters van de objectnaam te typen om het juiste object te kunnen kiezen. Als je slim bent, geef je tekstvelden, labels etc. dan ook zinvolle namen; een naam als Bijschrift34 is uiteraard niet heel erg verhelderend...
 
Ik wil je bedanken michel, ik heb het nu eindelijk voor elkaar gekregen.
Bedankt voor de uitleg van de code :)

Mvg,
Daniel
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan