Jump to content

Neue Beta-Version V5


Neo

Empfohlene Beiträge

vor 58 Minuten schrieb metallix:

Wiki sagt doch noch gar nix zu V5

Davon war ich jetzt auch ausgegangen, deshalb habe ich da gar nicht reingeschaut. Also, meinereiner B|
Und ja Tom, ich verschachtel jetzt nicht nur, sondern ziehe auch zusammen. Von meinem Anlagenkern sind kaum noch Ereignisse übrig - so soll das sein.
Jetzt müssen sie nur noch schnackeln :/ Ich hoffe, übermorgen läuft die Anlage wieder, dann kann ich woanders mal reinschauen.

also, Danke Ihr Drei! (y)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Jetzt bin ich auf was Bösartiges aufgelaufen.

09A3D216-4200-4EC6-AEA3-A3041A0C6DE2

Nichts machen außer Ereignisprotokoll einschalten und EINZELSCHRITT takten. Verabschiedet sich!!!
Ich setze auch alles dran, Dinge zu de/aktivieren, um der Stelle auf die Spur zu kommen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo

in der EV sind die auszuführenden Aktionen (2.Zeile) in hellgrauer Schrift dargestellt.
Forum_2019_N00411.jpg.0b105462125d1f214c430b95bb809a45.jpg

Das ist für meine müden Augen kaum zu erkennen. Könnte man da etwas ändern, um es lesbarer zu machen ?

fragt Henry

Bearbeitet von Henry
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 9 Minuten schrieb streit_ross:

Hallo metallix,

den besten lesbaren Schriftkontrast bildet nachwievor gelbe Schrift auf schwarzem Hintergrund. Deshalb empfehle ich schwarze Kontaktlinsen plus gelber Brille:D.

streit_ross

Muss ich dann auch singen, so wie Elton John? Naja wird sich bestimmt irgendwo ein schattiges plaetzchen finden.

Cheers

Tom

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich komme meinem Problem auch näher. Es ist im Modul 'Auftragsbehandlung' darin 'Auftragshandler'. Dieser erhält den ersten Auftrag von Fahrplan05.
Deaktiviert geht alles wie es soll.
In 'Auftragshandler geht es hier mit der Schrittkette los im ersten Kommando. Hier sollte (als Objekt) der Auftrag A "Abs1-HafenO" in Auftragshandler.input eingetragen werden.
(Später trägt sich da noch ein anderer Eintrag ein, aber nur weil der Auftragshandler nicht aktiv dicht macht.)
Ich blocke mal alles separat und mache hier mal Schritt für Schritt frei. Ich würde es nicht so ausführlich hier beschreiben, wenn der Bug nur einen attempt-Fehler werfen würde, aber es hängt sich ja endgültig auf. Egal, was ich da für einen Blödsinn gemacht werde, es muß zumindest mit Fehlermeldung abgefangen werden!

endlose Grüße
  Ansy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hey "Ansy":P

Ich schaetze dich nicht als schlipstraeger ein, also kann da auch nix zer/ge-treten werden:D. Ich denke Neo koennte auch daran intressiert sein sich deine anlage mal genauer anzusehen.

Cheers

Tom 

Bearbeitet von metallix
c
Link zu diesem Kommentar
Auf anderen Seiten teilen

So, Andy proudly presents: der dumm-dumm-Bug
Mein 'Auftragshandler' besitzt zwei Variablen des Typs 'Objekt' um den Auftrag zu übernehmen, "input" und "Auftrag".
Ein Auftrag meldet sich in "input" an und wird, wenn alles gut geht, nach "Auftrag" übernommen.
Schauen wir uns mal an, wenn ich da den bösen Teil weglasse und stattdessen in ein 'Fullstopscript' schalte (Protokollbild).
Und jetzt mal die Programmierung, wenn's sich aufhängt (Bild 2)

Es hängt, wegen den letzten beiden Kommandos. Was habe ich mir dabei gedacht?
Das Ereignis ist: Variable input (Auftragshandler) wird gesetzt. Also die Objektvariable, die auch als Typ Objekt deklariert ist.
Und weil dann bei der Aktion Variable setzen als Auslöser 'Objekt' genannt wird, denke ich mir, es ist dann das Auslöser-Objekt, also was in Auftragshandler.input drinsteht (nämlich mein Auftrag) und deshalb weise ich dem in Name angebotenen Objektvariablennamen confirm zu, denn das ist die Objektvariable des Auftrags, der nun in Auftragshandler.input steht. Und da soll eine 1 rein, damit der Auftrag den nächsten Schritt übernimmt. FALSCH! Es ist der direkte Abflug ins Nirwana.

bis zum nächsten verheerenden Denkfehler
  Andy

 

superbug1.jpg

superbug2.jpg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erm, 'tschuldigung, da ist schon der nächste: (merke Andy := kürzester Abstand zwischen zwei Bugs)

