Lookup in Requestform

Karen
Member Posts: 79
Ik heb het volgende probleem:
Op het hoofdmenu > Inkoop heb ik een menu toegevoegd met 2 menu-items. Bij het klikken op eender welke menu-item wordt hetzelfde form geopend maar natuurlijk met andere gegevens in.
Als ik nu op de form een afdruk wil doen wordt het request form geopend. Bij veldA op het request form kan ik een lookup doen. Bij het klikken op de lookupbutton wordt een Form geopend waaruit men kan kiezen. Maar ik wil niet dat alle keuzes hier getoond worden.
(Dus afhankelijk van het geopende form mag in de lookup maar een bepaald aantal gegevens getoond worden)
Iemand een idee?
Op het hoofdmenu > Inkoop heb ik een menu toegevoegd met 2 menu-items. Bij het klikken op eender welke menu-item wordt hetzelfde form geopend maar natuurlijk met andere gegevens in.
Als ik nu op de form een afdruk wil doen wordt het request form geopend. Bij veldA op het request form kan ik een lookup doen. Bij het klikken op de lookupbutton wordt een Form geopend waaruit men kan kiezen. Maar ik wil niet dat alle keuzes hier getoond worden.
(Dus afhankelijk van het geopende form mag in de lookup maar een bepaald aantal gegevens getoond worden)
Iemand een idee?
0
Comments
-
-
versie 2.600
-
Je kan in de OnLookup code van VeldA de filters programmeren die gebruikt worden als het lookup form wordt geopend.0
-
Maar telkens als ik code schrijf in de OnLookup dan kan ik geen lookup meer doen. Het knopje werkt dan niet.0
-
Dat klopt. Zodra je code schrijft in de OnLookup trigger, werkt de 'normale' lookup niet meer, die moet je dan helemaal programmeren.
Ik weet niet precies wat je wil doen. Je kan een conditie ingeven in de tablerelation property van een veld. Kijke bijvoorbeeld naar het "No." veld van de Sales Line tabel, die afhankelijk van het type in een andere tabel kijkt. Je kan ook condities ingeven die een andere filter zet afhankelijk van een veldwaarde.0 -
Ik heb nu de code voor het lookup form geschreven. Dit gaat nu gelijk het hoort. Hij geeft ook de geselecteerde waarde terug aan het request form.
In het requestform heb ik nog een klein probleem. In de filter komt niet direct de nieuwe waarde te staan. Moet eerst in de volgende lijn klikken en dan terug op de eerste lijn. Pas dan staat de nieuwe waarde er.
Maar op tabel niveau kan ik gene update doen!
Hoe moet ik dit oplossen?0 -
Probeer de waarde toe te passen als filter op het gekozen veld.
Rec.SETFILTER("Selected Field",'=%1',ReturnedValue);
Waar 'Rec' de tabel van het onderliggende dataitem is.0 -
Dat had ik reeds gedaan. Maar ik zou een of andere refresh/update moeten kunnen doen0
-
Dit is dus mijn probleem: de nieuwe waarde1 die via het lookupform opgezocht werd, wordt er niet onmiddellijk ingezet
Voorbeeld requestform:
Veld Filter
VeldA waarde1
En hoe kan ik ervoor zorgen dat men meerdere waardes in die filter van het request form kan zetten door ze allemaal apart uit het lookupform te halen?
Voorbeeld requestform:
Veld Filter
VeldA waarde1|waarde2|waarde30 -
Creeer een variabele met de form die je als lookup wilt gebruiken.
In de OnLookup van het veld waar je de filter wilt zettten:clear(frmLookup); IF frmLookup.RUNMODAL = ACTION::LOOKUPOK THEN BEGIN txtMyFilterField := frmLookup.GetFilter(); END;
in de lookup-form:
In de OK-button :CurrForm.SETSELECTIONFILTER(rec); txtFilter := ''; IF FIND('-') THEN REPEAT txtFilter := '|' + "The Field"; UNTIL NEXT = 0; txtFilter := COPYSTR(txtFilter,2);
Functie GetFilter die een text als return-value heeftEXIT(txtFilter)
Ik heb de code niet uitgeprobeerd, maar het zal iets in deze aard zijn.Regards,Alain Krikilion
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!0 -
Ik krijg een foutmelding op volgende code:
txtMyFilterField := frmLookup.GetFilter();
Ik kan dus geen GETFILTER() doen op een formvariabele0 -
Sorry, had het laatste niet goed gelezen...
Ga het nog eens proberen...0 -
Mijn tweede probleem is opgelost. Maar volgende probleem nog steeds niet:
De nieuwe waarde1 die via het lookupform opgezocht werd, wordt er niet onmiddellijk in mijn request form gezet
Voorbeeld requestform:
Veld Filter
VeldA waarde1
Ik moet eerst naar de volgende regel gaan met de cursor en daarna terug naar de regel met veldA voor de nieuwe waarde erin gezet word0 -
Probeer eens dit te zetten in de OnLookup-trigger van je veld:
clear(frmLookup); IF frmLookup.RUNMODAL = ACTION::LOOKUPOK THEN BEGIN Text := frmLookup.GetFilter(); EXIT(TRUE); END;
Regards,Alain Krikilion
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!0 -
Werkt ook niet
](*,) ](*,) ](*,)0 -
Ik heb even een voorbeeld uitgewerkt:
In de Lookup-form in de Ok-button:OnPush() CurrForm.SETSELECTIONFILTER(Rec); txtFilter := ''; IF FIND('-') THEN REPEAT txtFilter += '|' + Code; UNTIL NEXT = 0; txtFilter := COPYSTR(txtFilter,2);
Functie GetFilter in de lookup-formGetFilter() : Text[100] EXIT(txtFilter);
Onlookup-trigger van je veld:OnLookup(VAR Text : Text[260];) : Boolean CLEAR(frmKrikiExample); frmKrikiExample.LOOKUPMODE(TRUE); IF frmKrikiExample.RUNMODAL = ACTION::LookupOK THEN BEGIN Text := frmKrikiExample.GetFilter(); EXIT(TRUE); END;
Regards,Alain Krikilion
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions