German Datum-Feld von Anfänger

Ida

Member
Licensed User
Longtime User
Hallo,
welchen Code muss ich schreiben, um in einem Feld Datum-Werte eintragen zu können, die dann abgespeichert werden in eine CSV-Datei?
Muss ich im Designer irgendetwas anderes machen?

Für jede Hilfe - am besten mit einem Progrämmchen + Code - wäre ich sehr dankbar. Programmieren ist halt schwer ...

Gruß
Ida
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo Ida,

für die Eingabe von Datum-Werten nimmt man am besten ein Calendar-Control. Die Eingabe ist damit für den User bequemer und außerdem verhindert man auf diese Weise elegant mögliche Falscheingaben.
Um Datumswerte (oder auch andere Daten) in eine csv-Datei zu speichern legt man diese Informationen zunächst in einem Table-Control ab. Die Methode SaveCSV erlaubt einem dann auf sehr einfache Art die Daten in eine csv-Datei zu exportieren. Die Struktur der Tabelle wird beim Speichern übernommen.

Im Anhang gibt es ein gewünschtes Beispiel.

Programmieren ist halt schwer...
So würde ich das nicht sagen, aber man muss sich natürlich Stück für Stück einarbeiten. Und ein wenig Eigeninitiative ist auch notwendig, denn schließlich helfen wir zwar alle gern, schreiben aber keine kompletten Programme auf Bestellung. :sign0105:
Kleiner Tipp am Rande: Oftmals hilft auch das Studium der vielen (Beispiel-)Programme hier im Forum. Solche Dinge wie Daten eingeben und als csv-Datei speichern kommen dabei fast immer vor.


Gruß
specci48
 

Attachments

  • DatumEingaben.sbp
    1.2 KB · Views: 361

Ida

Member
Licensed User
Longtime User
Hallo Specci48,

vielen Dank für Deine Antwort mit dem Beispiel-Code!
Damit habe ich schon einiges mehr verstanden.

Ich hatte auch schon diverse Beispiele aus Forum und bei B4PPC "mitgeliefert" ausprobiert, z. B. "Accounts" für die Eingabe. Damit geht schon einiges ganz gut. Nun werde ich versuchen, mit Deinem Beispiel auch eine Datum-Eingabe verarbeitet zu bekommen.

Du wirst mir hoffentlich glauben, dass ich erst bei mir am PC lange ausprobiere, ehe ich mich traue, hier im Forum zu fragen.
Ich bin Dir (und Euch) wirklich sehr dankbar, dass Du (und Ihr) auch einem Anfänger helft!

Gruß
Ida
 

specci48

Well-Known Member
Licensed User
Longtime User
Du wirst mir hoffentlich glauben, dass ich erst bei mir am PC lange ausprobiere, ehe ich mich traue, hier im Forum zu fragen.
Glaub ich Dir. Und Du darfst auch gerne fragen, bevor Du etwas ausprobiert hast :sign0060:
Ich will Dich auch beim besten Willen nicht am Fragen hindern, falls meine Antwort dennoch so "rüber gekommen" sein sollte: :sign0013:


In Erwartung weiterer Fragen, ein gerne helfender
specci48
 

Ida

Member
Licensed User
Longtime User
@specci48: Danke Dir für Deine Unterstützung! Danke auch - und insbesondere -für die Ermutigung, weiter Fragen zu stellen! Wenn ich genug ausprobiert habe, melde ich mich wieder.
Ida
 

Ida

Member
Licensed User
Longtime User
Hallo Specci48 (natürlich auch andere User),

jetzt hätte ich eine Frage:

im beigefügten Beispiel (teilweise von Dir - Specci48) hätte ich gerne, dass die Summe der Preise im LblSumme steht; klappt so leider nicht.
Es kommt immer eine Fehlermeldung - array ...

Danke für Deine (Eure) Hilfe!

Gruß
Ida
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo Ida,

in Basic4ppc gibt es keinen fertigen Befehl, der ähnlich wie in Excel mit SUM() die Summe über eine Spalte ermittelt. Das muss man schon selber programmieren.

