Ik ben een rapport aan het maken, waarbij er bij een gekozen project een element moet worden weergeven. Dit op zich is niet moeilijk, maar ik wil er teksten tussen doen, waarbij een voorwaarde gecreerd wordt waar een element aan moet voldoen.
Bijvoorbeel:
Kast
element 01.10.0100
element 01.10.0200
Bekabeling
element 01.20.0100
element 01.20.0200
Als in het element *.10.* voorkomt dan moet het element worden weergeven onder kast en als het element *.20.* moet het element worden weergeven worden onder bekabeling. Daarnaast moet element *.10.0000 worden uitgesloten.
Het zijn dus eigenlijk twee tabellen, dus naast element komt nog een omschrijving, datum etc.
Dit is wat ik nu heb gecreerd, maar dit functioneert nog van geen kanten:
"Project Element".SETRANGE("Project No.", Job."No.");
IF "Project Element".FIND('-') THEN BEGIN
IF STRPOS("Project Element".Element,'.10.') > 0 THEN
elementkast := "Project Element".Element;
omschrijvingkast := "Project Element".Description;
END ELSE BEGIN
IF STRPOS("Project Element".Element,'.20.') > 0 THEN
elementbekabeling := "Project Element".Element;
IK weet niet of het nodig is om de element steeds een ander naam te geven (elementkast en elementbekabeling) en of je dit ook bij de velden moet doen die erbij horen.
Ik hoop dat het een beetje duidelijk is, in ieder geval alvast bedankt voor de hulp
0
Comments
Dit is niet zo moeilijk maar het is wel moeilijk om uit te leggen, zeker omdat mijn Nederlands hard aan achteruit gaan is. ](*,)
Ik zou zeker kijken is of het mogelijk is om een tijdelijk (temporary = Yes) record variabele te definieren met de "Project Element" als de tabel.
Dan kan je deze tabel gebruiken om tijdelijk je gegevens in op te slaan. Ik zou dan het veld "Project No." misbruiken om "Kast" of "Bekabeling" in op te slaan en dan de rest van dit record zou een kopie kunnen zijn van het originele element record.
De sleutel van zo'n tijdelijk record zou er dan alsvolgt uitzien:
1. Project No. : "Kast"
2. Element. No. : "01.10.0100"
Dan kan je deze tabel gebruiken als een dataitem in een rapport sectie.
Je kan deze tijdelijke tabel als volgt vullen:
Ik hoop dat dit je op de goede weg zet.
Met vriendelijke groet,
Willy
Bedankt voor je reactie, ik zal het binnenkort (waarschijnlijk volgende week) eens uittesten.
Met je nederlands is trouwens weinig mis.
Het werkt nog niet echt. Voorlopig blijft het rapport pagina's creeren. Wat heb ik gedaan. Ten eerste heb ik onder dataitems een integer aangemaakt die hangt onder project. (Volgens mij moet ik hier nog een koppeling maken met de tijdelijke tabel in c/al code). In deze integer heb ik bij de code jouw code geplakt:
Integer - OnPreDataItem()
TijdelijkElement.RESET;
TijdelijkElement.DELETEALL;
"Project Element".SETRANGE("Project No.", Job."No.");
IF "Project Element".FINDSET(FALSE,FALSE) THEN BEGIN
REPEAT
CLEAR(TijdelijkElement);
TijdelijkElement.INIT;
CASE TRUE OF
STRPOS("Project Element".Element,'.10.') > 0: TijdelijkElement."Project No." := 'KAST';
STRPOS("Project Element".Element,'.20.') > 0: TijdelijkElement."Project No." := 'BEKABELING';
// Andere mogelijke element types
END;
IF TijdelijkElement."Project No." <> '' THEN BEGIN
TijdelijkElement.Element := "Project Element".Element;
TijdelijkElement.Description := "Project Element".Description;
//andere velden als benodigd
IF TijdelijkElement.INSERT THEN;
END;
UNTIL "Project Element".NEXT = 0;
END;
Daarnaast heb ik bij C/AL Globals de tijdelijkelement aangemaakt met record project element. Vervolgens heb ik op het rapport in de section Integer body een veld uit deze tabel geplakt, helaas verschijnt er bij draaien van het rapport nog niks.
Tevens zit ik nog met een ander probleem wat denk ik nog niet helemaal duidelijk is. Hoe krijg ik het voor mekaar dat ik twee kopjes kan maken en daar de informatie onder krijg. Dus eerst de kast met de elementen die daar aan voldoen en vervolgens de bekabeling met de elementen die daar aan voldoen.
Kast omschrijving datum uren
element 1
element 2
etc
Witte regels in rapport
Bekabeling omshrijving datum uren
element 1 (die voldoen aan de voorwaarde kast)
element 2 (die voldoen aan de voorwaarde kast)
Hopelijk is het zo wat duidelijker.