Record updaten in andere tabel

SjoerdSjoerd Member Posts: 13
edited 2009-02-05 in NAV Dutch speaking only
Hallo,
Ik ben nieuw met NAV bezig, en heb een nogal basic vraag.

Ik heb een custom form, gebaseerd op de custom tabel "eigenaar" met een key "eigenaarscode".
Deze sleutel komt overeen met het veld No. in de customer tabel.

Het lukt mij om met een record variabel allerlei contactgegevens op het eigenaars form te tonen (telefoon nummer, adres, etc). Nu wil ik dat het via dit form ook mogelijk is om het telefoonnummer in de customer tabel te updaten. Hoe doe ik dit?

dank!

Comments

  • DenSterDenSter Member Posts: 8,307
    heb je een 1 op 1 relatie met de Customer tabel? Waarom heb je niet gewoon wat velden aan de Customer tabel aangemaakt?

    Om op je vraag te reageren: een form is gebaseerd op slechts 1 tabel, en alleen die source tabel reageert op veranderingen die op het form zijn ingegeven. Als je informatie uit een andere, gerelateerde, tabel wil tonen, moet je dat via een subform doen. Via de relatie tussen de twee tabellen worden de juiste records getoond, en kan je zonder iets te programmeren die records aanpassen.
  • SjoerdSjoerd Member Posts: 13
    Hartelijk dank Denster!

    Een paar velden toevoegen was helaas geen optie, omdat deze tabel deel uitmaakt van een grotere 'add-on'.

    Ik heb inderdaad ook aan een subform gedacht, maar vind dit eigenlijk een 'lelijke' oplossing.
    Er is inderdaad een 1 op 1 relatie, dus ik zou een subform hebben waar je alleen 1 telefoonnumer inziet.

    Kan ik niet via de sleutel van de eigenaarstabel een variavel record van de customertable laden (bv gRecCustomer), via de sleutel naar het betreffende record gaan en dan het veld telefoonnummer updaten). bijv. na een after update event o.i.d. ? (ik ken de events van nav nog niet precies...)
  • DenSterDenSter Member Posts: 8,307
    Je moet dat soort code op forms zo veel mogelijk proberen te vermijden. Dat soort updates valt onder 'business logic', en moet zo veel mogelijk in tabellen plaatsvinden.

    Ik zou zelf dan denk ik het veld toevoegen aan de 'Eigenaar' tabel, en de OnModify trigger van de tabel programmeren om de Customer tabel te wijzigen. Op die manier hoe je het simpel, en zal hetzelfde gedrag getoond worden op elke form dat is gebaseerd op die tabel.
Sign In or Register to comment.