Bild 1 zeigt, die Objektvariable heißt 'Auftrag', großes A, kleiner uftrag
Bild 2 zeigt, dass MBS sie gerade mal in voll groß gewandelt hat (in der Auswahl gibt es nun auch nur noch 'AUFTRAG', wie man sieht).
Liegt daran, dass ich allen Aufträgen das Schlagwort 'AUFTRAG' zugeordnet habe. Und jetzt hapert's hier mit der case sensivity...

p.s.: wenn der erste Aufhänger bekämpft ist, schauen wir mal. Ich hätte dann noch einen zweiten gespeichert.
Ich baue jetzt erstmal weiter um, denn mit dem rekursiven Flow und meinem eigenen rekursiven Pfadsucher gibt's nun einen abgefangenen Stack overflow.
Bis denn, gute Nacht.

bug2a.jpg

bug2b.jpg

Bearbeitet von Andy
ps
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Andy,

vor 12 Stunden schrieb Andy:

Nichts machen außer Ereignisprotokoll einschalten und EINZELSCHRITT takten. Verabschiedet sich!!!

danke für den Hinweis. Unabhängig ob deine Anlage einen Fehler enthält oder nicht, einen Programmabsturz darf eine Anlage natürlich nicht zur Folge haben. Das Problem wird mit dem nächsten Update behoben.

vor 11 Stunden schrieb Henry:

Könnte man da etwas ändern, um es lesbarer zu machen ?

Ich denke ich kann da noch was am Kontrast verbessern.

vor 7 Stunden schrieb Andy:

Bild 2 zeigt, dass MBS sie gerade mal in voll groß gewandelt hat

Das Studio selbst wandelt Variablennamen nicht in Groß- oder Kleinbuchstaben um, die Anzeigen, die die vorhandenen Variablen auflisten, ignorieren allerdings fälschlicherweise die Tatsache, dass es Variablen in verschiedener Schreibweise in unterschiedlichen Objekten geben kann, was ich mit dem nächsten Update verbessern werde. Es handelt sich hier also nur um eine Anzeigeproblem.

Dennoch solltest du natürlich aufpassen, wenn du gleiche Namen mit unterschiedlicher Schreibweise und unterschiedlicher Bedeutung verwendest. Denn beim Zugriff auf eine Variable unterscheidet das Studio nicht zwischen Groß- und Kleinschreibung.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Neo,

Just small suggestions concerning the variables :

  1. The button (see below) used to look to the variables now opens a window showing all variables included into the objects giving the possiblity to see, change, copy and delete all those variables.
    Suggestion : put that button elsewhere and no more attached to a specific object
  2. Even if copy one or more variables from on object to another, using multi-selection, it is not possible to make (export) a list of all these variables.
    Suggestion : permit the selection of more than one object from the list in order to put that selection into the clipboard.

variable's button.gif

variable's list.gif

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb Neo:

natürlich aufpassen, wenn du gleiche Namen mit unterschiedlicher Schreibweise und unterschiedlicher Bedeutung verwendest

Jede meiner 'Fahrwegbeschreibungen' hatte eine OV Auftrag drin, als Wert ihren eigenen Namen. Naja, und der Auftragshandler auch eine Auftrag um einen solchen dann aufzunehmen. Dabei sind diese Aufträge Schalter gewesen, um sich aktivieren zu können. Da wir keine Gesamtauswahl für Schlagworte haben, habe ich den weiter oben beschriebenen Trick verwendet um jenen 139 Schaltern allen auf einen Klick das Schlagwort AUFTRAG zu verpassen. Wobei ich da keine Ahnung hatte, dass ein Schlagwort direkt irgendwas mit einer OV zu tun hat. Hat natürlich auch den Effekt gehabt, dass nun 139 mal jene OV des Eigennamens verschwunden ist, möglicherweise liegen die Reste noch irgendwo rum und spielen Zeitbombe. Nun, das war nicht tragisch, da nur an einer Stelle .Auftrag verwendet, wo's dann .Name auch tut. Hätte ich's per Hand gemacht, hätte es MBS verhindert und gesagt, dass dies wegen Namensgleichheit nicht möglich ist. Aber da der Trick wunderbar mit SCHALTGLEIS geklappt hat, was sonst nicht gebraucht wird, habe ich das auch mit AUFTRAG so gemacht - und habe diese Meldung erst viel später zu Gesicht bekommen...

Desweiteren ist meine Erkenntnis, das kompliziertere Prozeduren, wie der Auftragshandler und der Pfadsucher, eben nichts für die Standard-EV sind. Das ist was für Lua und dann klappt's auch mit dem Stack. Und für die beteiligten Objekte werde ich auch 'wartbare' Luatables anstelle von OVs verwenden.

@ademes
for such complex layouts like yours, think about moving from object variables to Lua-tables. You can convert them with a little bit of textprocessing in an external editor grabbing them from the exported EV of your V4 (for your V4-layout!). Believe me, that way you can handle them much better later (MBS<->externalEditor). It's worth to learn Lua. And don't ask me now how those tables have to look like, that depends how you plan to use them. Also, complex 'procedures' should also better be rewritten in Lua, for reasons that I am describing here all the way.

