Moin Gemeinde,
ich bin hier schon länger stiller Leser und konnte mir auch bis jetzt immer mit der Suchfunktion selber weiterhelfen.
Ist schon gewaltig was hier für ein geballtes Fachwissen rumgeistert.
Doch nun bin ich einfach nicht fündig geworden.
folgendes Problem: ich möchte gern eine Variable mittels "zusammen gebastelten" Strings lesen.
Im Grund ist mein Problem in den letzten Programmzeilen der Funktion Base_nr_suchen().
Programm mit Funktionsaufruf
Code
DEF Prog10()
INT Base
;FOLD PTP P1 Vel=100 % PDAT1 Tool[2] Base[4];%{PE}%R 5.6.11,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:P1, 3:, 5:100, 7:PDAT1
$BWDSTART=FALSE
PDAT_ACT=PPDAT1
FDAT_ACT=FP1
BAS(#PTP_PARAMS,100)
PTP XP1
;ENDFOLD
Base=Base_Nr_suchen("P1")
;Base sollte nun den Wert 4 haben
END
Alles anzeigen
Hier nun die Funktion:
Code
DEFFCT INT Base_nr_suchen(String[]:in)
DECL char String[]
DECL INT Base_Nr , IOK
DECL CHAR Pfad[50]
IOK=STRADD(Pfad[],$PRO_IP.si01.NAME[])
;Pfad[] müsste jetzt folgenden Inhalt haben
;Pfad[]="/R1/Prog10.SRC"
IOK=STRADD(Pfad[],"/F")
;Pfad[] müsste jetzt folgenden Inhalt haben
;Pfad[]="/R1/Prog10.SRC/F"
IOK=STRADD(Pfad[],String[])
;Pfad[] müsste jetzt folgenden Inhalt haben
;Pfad[]="/R1/Prog10.SRC/FP1"
IOK=STRADD(Pfad[],".BASE_NO")
;Pfad[] müsste jetzt folgenden Inhalt haben
;Pfad[]="/R1/Prog10.SRC/FP1.BASE_NO"
;Base_Nr ist ja ein INT und /R1/Prog10.SRC/FP1.BASE_NO auch!
Base_Nr=Pfad[]; geht ja nicht da Base_Nr INT und Pfad[] CHAR ist
RETURN (Base_Nr)
ENDFCT
Alles anzeigen
Ich hoffe es ist klar geworden wo mein Problem liegt.
Und freue mich über eure Ideen.
MFG Damson