Kalender erzeugen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Katrin_F
Beiträge: 5
Registriert: So, 12.07.2015 23:54

Kalender erzeugen

Beitrag von Katrin_F »

Hallo,
ich bin seit ein paar Tagen am suchen habe aber noch nicht das richtige gefunden. Ich möchte mir eine Bilanz für meine 10 Hühner erstellen und brauche dafür einen Kalender der mir automatisch jeden Tag wenn ich ihn öffne mir das aktuelle Datum oben ansetzt. Sollte ich wegen Urlaub oder sonstigem einen oder mehrere Tage nicht öffne sollten trotzdem die fehlenden Tage eingefügt werden. Habe mal ein Beispiel wie der Kalender aussieht angehängt. Die Ergebnisse will ich dann zu Teil weiter verarbeiten (Diagramme usw.) wobei ich denke zurechtkomme.
Eines hätte ich noch, das ganze möchte ich natürlich auch drucken, allerdings nicht immer das ganze, sonder Wochenweise oder Monatsweise (ist egal) mit einem Auswahlfeld. Eventuell. geht es auch über eine Auswahl die „letzten 4 Wochen“. Wobei mir über die Auswahl „vergangene x Wochen am liebsten wäre. (x zum eingeben z.B. 5 oder 10).
Wäre sehr froh wenn hier jemand eine Idee hätte.

Liebe Grüße Katrin
Dateianhänge
Eiermenge.ods
(11.41 KiB) 200-mal heruntergeladen
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Kalender erzeugen

Beitrag von clag »

Hallo Katrin_F,

hmmmm
dein Tabellen "Design" erscheint mir nicht besonders gut geeignet um später auf einfache Weise etwas auswerten zu können. Verbundene Zellen sind dafür keine gute Idee! ein Datensatz, eine Zeile, nur dann sind Formeln einfach zu vervielfältigen und Diagramme easy zu erstellen.

Trotzdem habe ich einmal deinen Wunsch in deiner Beispieldatei umgesetzt, beim öffnen werden die fehlendne Tage bis zum aktuellen Datum eingefügt, ggf auch manuell über den Button [update] .
Eiermenge+Makro.ods
(13.07 KiB) 158-mal heruntergeladen
Katrin_F hat geschrieben:das ganze möchte ich natürlich auch drucken, allerdings nicht immer das ganze
Dafür eignet sich die Verwendung eines Druckbereiches mit Wiederholungszeile, den du deinen jeweiligem Wünschen entsprechend anpasst.
Menü > Format > Druckbereich >festlegen und später nur bearbeiten.

Viel Erfolg.
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Katrin_F
Beiträge: 5
Registriert: So, 12.07.2015 23:54

Re: Kalender erzeugen

Beitrag von Katrin_F »

Hallo clarg,
Ja das mit der Formatierung habe ich auch schon überlegt ist mir aber noch nichts besseres eingefallen. Denn ich habe beim Futter max.vier verschiedene Sorten, brauche hier da ich diese über pulldown einfügen will vier Zellen. Sonst benötige ich nirgends mehr so viele. Nun hole ich ja morgens und abends Eier deshalb am Anfang die Doppelfelder. Und am Ende die Gesamtmenge da benötige ich nur noch ein Feld. Lasse ich ich die Tabelle komplett und springe mit den Pfeiltasten habe ich sehr viele leere Zellen, oder kann man das auch anders lösen, eventuell sperren? Werde mal ein wenig Googlen.
Auf jeden Fall vielen vielen dank für die schnelle Antwort. Werde mir das Ergebnis von dir heute abend nach der Arbeit mal anschauen und mich dann nochmals melden.

LG Katrin
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Kalender erzeugen

Beitrag von TrueColor »

Katrin_F hat geschrieben:oder kann man das auch anders lösen, eventuell sperren?
Die erste Idee, die mir kam: Eingabeformular!
Entweder über ein entsprechendes Tabellenblatt, da kannst du auch mit Pulldowns arbeiten. Eintragen und per Macro in die Datentabelle (Datum | früh/spät| Größe | Futter | Menge | Menge gesamt) übertragen. Oder über Dialoge, davon habe ich aber leider noch keine Ahnung.

BTW: Wie bewertest du die Größe? Als Mittelwert aller Größen einer Entnahme? Oder sind die Größen innerhalb einer Charge immer ähnlich?
System:
LibO 6 + LibO 7
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Kalender erzeugen

Beitrag von TrueColor »

Hab noch mal bissel gebastelt, siehe Anhang. Daten/Gültigkeit/Liste kann man gut für ein einfaches Pulldown missbrauchen.

An die etwas Fortgeschritteneren: Wie kann man das Auskommentierte elegant lösen, ohne nochmal extra eine Fallunterscheidung machen zu müssen?

Code: Alles auswählen

	
[...]	
		'oCell.aCellContentType(i).aData(i)
		Select Case aCellContentType(i)
			Case "Value"
				oCell.Value = aData(i)
			Case "String"
				oCell.String = aData(i)
		End Select
Dateianhänge
Eiermenge_TC.ods
(14.7 KiB) 138-mal heruntergeladen
System:
LibO 6 + LibO 7
Katrin_F
Beiträge: 5
Registriert: So, 12.07.2015 23:54

Re: Kalender erzeugen

Beitrag von Katrin_F »

