German SQL für Ahnungslosen

ravwerner

Member
Licensed User
Longtime User
Hi
Ich hab ein problem mit dem SQL Dingsda. Ich komme nicht weiter.
Ich schreibe gleich, dass ich von Progrmmierung sehr wenig Ahnung habe, die Zeit ist schon länger vorbei. Deshalb bitte keine abfälligen Kommentare über das gepostete.

Ich will eine Application schreiben die es für mich nicht gibt = Logbuch für Segeln.
Habe jetzt 2 Versionen in die Files gepackt einmal nur SQL und einmal DB utils.

Bei beiden weiss ich nicht wie ich einen einfachen Text in ein die DB bekomme - bzw. wie ich es wieder anzeigen kann. Ich habe ganz einfach aus den Tut.. cut and paste gemacht und versucht nach einigen SQL Erklärungslesungen das an meine Zwecke anzupassen. Teilweise sagen mir auch die Fehlermedungen nicht viel.
Wenn wer helfen will, gerne nehm ich dies an. Wenn nicht, pfeif ich schön langsam drauf und verwende halt mein IPhone weiter, obwohl mir mein Andrpoid lieber wäre.

Im Anhang ist das "Kunstwerk" - hoff ich

Grüsse
Werner
 

Kiffi

Well-Known Member
Licensed User
Longtime User
Hallo Werner,

versuch mal zu erklären, was Deine App können soll (Schritt für Schritt). Dann
kann ich Dir einen einfachen Prototypen erstellen, der das gewünschte macht.
Ich denke, das ist konstruktiver, als wenn wir uns jetzt durch Deinen
(zugegebenermaßen recht chaotischen) Code durcharbeiten.

Grüße ... Kiffi
 

ravwerner

Member
Licensed User
Longtime User
Erklärung was es tun soll :)

Servus

Aber gerne will ich das erklären.

Im Activity Situation sollen die Felder die ich da mal vorgeschlagen habe auswählbar sein (Habe schon gemerkt - dass die Lageveränderung und damit die Funktion Statemanager nicht mit Labels funktioniert, kann man aber vielleicht hinbekommen. -> Weiter -> Auswahl der angeführten Funktionen und bei Button 2 (fertig) in die Db speichern.
Bei erneutem Aufruf der Act. sollen dann diese Werte wieder drinnenstehen.
Also die beiden "Labeltexte" gespeichert werden und bei erneutem Aufruf an der selben Stelle wieder angezeigt werden.
Keine Texteingabe soll möglich sein - sondern nur Auswahl. Der Button 3 ist nur als Kontrolle drinnen damit ich in dr Entwicklungsphase überhaupt sehe ob überhaupt was in die Db kommt/bzw. herauskommt.
Für Wissende eine leichte Aufgabe.

Die Zweite Act. ist noch einfacher. In der Activity Kommentar soll nur ein Kommentar in eine Db geschrieben werden - bei erneutem Aufruf wieder die ANzeige des Textes anzeigen und ggf. ergänzt/geändert werden können. Mit Button 2 (fertig) wieder in die Db speichern. Button 1 zurück zum vorigen Menue (nicht im Zip File drinnen).

Ich hoffe, alles einfach erklärt, das sind eh nur die Grundlagen. Ich habe das Problem, dass ich 2 ähnliche Programme in der Apfelwelt verwenden kann. In der Androidwelt gibt es leider sowas nicht und die Entwickler die ich von der Apfelwelt angeschrieben haben, habe nicht vor, dies in die Androidwelt zu portieren. Mir ist ein Apfeltablet zu teuer - in Android geht es gerade noch.
Soviel zum Verständnis meiner Situation. Ich nehme nicht an, dass mir einer das Programm von Euch schreiben will, also muss ich mich wohl oder übel selber mit der Materie auseinandersetzen.

Das wars jetzt mal.
Grüsse
Werner
 
Last edited:

klaus

Expert
Licensed User
Longtime User
Hallo Werner,
Beiliegend findest Du ein Testprogramm das auf Deinem Code basiert ist.
Es beinhaltet nur die Situation Acivity. Für die Kommentar Activity ist das Prinzip genau das gleiche.

Es gibt aber für mich noch einige offene Fragen.
- Ich verstehe nicht was das Programm wirklich machen soll.
- In der Situationdatenbank hast Du Begriffspaare die, ohne irgend einer Referenz, gespeichert werden. Aber was für einen Sinn haben die eignetlich, was willst Du mit denen machen und wie sollen sie Angezeigt werden ? Anzeige in zwei Labeln, wie Du es versucht hast, hat keinen Sinn denn mit etlichen Einträgen können immer nur zwei angezeigt werden.
- In der Kommentardatenbank hast Du Kommentaare auch ohne irgend einer Referenz, haben die einen Zusammenhang mit den Situationseinträgen?
- usw.

Deine Erklärungen sagen was Du ungefähr wie machen wolltest, geben aber leider keine Angaben was das komplette Projekt wirklich machen soll.
So eine Erklärung wäre viel besser um Dir konkrete Vorschläge machen zu können.

Beste Grüsse.
 

ravwerner

Member
Licensed User
Longtime User
Back to the roots :)

