Options

Filter bij runnen van report

Red-EagleRed-Eagle Member Posts: 107
edited 2009-09-16 in NAV Dutch speaking only
Ik ben bezig met het standaard report 5056 Contact - Labels. Hierin zit nu 1 tabel te weten contacten (relaties). Nu zijn er aan deze relaties kenmerken gekoppeld. En van deze kenmerken wil ik gebruik maken. Ik heb dus een extra tabel toegevoegd te weten Contact Feature Type. Ik heb gelink met elkaar op de velden Relation Type=FIELD(Type),Code=FIELD(No.). Daarnaast heb ik bij reqfilterfields gezet: Feature Group,Feature. Wanneer ik nu het report run krijg ik netjes een extra tabblad waar ik dan die 2 filters kan gebruiken. Alleen het probleem is dat navision er niks meedoet. Wat ben ik vergeten?

Answers

  • Options
    ShedmanShedman Member Posts: 194
    Als het goed is heb je de nieuwe tabel als eerste dataitem gezet en de Contacten (relaties) ingesprongen, zodat deze gelinked wordt aan de Contat Feature Type.

    Dan stel je je DataItemLinkReference op de Contacten (relaties) in op Contact Feature Type (gaat automatisch als het goed is), en geef je in de DataItemLink op welke filtervelden in de Contact Feature Type overeenkomen met welke velden in de Contacten (relaties).

    Dan zou het moeten werken :)
  • Options
    Red-EagleRed-Eagle Member Posts: 107
    Thnx

    Dat was het dus. Ik had de tabellen omgedraaid. Waarom maakt dat zo uit eigenlijk, waarschijnlijk een stomme vraag.
  • Options
    Red-EagleRed-Eagle Member Posts: 107
    Nu heb ik alleen nog het probleem dat de data niet goed op de etiketten wordt gezet door de extra tabel. In het origineel staat bij contacten:

    Contact - OnPreDataItme()
    CASE LabelFormat OF
    LabelFormat::"36 x 70 mm (3 columns)",LabelFormat::"37 x 70 mm (3 columns)":
    NoOfColumns := 3;
    LabelFormat::"36 x 105 mm (2 columns)",LabelFormat::"37 x 105 mm (2 columns)":
    NoOfColumns := 2;
    END;
    NoOfRecords := COUNTAPPROX;
    RecordNo := 0;

    Contact - OnAfterGetRecord()
    RecordNo := RecordNo + 1;
    ColumnNo := ColumnNo + 1;
    FormatAddr.ContactAddr(ContAddr[ColumnNo],Contact);
    IF RecordNo = NoOfRecords THEN BEGIN
    FOR i := ColumnNo + 1 TO NoOfColumns DO
    CLEAR(ContAddr);
    ColumnNo := 0;
    END ELSE BEGIN
    IF ColumnNo = NoOfColumns THEN
    ColumnNo := 0;
    END;

    NU worden er etiketten overgeslagen en komen er minder op te staan als het origineel. Waar moet ik het aanpassen. Waar moet de C/Cal komen te staan?
  • Options
    Red-EagleRed-Eagle Member Posts: 107
    Probleem gevonden er was een extra sectie in het rapport gekomen door de extra tabel. Niet aangedacht, nu verwijderd en rapport werkt nu goed. Daarnaast moest de C/CAL
    Contact - OnPreDataItme()
    CASE LabelFormat OF
    LabelFormat::"36 x 70 mm (3 columns)",LabelFormat::"37 x 70 mm (3 columns)":
    NoOfColumns := 3;
    LabelFormat::"36 x 105 mm (2 columns)",LabelFormat::"37 x 105 mm (2 columns)":
    NoOfColumns := 2;
    END;
    NoOfRecords := COUNTAPPROX;
    RecordNo := 0;
    Gekoppeld worden aan de eerste tabel en andere stuk kan gewoon bij het tweede stuk blijven bestaan.
Sign In or Register to comment.