&Makro Fehler !

Eigentlich ist mir die Frage peinlich, aber es kann sonst niemand helfen ... :)

Moderator: Moderatoren

Antworten
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

&Makro Fehler !

Beitrag von xbaseklaus »

hallo , vielleicht kann mir ja jemand auf die Sprünge helfen , warum folgendes funktioniert:

Code: Alles auswählen

...
if len(trim(stel)) > 0
sbefehl = sbefehl + 'tel1 = trim(stel) .or. tel2 = trim(stel) .and.'
endif
if len(trim(sanrede)) > 0
sbefehl = sbefehl + 'lower(anrede1) = trim(lower(sanrede)) .and.'
endif

sbefehl = substr(sbefehl,1,len(sbefehl)-5)

set filter to &sbefehl
go top


aber dies nicht:

Code: Alles auswählen

...
if len(trim(kontrol->w1)) > 0
sbefehl = sbefehl + 'insasse->privat = "û" .and.'
endif
if len(trim(kontrol->w2)) > 0
sbefehl = sbefehl + 'insasse->fan1 = "û" .and.'
endif

sbefehl = substr(sbefehl,1,len(sbefehl)-5)

set filter to &sbefehl
go top
...
da kommt:

Code: Alles auswählen

Xbase++ version     : Xbase++ (R) Version 1.82.306
Operating system    : Windows  06.01 Build 07601 Service Pack 1
------------------------------------------------------------------------------
oError:args         :
          -> VALTYPE: C VALUE:   
oError:canDefault   : N
oError:canRetry     : N
oError:canSubstitute: Y
oError:cargo        : NIL
oError:description  : Syntax error in macro expression
oError:filename     : 
oError:genCode      :         20,00
oError:operation    : &<        ...>
oError:osCode       :          0,00
oError:severity     :          2,00
oError:subCode      :       2300,00
oError:subSystem    : BASE
oError:thread       :          1,00
oError:tries        :          0,00
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Called from (B)KUNDEDIT(125)
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: &Makro Fehler !

Beitrag von georg »

Hallo, Klaus -


in so einem Fall schaue ich mir im Debugger mal den Inhalt von sbefehl an. Das macht dann manches Licht im Kopf an. Ansonsten sieht der Code "sauber" aus, wobei ich die Befüllung von sbefehl vermisse, aber die müsste stimmen, da sonst der substr() nicht funktionieren dürfte.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: &Makro Fehler !

Beitrag von Tom »

Eben. Einfach mal "sbefehl" vor dem Filtersetzen anzeigen lassen. Da ist ein Syntaxfehler drin. :wink:
Herzlich,
Tom
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

Re: &Makro Fehler !

Beitrag von xbaseklaus »

Tom hat geschrieben:Eben. Einfach mal "sbefehl" vor dem Filtersetzen anzeigen lassen. Da ist ein Syntaxfehler drin. :wink:
Tom du hattest recht durch ein ? ist mir dann aufgefallen dass im "sbefehl" noch ein nicht gelöschter Rest von einer vorherigen Abfrage zurückgeblieben ist!

Danke Tom
Antworten