Gruß
  Andy

Bearbeitet von Andy
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb Andy:

for such complex layouts like yours, think about moving from object variables to Lua-tables. You can convert them with a little bit of textprocessing in an external editor grabbing them from the exported EV of your V4 (for your V4-layout!). Believe me, that way you can handle them much better later (MBS<->externalEditor). It's worth to learn Lua. And don't ask me now how those tables have to look like, that depends how you plan to use them. Also, complex 'procedures' should also better be rewritten in Lua, for reasons that I am describing here all the way

Hi Andy,

For sure, I will come to LUA.  But in the mean time, I also try to understand how V5 is working >< V4.  And all I saw up to now enjoy me because the major changes made in V5 permits a lot of thing impossible in V4.
During that task (learning), I discover some possible improvements and therefore I gave them as suggestions.  Not only for me, but for all users, beginners or not.

And, Andy, a suggestion I just realize now is the following : aside the fully description of the functionnalities of V5, one should also open a "Tip" directory or thema in the forum where any user can pick-up good ideas to solve the encountered problems.  What do you think about that?

Regards

André

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 25 Minuten schrieb ademes:

I will come to LUA

Not that it matters much, but here's an excerpt from the home page of the Lua developers:

Zitat

"Lua" is a name, the name of the Earth's moon and the name of the language. Like most names, it should be written in lower case with an initial capital, that is, "Lua". Please do not write it as "LUA", which is both ugly and confusing, because then it becomes an acronym with different meanings for different people. So, please, write "Lua" right!

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Neo,
erstmal bin ich froh, wenn Du da wirklich was gefunden hast.

Jetzt noch eine sehr elementare Frage:
Wenn ich nun bei dem rekursiven Flow eine Ebene tiefer komme, dann kann ich aber davon ausgehen, dass mir keine Modulvariablen da lokal erzeugt werden und die des vorherigen Niveaus überdecken, oder? Sollte ich das hingegen wünschen, muß ich über Lua gehen, richtig?

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb ademes:

And, Andy, a suggestion I just realize now is the following : aside the fully description of the functionnalities of V5, one should also open a "Tip" directory or thema in the forum where any user can pick-up good ideas to solve the encountered problems.  What do you think about that?

Hi André,
already suggested that a while ago. Something like an User-Wiki is already in the todo-list.

Link zu diesem Kommentar
Auf anderen Seiten teilen

[22:21:55]                                                 Skriptfehler (119): Maximum instruction count reached

erm, ja, wieviel geht?
vorbereitete Antwort für's zitieren:
  Das kann man so genau nicht sagen, mach's halt kleiner!

Erm, das ist nicht die Skriptlänge, das ist ... eine Endlosschleife :$
 

Bearbeitet von Andy
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi tosamen,

ich klinke mich mal hier raus. weil mir das alles zu theoretisch und geheimnis-umwittert formuliert ist. @Andy  & Co geben keine Beispiele, an denen wir Ahnungslosen etwas lernen könnten, weil viel zu viel unkommentiertes Spezialwissen vorausgesetzt wird, um auch nur ansatzweise folgen zu können. Bitte meldet Eure allgemein formulierten Kommentare und Wunsche direkt per PM an @Neo.  Wenn ihr dann eine Lösung habt, dürft Ihr uns gerne hier detailiert unterrichten-

>:( grollt der dumm gebliebene

Henry

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 18 Minuten schrieb Henry:

Hi tosamen,

ich klinke mich mal hier raus. weil mir das alles zu theoretisch und geheimnis-umwittert formuliert ist. Andy  & Co geben keine Beispiele, an denen wir Ahnungslosen etwas lernen könnten, weil viel zu viel unkommentiertes Spezialwissen vorausgesetzt wird, um auch nur ansatzweise folgen zu können. Bitte meldet Eure allgemein formulierten Kommentare und Wunsche direkt per PM an Neo.  Wenn ihr dann eine Lösung habt, dürft Ihr uns gerne hier detailiert unterrichten-

>:( grollt der dumm gebliebene

Henry

Hey "dummer" Henry

Das faende ich dumm. Schlauer waere es eine koryphaeeen-ecke (eigener thread) einzurichten wo die "uebernatuerlichen" in ihrer geheimsprache ihre dialoge immer  noch oeffendlich, abba unter sich fuehren koennen. Und wir "dummen normalos" tauschen uns weiterhin hier aus (das war doch diee ursprungsidee dieses threads,oda). So koennen intressierte beider fraktionen immer noch cross-spionage betreiben und @Neo kann seine antworten dann sogar artgerecht fuer die jeweilige fraktion im jeweiligen thread veroeffendlichen.

Oda bin ich noch duemmer als ich dachte und habe da was falsch verstanden?

Cheers

Tom

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...