Hi Klaus und die anderen Mitleser.

@ Klaus: Ein dickes Danke fürs File

Dann werd ich mal mit einer Erklärung anfangen was das Programm können soll.
Habe es mit den meisten screenshoots im Wordformat (*.doc) . Das ist aber zu gross als Anhang, deshalb mal nur der Text. Mail versende ich aber gerne =
> 800k


Wenn es wer programmieren will, dann gerne, kann und darf es auch weiter
vermarkten = ich will keinen Cent oder Urheberschutz, Ich liefere gerne Ideen und Anpassungen und würde auch dafür bezahlen - in einem vernünftigen Rahmen natürlich:

Startbilschirm




Danach Törnauswahl - in der Liste die bestehenden oder alten Törns zum auswählen und ggf. editieren.
Das Bild ist nur vom Beispiel aus dem Tutor. In den einzelnen Zellen soll nur dargestellt werden:
Törnname, Ort, von – bis. Nur zur Info nicht zum bearbeiten.



Button Törn geht auf letzten (ersten in der Liste) Törn, Wetter (optional auf einen Wetteranbieter nach Wahl = muss natürlich installiert sein – optionla , da nicht immer mit Inet verbunden = Auslandsroaming!)
Button: Einstellungen, Wetteranbieter zum Auswählen, geschätzter Verbrauch eingeben (für Motorstunden) automatische Wegpunkte alle .. min, und Richtungsänderung > 20°, ..
E Maildresseneingabe für upload
Button upload: schickt ein File (ev. *.kml (Google Earth format) an die auswählbare E-Mailadresse von den Einstellungen – Achtung Auslandsroaming.



Bei Neu – Auswahl des Törnnamens, Name und Typ der Yacht, und bei Kartenausschnitt der Ausschnitt aus Google Maps = aktuelle GPS Position.
Bilder: Bilder die von der Yacht, Crew und vom Hafen gemacht werden = Da sollte die Camera „aufgehen“ und auswahl: Bild verwerfen (Kamera geht wieder auf) oder übernehmen. Danach
soll es wieder auf diese Übersicht zurück
Button Törn (links oben) geht zurück zur Törnauswahl ohne Speichern, Fertig speichert und geht zurück – auch in den nachfolgenden Screens!!!



Törneingabe = Textfeld
Name: Ortsname
Start: Starthafen – Ziel: Zielhafen (kann auch gleich sein) je nachdem ob normale Charter oder One Way



ähnliches für Yacht: Beispiel
Typ: Bavaria 32, Name: MobyDick





wenn man auf einen Törn in der obrigen Auswahl klickt, dann kommt die Einzelseiteseite des Törns.
Diesen Screen hab ich noch nicht, heisst aber
Neuer Wegunkt:
Tag und Zeitübernahme aus dem Androidsystem, Positionsübernahme mit kleinem Ausschnitt von Google Maps, Buttons für Eingabe der Wegpunktdaten wie im Screen unten, Bild (machen) mit verwerfen, übernehmen und danach anzeigen wie vorher.







Button Wind: Auswahl aus dem Scrollmenue der Daten und im Feld angezeigt – nicht editierbar.
zurück = ohne speichern, fertig = speichern und zurück.



Button Situation: Auswahl aus dem Scrollmenue der Daten und im Feld angezeigt – nicht editierbar.
zurück = ohne speichern, fertig = speichern und zurück.



da sind nur bis jetzt Beispiele als Auswahl, soll Hardcodiert werden.



Button Kommentar: Textfeld mit Eingabe allfäliger Ereignisse.
zurück = ohne speichern, fertig = speichern und zurück



Button Wetter: Auswahl aus dem Scrollmenue der Daten und im Feld angezeigt – nicht editierbar.
und extra Auswahl mit den Buttons (Sonnig, wolkig, bewölkt, Nebel, Nieseln, Regen, Starkregen, Gewitter….
zurück = ohne speichern, fertig = speichern und zurück










Button Besegelung: Auswahl der Daten ( gewählte Buttons rot(farbig) unterlegt) und angezeigt – nicht editierbar.
zurück = ohne speichern, fertig = speichern und zurück



Bei Motor – Erweiterung die es noch nicht gibt von:
Neuer Screen mit

Startzeit, Ende – Eingabe editierbar, rechnet automatisch die Dauer und auch mit der Konfigurationseingabe vom Beginn ((Törnübersicht) Button Einstellung ) mit den Daten der eingegebenen Verbrauchsschätzung den geschätztenDieselverbrauch aus und zeigt ihn an.
weiters Felder mit tatsächlich getankten Litern bei der Tankstelle = texteingabefeld.

























Button SpezialWP‘s: Auswahl der Daten ( gewählte Buttons rot(farbig) unterlegt) und angezeigt – nicht editierbar.
zurück = ohne speichern, fertig = speichern und zurück
 
Last edited:

klaus

Expert
Licensed User
Longtime User
Hallo Werner,
Jetzt glaube Ich dass Ich etwas besser verstehe was das Programm machen soll, ist nicht so einfach ohne den Bildern.
Was mich in Deinem Programm stutzig gemacht hatte waren Begriffen die eigentlich einen Zusammenhang haben sollten aber in zwei verschiedenen Datenbanken gespeichert wurden ohne irgend welche Referenzen.

Beste Grüsse.
 

ravwerner

Member
Licensed User
Longtime User
Meldung vom Programm :)

Servus,

fein, dass ich es so halb verständlich erklären konnte.

Bekomme von Deinem Beispiel eine Fehlermeldung:
In 118line ...
table Situationsdaten has 4 columns but 2 values were supplied:...

Continue?

Habe es so halbwegs durchgeschaut, sehe aber nicht, wo die 4 columns deklariert wurden.

Danke jedenfalls nochmals.
Werner

p.s. ich habe es deswegen in der anderen Activity mit "einfacher SQL = Dbutils" versucht, aber bin ich auch angestanden :)
 