Im Anhang findest Du zwei geänderte Programmvarianten:
- bei Lizenzen2 wird nach dem Laden der Tabelle mit einer Schleife für jede Tabellenzeile der Preis aufsummiert und im Wert zwischenSumme abgelegt. Fügt man eine Zeile hinzu, so wird der zusätzliche Preis einfach auf die bisherige zwischenSumme addiert
- bei Lizenzen3 habe ich mal so etwas wie eine "allgemeingültige" Sub bzw. Funktion zur Spaltensummierung geschrieben. Der Funktion wird der Tabellen- und der Spaltenname übergeben, als Ergebnis gibt es die Summe der Spalte zurück

Anmerkung:
Die Variante aus Lizenzen2 ist beim Einfügen/Löschen von Zeilen schneller, weil hierbei nicht immer die komplette Summe neu berechnet wird. Dafür muss man sich aber die zwischenSumme merken und korrekt addieren bzw. subtrahieren.
Die Variante aus Lizenzen3 ist ggf. (aufgrund des verwendeten Control-Befehls) nicht sofort verständlich. Zum besseren Verständnis einfach mal in die zugehörige Hilfe schauen oder... na ja, ich kenne da so ein Forum... :rolleyes:


Gruß
specci48
 

Attachments

  • Lizenzen2.sbp
    2.3 KB · Views: 332
  • Lizenzen3.sbp
    2.7 KB · Views: 352

Ida

Member
Licensed User
Longtime User
Hallo specci48,

oh, so schnell warst Du, vielen Dank - besonders auch für Deine Anhänge! Die werde ich nachher ausprobieren. Ich melde mich dann wieder.
Ohne "unser" Forum - und ohne Deine Hilfe - wäre ich wohl "programmiertechnisch" verloren.

Gruß und schönes sonniges Wochenende

Ida
 

mcmanu

Active Member
Licensed User
Longtime User
Hi

Dies bezüglich hätte ich zwei fragen ;)

Erste: Kann man das aktuelle datum auslesen? zum beispiel das aktuelle datum in ein label anzeigen lassen?
also irgentwie mit datetime?

Zweite: wie holt man sich neue Controls? hab die Calender controls gar nicht in meinem Designer.

Danke im vorraus ;)
 

specci48

Well-Known Member
Licensed User
Longtime User
Dies bezüglich hätte ich zwei fragen ;)

Erste: Kann man das aktuelle datum auslesen? zum beispiel das aktuelle datum in ein label anzeigen lassen?
also irgentwie mit datetime?

Hallo mcmanu. Das Auslesen geht ganz einfach mit:
B4X:
    ' Anzeige des aktuellen Datums
    Label1.Text = Date(Now)
    ' oder vorher: Umstellung auf deutsches Datumsformat
    DateFormat("dd.mm.yyyy")
    Label2.Text = Date(Now)

Zweite: wie holt man sich neue Controls? hab die Calender controls gar nicht in meinem Designer.
Ich schon... siehe Anhang CalandarControl.jpg


Gruß
specci48


Edit:
@mcmanu: Ich sehe gerade Deine andere Frage hier im Forum. Erst daran konnte ich erkennen, dass Du mit Basic4Android unterwegs bist und nicht mit Basic4ppc. Um zukünftig solche Verwirrungen zu vermeiden bitte immer darauf achten, worauf sich der bisherige Verlauf bezieht. Im Zweifel lieber einen neuen Thread aufmachen. Danke! :)
 

Attachments

  • CalandarControl.jpg
    CalandarControl.jpg
    52.1 KB · Views: 338
Last edited:

klaus

Expert
Licensed User
Longtime User
Hallo mcmanu,

Achtung, für Deine Frage hättest Du einen neuen Thread anfangen sollen.
Dieser Thread betrifft Basic4PPC.

1)Label1.Text = DateTime.Date(DateTime.Now)
Das Anzeigeformat kannst Du mit DateTime.DateFormat("yyyy.MM.dd") gibt 2011.12.23

2) Es gibt kein Android eigenes Calender Control.
Aber in der Dialogs Library von agraham gibt es ein DateDialog Objekt.

Beste Grüsse und schöne Festtage.
 

mcmanu

Active Member
Licensed User
Longtime User
danke

Super Danke ;)

Mhh okay komisch xD bei mir wirds nicht angezeigt o_O xD naja ich werd mal ne email an b4a schicken ;)

Danke für deine Hilfe ;)

@Klaus, okay, sorry wusste ich nicht ;) bin noch ganz neu ;) aber ich werde es in zukunft machen, danke für deinen hinweis ;)
 
Last edited:
Top