String in Objekt konvertieren?

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: String in Objekt konvertieren?

Re: String in Objekt konvertieren?

von DPunch » Di, 14.09.2010 13:38

Aloha
uli38 hat geschrieben:Ohne die Case-Anweisung wird die While-Anweisung so oft durchlaufen, wie es Eergebinsse aus der SQl-Anweisung gibt.
Mit Case-Anweisung nur einmal.
Das Verhalten lässt sich weder reproduzieren noch erklären, was darauf schliessen lässt, dass der Fehler irgendwo bei Dir im Code begraben liegt.

Möglicherweise ruft irgendein SELECT CASE einen Abbruch der Prozedur hervor?
Oder Du hast oResultSet als global bzw. modulweit definiert und arbeitest in einer aus dem SELECT CASE heraus aufgerufenen Prozedur mit einer neuen SQL-Abfrage, die nur ein Ergebnis hervorbringt?

Mehr als ins Blaue raten ist leider nicht drin bei dem Codeschnippsel, den Du gepostet hast.

Re: String in Objekt konvertieren?

von uli38 » Mo, 13.09.2010 22:15

Ich muß den Code ergänzen.
Es handelt sich im eine Schleife

Code: Alles auswählen

...
Ergebnis = oListe.selecteditems
for i=0 to ubound(Ergebnis())
oResultSet = oStatement.executeQuery(SQL)
While oResultSet.Next()
 ObjID = oResultSet.getString(2)
Select Case ObjID
Case "1"
  KMNKObjekt1
Case "2"
KMNKObjekt2
...
End Select

 wend
  next i 
Ohne die Case-Anweisung wird die While-Anweisung so oft durchlaufen, wie es Eergebinsse aus der SQl-Anweisung gibt.
Mit Case-Anweisung nur einmal.
Das verstehe ich nicht.

Grüße
Uli

Re: String in Objekt konvertieren?

von uli38 » Mo, 13.09.2010 21:54

Hallo.
Die Case-Variante ist wohl eher das, was ich gesucht habe. Danke:-)
Das ganze brauche ich in einer SQL-Anweisung die mehrfach durchlaufen werden soll:

Code: Alles auswählen

While oResultSet.Next()
 ObjID = oResultSet.getString(2)
Select Case ObjID
Case "1"
  KMNKObjekt1
Case "2"
KMNKObjekt2 ...
Aber leider wird die While-Anweisung nur einmal durchlaufen.
Woran liegt das??

Grüße
Uli

Re: String in Objekt konvertieren?

von Stephan » Mo, 13.09.2010 20:54

In meinem Makro möchte ich die Variable A mit "X" und z.B. mit 5 zusammensetzen zu "X5".
Gemeint ist der Wert bzw, Inhalt der Variable und nicht wie geschrieben die Variable selbst, nehme ich an?
Anschließend soll A in ein Objekt umgewandelt werden, damit ein anderes Makro (hier mit dem Namen X5) ausgeführt werden kann.
Und das heißt konkret? Der Name eines Makros ist jedenfalls KEIN Objekt.

Was mir einfällt sind 2 Fälle, nämlich:

erstens das das Makro gewünschten Namens bereits existiert und nur noch gestartet werden soll, dann ist zwangsläufig auch die Anzahl denkbarer namentlicher Makros beschränkt und es reicht ein Select-Case, im prinzipiellen Sinne von:

Code: Alles auswählen

A = "X" & "5"

Select Case A
 Case "X1"
  X1
 Case "X2"
  X2
 'Case ...
End SElect
zweitens das das Makro erst angelegt werden müßte, das ginge z.B. im Sinne von:

Code: Alles auswählen

Sub Main
A = "X" & "5"
 
BasicLibs = Globalscope.BasicLibraries
oLib = BasicLibs.Getbyname("Standard")
moduleText = "REM Test" + CHR(13) + "Sub " & A + CHR(13) + "msgbox ""Hallo Welt"" " + CHR(13) + "End Sub"
oLib.insertByName("New_Modul",moduletext)

moduleText = "Sub Start_fuer_Laufzeitmakro()" + CHR(13) + "New_Modul." & A + CHR(13) + "End Sub"
oLib.insertByName("Modul_tmp",moduletext)

Modul_tmp.Start_fuer_Laufzeitmakro()
End Sub
(siehe auch: http://www.starbasicfaq.de/WiekannmanMo ... chen..html)

was jedoch eine recht eigenwillige Art des Vorgehens wäre.



Gruß
Stephan

String in Objekt konvertieren?

von uli38 » Mo, 13.09.2010 19:53

Hallo.
In meinem Makro möchte ich die Variable A mit "X" und z.B. mit 5 zusammensetzen zu "X5". Kein Problem:-)
Anschließend soll A in ein Objekt umgewandelt werden, damit ein anderes Makro (hier mit dem Namen X5) ausgeführt werden kann.
Bisher habe ich noch keine Lösung gefunden.
Geht das überhaupt?

Grüße
Uli

Nach oben