[gelöst]Teil von Tabellenwert (Code10) als Bedingung ...

16. Juni 2009 15:40

Hallo allerseits,

ich habe ein kleines Problem... die Profis werden da sicher drüber lachen.

ich möchte einen Wert (den payment Terms Code; Code10) in einer If Abfrage teilweise untersuchen...

ich möchte wenn ein teil des Payment terms code CIA ist dann soll die schrift rot sein sonst schwarz...
Damit klappt es für den eindeutigen Fall:;

{if FORMAT("Payment Terms Code") = 'CIA-2' then
CurrForm."Payment Terms Code".UPDATEFORECOLOR (225)
ELSE
CurrForm."Payment Terms Code".UPDATEFORECOLOR(0);}

nur will ich es ja für alle Arten von Vorkasse...

Ich habe auch schon die Suche benutzt, aber mir fehlen die aussagekräftigen Schlagworte....

Vielen Dank Schon mal

Thomas
Zuletzt geändert von tommygunse am 19. Juni 2009 09:03, insgesamt 3-mal geändert.

Re: Teil von Tabellenwert (Code10) als Bedingung für If Abfrage

16. Juni 2009 15:50

wenn ich das richtig verstanden habe, willst du z.B. "abcCIA123" oder "CIAxyz" finden.
dazu benutze die Funktion "STRPOS"

Code:
If STRPOS("Payment Terms Code",'CIA') <> 0 Then
   CurrForm."Payment Terms Code".UPDATEFORECOLOR (225)
ELSE
   CurrForm."Payment Terms Code".UPDATEFORECOLOR(0);}


mfg Michael

Re: Teil von Tabellenwert (Code10) als Bedingung für If Abfrage

16. Juni 2009 16:01

Super!!!! Vielen Dank. genau das wollte ich.

Danke und Gruß
Thomas

Re: [gelöst]Teil von Tabellenwert (Code10) als Bedingung...

18. Juni 2009 16:52

Hallo nochmal,

damit dierser Code

IF STRPOS("Payment Terms Code",'CIA') <> 0 THEN
CurrForm."Source No.".UPDATEFORECOLOR (225)
ELSE
CurrForm."Source No.".UPDATEFORECOLOR(0);

funktioniert, muss ich in der Form den Payment Terms Code anzeigen lassen. Das möchte ich aber eigentlich nicht. Kann ich mich nicht direkt auf die Tabelle beziehen?????
Alternativen?

Re: [gelöst]Teil von Tabellenwert (Code10) als Bedingung...

18. Juni 2009 17:03

tommygunse hat geschrieben:damit dierser Code funktioniert, muss ich in der Form den Payment Terms Code anzeigen lassen.

Eigentlich nicht, wie kommst du darauf?

Für den Fall, dass es sich bei diesem Feld um ein FlowField handelt, reicht ein vorherigers
Code:
CALCFIELDS("Payment Terms Code");

aus.

Kann ich mich nicht direkt auf die Tabelle beziehen?????

Aber genau das tut der Quelltext doch - wir lesen aus Rec."Payment Terms Code", nicht aus Form.EingeblendetesFeld."Payment Terms Code" - denn diese Zugriffsart gibt es in Navision nicht!

Re: [gelöst]Teil von Tabellenwert (Code10) als Bedingung ...

19. Juni 2009 09:05

Wie ich darauf komme? Es geht (ging) nur wenn ich es einblende....


Vielen Dank (mal wieder) für Deine Hilfe. Das fehlte...
Jetzt ist es sauber.


Beste Grüße
Thomas