Nieuw Form met gelinkte tabellen

FabianNCFabianNC Member Posts: 78
edited 2007-11-15 in NAV Dutch speaking only
Ik heb een nieuwe tabel aangemaakt als Projectkaart.

Op de projectkaart koppel ik de code van de volgende tabellen:
- Contactnr
- Klantnr
- Ordernr

Ik heb in de C/AL code al een aantal variabelen aangemaakt om de records te kunnen koppelen, maar ik moet nu natuurlijk nog ergens de link definieren.

Wat ik wil is een aantal variabelen weergeven / ophalen uit deze tabellen.
Waarschijnlijk doe ik iets simpels verkeerds, maar ik krijg het niet geheel werkend zoals ik wil.

Kan ik de items bv ook laten verschijnen in het Fieldmenu?

Met Reports lukt het me wel om mbv Setrange / filter de juiste gegevens boven water te halen, maar op de een of andere manier is dit toch net iets anders denk ik.
Navision 4.0 SP2 | Win 2003 TS

Comments

  • FabianNCFabianNC Member Posts: 78
    Is er iemand die hier een idee voor heeft?

    Of wil ik voor de verandering weer iets onmogelijks :?

    Het enige wat ik wil is gegevens uit een tabel ophalen en weergeven op een form. Het lijkt me dat een database daar wel goed in kan zijn :wink:
    Navision 4.0 SP2 | Win 2003 TS
  • ErictPErictP Member Posts: 164
    In de OnAfterGetRecord trigger van het scherm kun je je filter zetten op de variabelen of direct de juiste record ophalen en deze op het scherm tonen.

    Bijvoorbeeld voor de klantcode:
    Variabele CustRec type record tabel 18

    IF NOT CustRec.GET("Customer Code") THEN CLEAR(CustRec);
    

    Op het scherm leg je dan een textbox met als SourceExpr "CustRec.Name"
  • FabianNCFabianNC Member Posts: 78
    Kijk!! Dit klinkt goed, ik ga dit morgenochtend proberen en als het lukt dan ben ik weer een grote stap verder!

    Als ik het goed begrijp kan ik daarna dus via de Source Expression de juiste velden die ik weer wil geven instellen?

    Thanks!!
    Navision 4.0 SP2 | Win 2003 TS
  • FabianNCFabianNC Member Posts: 78
    Ik kon het toch niet echt laten, en het idee werkt O:) .

    Wat ik nu merk is dat als ik de waarde wijzig, dat de opgehaalde waarde niet direct wijzigt. Wanneer ik even naar een volgende kaart ga en daar weer terug ga, dan is de waarde wel juist.

    Moet ik het clear commando wellicht verplaatsen of op een extra locatie plaatsen?
    Navision 4.0 SP2 | Win 2003 TS
  • FabianNCFabianNC Member Posts: 78
    Blijven er nog 2 puntjes open staan.

    1. Het 'updaten' van de opgehaalde velden indien een gekozen waarde wijzigt. Ik haal bv de contactkaart op obv het contactnummer. Ik zie dan de juiste gegevens. Echter wanneer ik een ander contactnummer kies, dan blijft de oude waarde staan totdat ik de kaart sluit en opnieuw open (of volgende vorige kiez).

    2. Ik wil graag de Sales Header ophalen.
    Daarin zit als Key: Document Type,No.
    In het veld No. staat een waarde die zover ik weet 'uniek' is.
    Er kunnen Offertes in staan en Orders. Deze hebben beiden een reeks met een unieke prefix (OFF0001 en ORD0001).
    Telkens als ik nu probeer om bv ORD0001 te koppelen dan krijg ik een melding dat typeconversie niet kan worden uitgevoerd.

    Als oplossing denk ik in de volgende richting:
    A - Wellicht moet ik een nieuwe losse Key aanmaken van No.
    B - 2 velden gebruiken, eerst Document Type selecteren en dan No.? Dit via Setrange 'filteren' tot de juiste gegevens.

    Ik hoor graag hoe jullie dit zouden aanpakken.
    Navision 4.0 SP2 | Win 2003 TS
  • FabianNCFabianNC Member Posts: 78
    Om te voorkomen dat de koppeling kwijt raakt na het wijzigen van Offerte naar Order heb ik gekozen om het anders te gaan uitwerken.

    Ik ga poberen om op de Orderkaart een veld aanmaken waarop ik de Projectkaart ophaal.. Net even wat anders, maar volgens mij wel wat handiger.

    [EDIT]
    En daar loop ik ook even vast, ik denk dat ik nu via Setrange de variabele moet 'koppelen'. Ook hier zijn tips van harte welkom... ik moet het weer een keertje gezien hebben :wink:
    Misschien moet ik even afstand nemen van het probleem... [/EDIT]
    Navision 4.0 SP2 | Win 2003 TS
  • FabianNCFabianNC Member Posts: 78
    Het updaten van het veld is opgelost door:

    Contact - OnValidate()
    CLEAR(ContactGrec);
    IF ContactGrec.GET(Contact) THEN;

    Nu worden de opgehaalde velden direct geupdate wanneer er een andere waarde wordt gekozen :)
    Navision 4.0 SP2 | Win 2003 TS
Sign In or Register to comment.