[Gelöst] Geht das einfacher?

20. Juni 2007 09:16

Hallo,

könnten folgende Bedingungen einfacher gelöst werden?
Code:
  IF (GLREC_VerkKopf.Beauftragungsart = 0) OR
     (GLREC_VerkKopf."Ihre Referenz" = '') OR
     (GLREC_VerkKopf."Ihre Referenz" = '.') OR
     (GLREC_VerkKopf."Ihre Referenz" = '-') OR
     (GLREC_VerkKopf."Ihre Referenz" = '_') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = '') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = '.') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = '-') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = '_') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'p') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'p.') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'p,') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'pers') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'pers.') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'pers,') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'persönlich') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'P') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'P.') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'P,') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'Pers') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'Pers.') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'Pers,') OR
     (GLREC_VerkKopf."Verk. an Kontaktperson" = 'Persönlich')


[Edit: C/AL-Code mittels [code] formatiert, um eine bessere Lesbarkeit zu erreichen. Gruß, Timo.]
Zuletzt geändert von sreutemann am 28. Juni 2007 07:55, insgesamt 3-mal geändert.

Re: Geht das einfacher?

20. Juni 2007 10:08

Ja, das geht:
Code:
IF (GLREC_VerkKopf.Beauftragungsart = 0) OR
   (GLREC_VerkKopf."Ihre Referenz" IN['','.','-','_']) OR
   (GLREC_VerkKopf."Verk. an Kontaktperson" IN[
     '','.','-','_','p','p.','p,','pers','pers.','pers,','persönlich',
     'P','P.','P,','Pers','Pers.','Pers,','Persönlich'])
THEN
  [...]


P. S.: Bitte nutze den BBCode [code], um deinen Programmcode lesbarer darzustellen.

20. Juni 2007 10:17

Und gibts noch die Möglichkeit abzufragen, dass das Feld min. 3 Zeichen hat?

20. Juni 2007 10:54

sreutemann hat geschrieben:Und gibts noch die Möglichkeit abzufragen, dass das Feld min. 3 Zeichen hat?

Auch das geht: STRLEN

20. Juni 2007 10:57

Und wie baue ich das in die obige Abfrage ein? Sollte dann das Feld "Verk. an Kontaktperson" betreffen. Wie gesagt, das Feld muss min. 3 Zeichen haben.

Re: Geht das einfacher?

20. Juni 2007 11:35

Mit ein bisschen Eigeninitiative hättest du das sicher auch selbst herausbekommen.
Einfach ausprobieren; wenn es falsch war, sagt dir das der Compiler schon.

Ich will mal nicht so sein:
Code:
IF (GLREC_VerkKopf.Beauftragungsart = 0) OR
   (GLREC_VerkKopf."Ihre Referenz" IN['','.','-','_']) OR
   (GLREC_VerkKopf."Verk. an Kontaktperson" IN[
     '','.','-','_','p','p.','p,','pers','pers.','pers,','persönlich',
     'P','P.','P,','Pers','Pers.','Pers,','Persönlich']) AND
   (STRLEN(GLREC_VerkKopf."Verk. an Kontaktperson") >= 3)
THEN
  [...]

20. Juni 2007 11:52

Jain, wusste absolut nicht, wie implementieren!

Dank dir!

20. Juni 2007 12:21

Hallo,
ist hier nicht ein kleiner Widerspruch enthalten
Code:
(GLREC_VerkKopf."Verk. an Kontaktperson" IN[
     '','.','-','_','p','p.','p,','pers','pers.','pers,','persönlich',
     'P','P.','P,','Pers','Pers.','Pers,','Persönlich']) AND
   (STRLEN(GLREC_VerkKopf."Verk. an Kontaktperson") >= 3)


Länge >= 3 und IN ['','.','-','_','p','p.','p,','P','P.','P,'] ist doch gleichzeitig nicht sinnvoll?

dann bleibt doch eigentlich nur noch:
Code:
IF (GLREC_VerkKopf.Beauftragungsart = 0) OR
   (GLREC_VerkKopf."Ihre Referenz" IN['','.','-','_']) OR
   (GLREC_VerkKopf."Verk. an Kontaktperson" IN[
     'pers','pers.','pers,','persönlich',
     'Pers.','Pers,','Persönlich']) AND
   (STRLEN(GLREC_VerkKopf."Verk. an Kontaktperson") >= 3)
THEN
  [...]

wird so auch immer kürzer. :-D

20. Juni 2007 13:08

Stimmt auch wieder! *g*