klaus

Expert
Licensed User
Longtime User
Wahrscheinlich hast Du schon eine andere Datei 'Situation.db' im DirRootExternal Ordner die 4 Spalten hat.
Aktiviere Zeile 45
B4X:
File.Delete(DBPathName, "Situation.db") ' zum testen
damit die existierende Datei gelöscht wird dann muss es funktionieren.
Vergesse aber nicht diese Zeile wieder auszukommentieren.

Beste Grüsse.
 

ravwerner

Member
Licensed User
Longtime User
Servus

Ja; Danke habe beim weiterschauen , jetzt nach dem Essen, die Usache auch dort vermutet und Deine Zeile auskommentiert und jetzt funktioniert es :)

Nochmals Danke
Ich hoffe, dass ich jetzt doch a bissl weiter bin;-) Übung soll ja die Fähigkeit ein wenig steigern.

Bin gespannt ob ich mein Projekt mal fertig bekomme, da sind für mich fast nur Stolpersteine drinnen - aber -> die Hoffnung stirbt zuletzt.

Grüsse
Werner

p.s. habe früher viel in Assambler mit Microcontroller programmiert, da muss man zwar jedes register/speicher einzeln angehen, für mich aber leichter zum anzeigen der Speicherzelle - ist aber auch schon länger her.
 
Top