Hallo euch beiden, hatte mir in der Mittagspause mal Gedanken über die Einteilung der Tabelle gemacht und festgestellt clag hat recht, zum Auswerten der Zeile ist es viel besser für jeden wert eine Zelle zu haben. Habe deshalb das ganze etwas abgeändert (siehe Anhang).
Nun sollte es doch einfacher sein einen neuen Tag unter dem Kopf zu erzeugen wenn man das Doku öffnet, bzw. zu schauen ist es vorhanden dann nicht ist ein neuer Tag einen Tag einzufügen. Hatte ja bis zu vier Zeilen pro Tag, dieses würde sich lösen lassen, in dem ich beim Verketten für jede Zeile ein Zeilenumbruch Formatieren könnte, siehe Beispiel Blatt "Futter". Ist wegen optischen Gründen, da Zelle sonst sehr lang und unübersichtlich.
Zum drucken habe ich überlegt ob es vielleicht einfacher wäre man gibt an, wie viele Tage man vom gegenwärtigen Tag gedruckt werden will (zb. 10 Tage oder 20 Tage).
Dank an euch beiden für die Hilfe bei meinem Problem.

LG Katrin
Dateianhänge
Einzeiliger Kalendertag.ods
(10.94 KiB) 160-mal heruntergeladen
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Kalender erzeugen

Beitrag von TrueColor »

Zum Thema Zeilenumbruch:

Code: Alles auswählen

="Futter 1" & ZEICHEN(10) & "Futter 2" & ZEICHEN(10) & ...
Die 10 in der ASCII-Tabelle ist der Zeilenumbruch (Line Feed)

Edit: Aber warum musst du alle Futterarten aufführen? Fütterst du nicht nur 1 von den 4 Arten?
System:
LibO 6 + LibO 7
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Kalender erzeugen

Beitrag von TrueColor »

TrueColor hat geschrieben:An die etwas Fortgeschritteneren: Wie kann man das Auskommentierte elegant lösen, ohne nochmal extra eine Fallunterscheidung machen zu müssen?

Code: Alles auswählen

	
[...]	
		'oCell.aCellContentType(i).aData(i)
		Select Case aCellContentType(i)
			Case "Value"
				oCell.Value = aData(i)
			Case "String"
				oCell.String = aData(i)
		End Select
Habe dafür mal nen neuen Thread aufgemacht: viewtopic.php?f=18&t=66022
System:
LibO 6 + LibO 7
Katrin_F
Beiträge: 5
Registriert: So, 12.07.2015 23:54

Re: Kalender erzeugen

Beitrag von Katrin_F »

Hallo Truecolor, sorrry das ich mich erst heute melde, war aber beruflich sehr angespannt um kam die letzten Tage nicht dazu an Rechner nach Feierabend zu gehen.
Ich brauche schon bis zu vier Zeilen da ich ja nicht nur ein Futter gebe sondern mir die beste Mischung zusammenstellen will, Dafür die Auswertung,
Danke dir für den Tipp zum Zeilenumbruch, hilft mir sehr.

Gruß Katrin
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Kalender erzeugen

Beitrag von clag »

Hallo Katrin_F und ..

diese Crux mit dem Futter in einer Zelle kann ich irgendwie nicht folgen, wofür soll das gut sein ?

Wieso nimmst du nicht für jede Futtersorte eine Spalte und trägst dort ein wieviel du jeweils gegeben hast,
dann hat man Werte die sich sinvoll auswerten lassen und zB mit anderen Resultaten vergleichen kann.
Willst du nur protokollieren welche Sorte gefüttert wurde tut es ein beliebiges Zeichen in der Spalte für ja oder nein.
Futter.png
Futter.png (2.15 KiB) 5549 mal betrachtet
Zuletzt geändert von clag am Do, 16.07.2015 08:39, insgesamt 1-mal geändert.
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Kalender erzeugen

Beitrag von TrueColor »

Ich bin der Meinung, man muss sich nicht entschuldigen, wenn man mal 1 Tag nicht an den Rechner kann. Real Life geht vor.

Da du ja möglicherweise irgendwann auch mal die Futterzusammensetzung automatisch auswerten willst, würde ich davon Abraten, das Futter über mehrere Zeilen einzugeben. Und Zeilenumbruch (du willst mehrere Daten in 1 Zelle darstellen) ist ganz tödlich. Nimm halt für jedes Futter eine Spalte, auf paar Spalten mehr oder weniger kommt es nicht an, aber es erspart dir hinterher jede Menge Ärger.

Edit: Clag war schneller :-)
Edit2: und das ganze nochmal mit DataArray, sehr wenig übersichtlicher Code.
Dateianhänge
Eiermenge_TC_2_DataArray.ods
(16.62 KiB) 207-mal heruntergeladen
Eiermenge_TC_2.ods
(16.06 KiB) 190-mal heruntergeladen
System:
LibO 6 + LibO 7
Katrin_F
Beiträge: 5
Registriert: So, 12.07.2015 23:54

Re: Kalender erzeugen

Beitrag von Katrin_F »

Hallo Truecolor und..., melde mich schnell mal vor Ende meiner Pause, Habe mir über mittag die Sache nochmal durch den Kopf gehen lassen und festgestellt du hast Recht!!! Ich war am Anfang zu verbohrt und zu sehr auf die Optik aus. Habe hinterher dann das Problem mit dem Auswerten. Danke für die Erleuchtung hat mir doch viel Arbeit hinterher erspart. Danke euch allen, werde die Sache jetzt anders aufbauen und mir vorher mehr Gedanken über Auswertung als über Optik machen.

Gruß Katrin
Antworten