Page Sucheingabe an CU übergeben

Bild Microsoft Dynamics NAV 2016

Page Sucheingabe an CU übergeben

Beitragvon sthuening » 26. Mai 2023 08:36

Hallo Zusammen,

ich steh sowas von auf dem Schlauch und weis irgendwie nicht mehr wie das funktioniert.

Ich habe eine CU die mit zwei Filtern über die Debitorenposten Sätze filtern und als csv ausgibt. das eine Feld ist eine Code (20) feld das andee ist ein Date. alleine funktoniert das auch.

Nun soll ich das umbauen und die Filterkriterien abfragen und nach diesen abgefragten Filter die Sätze selektieren und als csv ausgeben.

Feld 1 Suche_Aktion (das ist eine Tabelle hinterlegt) Auswahl entweder nur ein oder mehrere Aktionen auswählbar. Beispiel Aktion1|Aktion2
Feld 2 ist das Posting Date/Buchungsdatum das kann entweder nur einen TAg sein oder ein Zeitraum Beispiel 1.5.2023 oder 01.01.2023..31.12.2023

Nun habe ich in der Page zwei Felder deklariert (CODE und DATE) und bei dem CODE Feld dann auch die Tabelle hinterlegt.
In der Page habe ich dann eine Page Action angelegt "CSV Erstellen", Dahinter wird dann die Codeunit ausgeführt, mit der Übergabe dieser zwei Felder.
Einzelen Werte klappen auch; Nur der Filter wenn ich zwei Aktion auswähle klappt nicht. Also bei Aktion1|Aktion2

Dann findet der Filter nichts mehr.

Der Filter:
26-05-2023_08-31-19.jpg


Der Debugger gibt den UInhalt des Feldes an: Aktion1|Aktion2
26-05-2023_08-32-08.jpg


Hat jemandn einen Tipp?

Das Date muss ja auch später noch als Filter eingeben werden. Aber ich will erst das eine Problem lösen. ;-)
Viele Grüße
Sonja

Version: MS Dynamiv NAV 2016
sthuening
 
Beiträge: 296
Registriert: 13. September 2010 08:11
Realer Name: Sonja Thüning
Arbeitsort: Düsseldorf
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV 2016 RTC

Re: Page Sucheingabe an CU übergeben

Beitragvon sthuening » 26. Mai 2023 08:43

bei der Zeitraumseingabe kommt dann diese MEldung:
26-05-2023_08-40-12.jpg


Wie mus das Feld dann deklarierte sein für eine ZEitraumseingabe? Ich hab in der Page nur das Feld as DATE deklariert
Viele Grüße
Sonja

Version: MS Dynamiv NAV 2016
sthuening
 
Beiträge: 296
Registriert: 13. September 2010 08:11
Realer Name: Sonja Thüning
Arbeitsort: Düsseldorf
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV 2016 RTC

Re: Page Sucheingabe an CU übergeben

Beitragvon fiddi » 26. Mai 2023 09:13

Hallo,

das Feld muss entweder als Text oder wenn möglich als Flowfilter auf ein Date-Feld deklariert werden.

Wenn du das als Textfeld definierst, musst du im OnValidate des Feldes ein
Code: Alles auswählen
Record.SetFilter(DateField,ZeitRaumText);

ausführen. Das geht entweder gut, wenn die Eingabe korrekt war, oder gibt eine Fehlermeldung;
Anschließend holst du dir mit
Code: Alles auswählen
ZeitRaumText:= Record.Getfilter(DateField);

den formatierten Filtertext zurück, und das Ganze sollte dann auch hübsch aussehen.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: Page Sucheingabe an CU übergeben

Beitragvon sthuening » 26. Mai 2023 12:28

Hallo fiddi,

vielen Dank für die Rückmeldung.

du meinst in der Page in dem Feld SucheZeitraum in dem OnValidate Trigger, richtig?
In der Page habe ich aber doch keine Tabelle hinterlegt.
und wenn ich die Tabelle 21 als Source tabelle hinterlege würde das dann aber so aussehen.

Für das Date Field und dem Code Feld. (Beide Felder sind als Text deklariert)
26-05-2023_12-25-28.jpg


und wenn ich die Codeunite aufrufe, nehm ich ader die Felder aus dert Page, diese TExtFelder richtig?

und in der CU hole ich mit den Filter wieder?
Viele Grüße
Sonja

Version: MS Dynamiv NAV 2016
sthuening
 
Beiträge: 296
Registriert: 13. September 2010 08:11
Realer Name: Sonja Thüning
Arbeitsort: Düsseldorf
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV 2016 RTC

Re: Page Sucheingabe an CU übergeben

Beitragvon fiddi » 26. Mai 2023 12:47

Hallo,

und wenn ich die Codeunite aufrufe, nehm ich ader die Felder aus dert Page, diese TExtFelder richtig?


Das kannst du so machen. Wenn du der Codeunit allerdings Rec als VAR übergibst, dann geht das auch einfacher Im Onvalidate-Trigger des Feldes "Zeitraum" :
Code: Alles auswählen
Rec.SetFilter("Posting Date",ZeitRaumDebiPoBuchungdatum);
ZeitRaumDebiPoBuchungdatum := Rec.GETFILTER("Posting Date");


Den GetFilter benötigst du nur, damit der FilterText hinterher "schöner" aussieht. Funktionieren tut es auch ohne die zweite Zeile. Ansonsten musst du der Codeunit noch irgendwie das FilterDatum mitteilen.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell


Zurück zu NAV 2016

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast