Eine RTF-Datei mit dem MPR erstellen, und damit realisieren wir einen STROMKOSTENRECHNER

Moderator: MVogt

Post Reply
User avatar
Theo_Gottwald
Posts: 367
Joined: 03. Oct 2009, 08:57
Location: Herrenstr.11 * 76706 Dettenheim
Contact:

Eine RTF-Datei mit dem MPR erstellen, und damit realisieren wir einen STROMKOSTENRECHNER

Post by Theo_Gottwald » 09. Oct 2022, 20:20

Dieses neue Topic hat gleich vier wichtige Punkte:

1. Unbedingt das neueste MPR-Update einspielen, dieses kann man via ONLINE-Update sich holen. Sonst funktioniert das Skript unten nämlich nicht.

2. Wir erzeugen hier im Skript eine "RTF-Datei", das ist das "Richtext-Format" das auch in E-Mails oder als Word-Files Verwendung findet.

3. Dazu verwenden wir die neuen "INLINE-DATA-Befehle". Genauso wie im Skript unten gezeigt, kann man auf diese Weise RTF-Files , aber auch andere Dateiformate mit dem MPR leicht selbst erstellen.

Zum Strom:
Immer mehr Firmen berichten dass Ihre alten Stromversorger deren Verträge aufkündigen, und der Grundversorger Kilowatt-Preise bis zu 1.50 EUR pro Kilowattstunde haben will. Das waren Mal 8-27 Cent für energie-intensive Betriebe.
Und auch das war schon das zweifache oder fünffache dessen, was Firmen im Ausland für Strom bezahlen.

Aber nun ist das so, und man muss annehmen dass es auch volle Absicht ist.
Im TV wird es auch gesagt, die Leute sollen zum Energiesparen gezwungen werden. Koste es was es wolle.
Nun ist das so.
Man kann nun darüber rätselraten welche Produktionen unter solchen Umständen überhaupt noch profitabel sind.

Vielleicht können einige weniger energie-intensive Firmen den Spagat in die "schöne neue Öko-Welt" schaffen, wenn alle Mitarbeiter
helfen beim STROM sparen, und dazu wenigstens Mal verstehen, "was ist überhaupt eine Kilowattstunde" und "wieviel kostet dann der Strom für ein bestimmtes Gerät?".

Und da wird man zukünftig wohl auch bei der Kaffee-Maschinen schon anfangen zu rechnen, auch wenn heute darüber noch jeder lacht. Denn bei einem Stroimpreis von 1,50 EUR / kw/h da kostet eine Kaffee-Maschine die 8 Stunden am Tag läuft, schon einen Batzen Geld.

Der STROMPREIS-Rechner rechnet vor: bei einer 1000W Kaffemachine sind das 260 EURO Stromkosten im Monat. Bei einer mit 1500 Watt sind es 540 Euro im Monat. Hier ein Beispiel der Ausgabe (basierend auf den 1.50 EUR /kw/h):

Code: Select all

Leist:*1	Kost.*2		Kost.*3		Kost.*4

25		3,75 Cent	30 Cent		9 EUR
100		15 Cent		1,2 EUR		36 EUR
250		37,5 Cent	3 EUR		90 EUR
500		75 Cent		6 EUR		180 EUR
1000		1.5 EUR		12 EUR		360 EUR
2000		3 EUR		24 EUR		720 EUR
11000		16.5 EUR	132 EUR		3960 EUR

*1 Leistung in Watt
*2 Kosten pro 1 Stunde
*3 Kosten am Tag (8 Stunden)
*4 Kosten im Monat (30 Tage) bei 8 Stunden Betrieb pro Tag
Zum Skript/Programm:
Damit man das besser im Überblick hat, DABEI soll der "MPR-Stromrechner" helfen.
Auf der linken Seite stehen die WATTZAHLEN die ein Gerät typischerweise hat. Also 100 Watt, oder 250 WATT oder 1000 Watt.
Das steht ja auch immer drauf. Ein typische E-Auto kann zum Beispiel mit 11000 Watt oder mehr laden.
Deswegen ist das auch mit dabei.

RECHTS daneben stehen nun die KOSTEN pro 1 Stunde, 8 Stunden und im MONAT.
So kann man leicht sehen, wieviel jedes Gerät - wenn es läuft - dann an KOSTEN produziert.
Und man hat es schwarz auf weiss. Kann es ausdrucken, und an die Wand kleben.

Bei dem was nun auf die Firmen zu kommt da muss jeder schauen wie er beim Energiekosten-Sparen mit machen kann.

Wenn man nun den MPR-Energikostenrechner startet, dann fragt der erst Mal "Was kostet denn bei euch eine Kilowattstunde?".
Das muss man erst Mal eingeben. Den Preis "pro Kilowattstunde" bekommt man vom Stromversorger genannt.
Damit rechnet der STROM-PREIS-Rechner dann die Kosten für die Geräte - je nach Watt-Zahl - aus.
Und schreibt alles in eine Datei "Ausgabe.rtf".

Technisch geht das Skript so vor:

1. In ":RTF_Geruest" haben wir das Gerüst eines solchen "RTF-Files" und es gibt den Text Header in der Variablen $$TXA. Dieses Gerüst wird nach $$DTA eingelesen.

2. In ":Ask" fragen wir den Anwender nach dem jeweiligen Preis pro 1 Kilowattstunde. Also Antwort kann man zum Beispiel "0.40" eigeben, wenn eine Kilowattstunde 40 Cent kostet.

3. Im Hauptprgramm werden ab Zeile 30 die jeweiligen Stromkosten berechnet und in der Variablen $$GES zwischengespeichert. Das erfolgt in einer Schleife, man kann also noch weitere Werte hinzufügen - also andere Wattzahlen. Das muss dann in Zeile 23 erfolgen, dort stehen die WATTZAHLEN die ausgerechnet werden.

4. In ":Replacer" werden die im Gerüst eingebauten Platzhalter wie zum Beispiel "*Headline*" dann mit der aktuellen Headline also Überschrift ersetzt. Ebenso wird dann hier die "*Tabelle*" mit den Kostenwerten eingesetzt.

5. Das fertige RTF-File wird herausgeschrieben, und zwar in den gleichen Ordner, wo auch das Skript liegt. Dann kann man es zum Beispiel ausdrucken und aushängen.

Und hier ist er nun der STROMKOSTENRECHNER über den man noch vor 2 Jahren gelacht haben würde und der bald ganz wichtig sein könnte.

Hinweise zum RTF-Format.
Das Rich Text Format (RTF) ist ein proprietäres Dateiformat für Texte, das von Microsoft 1987 eingeführt wurde. Es kann als Austauschformat zwischen Textverarbeitungsprogrammen verschiedener Hersteller auf verschiedenen Betriebssystemen dienen.
Es hat aber gegenüber Textdateien nicht nur den Vorteil, dass man Formattierungen, Fett oder krusive Schrift, Schriftarten und Schriftgrößen im Text mitliefern kann, sondern es bietet auch die Möglichkeit für Texte die Codepage mitzugeben.
Dadurch kann man bei internationalen Texten es vermeiden dass Sonderzeichen falsch dargestellt werden.
In unserem Skript tun wir das auch:

Code: Select all

VAR\$$TXA=\pard\cf1\f1\fs18\lang1031$sp$
Mehr Details zum RTF-Format findet man zum Beispiel hier:
RTF-Format

Code: Select all

' +++ Strom-Rechner.rem +++
' Zweck: Stromkosten typischer Verbraucher berechnen und in einer druckbaren " .rtf-Datei" ausgeben.
' Die RTF-Datei erscheint mit Skript-Verzeichnis. Eine vorhandene solche Datei wird überschrieben.
' Serie: -
' Bemerkungen: 
'
' erstellt am: 24.09.2022
' von: Theo Gottwald
'========================
'
'#EXE:?path
'#SPI:AutoSettings
'#FDC:Ask
'#MAN:ra
'
DED\1
' Ausgabe Dateiname
VAR\$$FIL=?path\Ausgabe.rtf
GSB\RTF_Geruest
' Watt-Zahlen typischer Stromverbraucher,
' 11 kw ist die typische Ladeleistung bei einem E-Auto mit 22kw Wallbox
VAR\$$WAT=25,100,250,500,1000,2000,11000
GCC\,<$$WAT>$$ANZ
VIC\$$ANZ

GSB\Ask

' Ausgabevariable löschen
VAR\$$GES=
FOR\$$WAB|1|$$ANZ
' Mit Koma getrennte Leistung aus $$ WAT entnehmen
   SBD\|$$WAT|,|$$WAB>$$WAR   
' Stromkosten pro 1 Stunde berechnen
'   CAL\$$SPS=$$ERG*$$WAR
' Stromkosten pro 1 Stunde für die angegebene Leistung
   VAR\$$FOR=$$ERG*($$WAR/1000)
   GRN\m_eval|$$FOR|>$$SPS
' GRN arbeitet mit ".", CAL\$$ mit "," als Trennzeichen
   CAL\$$SP8=$$SPS*8
   CAL\$$SP3=$$SP8*30
' EUR oder Cent?
   VAR\$$WER=$$SPS
   GSB\Check_Cur
   VAR\$$SPS=$$WER

   VAR\$$WER=$$SP8
   GSB\Check_Cur
   VAR\$$SP8=$$WER

   VAR\$$WER=$$SP3
   GSB\Check_Cur
   VAR\$$SP3=$$WER

   ' Ausgabezeile zusammenstellen
   VAR\$$OUT=$$WAR$$TAC$$SPS$$TAC$$SP8$$TAC$$SP3\par$crlf$
   VAR\$$GES=$$GES$$OUT
NXT\

VAR\$$HEA=Leist:*1\tab\tab Kost.*2\tab\tab Kost.*3\tab\tab Kost.*4\par$crlf$
VAR\$$FOO=*1 Leistung in Watt\par$crlf$*2 Kosten pro 1 Stunde\par$crlf$*3 Kosten am Tag (8 Stunden)\par$crlf$*4 Kosten im Monat (30 Tage) bei 8 Stunden Betrieb pro Tag\par$crlf$
' Text in RTF-Gerüst einfügen
GSB\Replacer
' Datei ausschreiben
CTF\$$FIL<$$DTA
MBX\Die Ausgabe finden Sie in der Datei*$$FIL
@
'----------------------------------------------------------------------------
'         Unterprogramme
'----------------------------------------------------------------------------
'
:Check_Cur
'RIT\|$$WER|,|.
IVV\$$WER<1
   CAL\$$WER=$$WER*100
   VAR\$$WER=$$WER Cent
ELSE
   VAR\$$WER=$$WER EUR
EVV\
RET\
'----------------------------------------------------------------------------
:Ask
' Default Stromkosten pro 1 kw/h
VAR\$$DEF=0.40
VAR\$$QUE=Geben Sie Ihren Strompreis pro 1 kw/h hier an.
VAR\$$HEA=Stromkosten-Rechner
GIP\$$QUE|$$HEA|$$DEF
VAR\$$ERG=$v1$
RET\
'----------------------------------------------------------------------------
:Replacer
GSB\RTF_Geruest
RIT\|$$DTA|*Headline*|$$HEA
RIT\|$$DTA|*Tabelle*|$$GES
RIT\|$$DTA|*Footer*|$$FOO
RET\
'----------------------------------------------------------------------------
'
'----------------------------------------------------------------------------
' Manual entered Data.
' Enthält "*Headline*" als Platzhalter für die Überschrift
' und "*Tabelle*" als Platzhalter für den Haupttext
' und "*Footer*" als Platzhalter für den Footer
'
' Rich-Text Spezifikation:
' Details: https://www.microsoft.com/en-us/download/details.aspx?id=10725
'
' \b \b0 - Bold   
' \i \i0 - Italic
' {} - Textblock
' $$DTA = Data
' $$FIN = Filename of Sourcefile
' Length:  601 Bytes in  9 Lines.
:RTF_Geruest
' Zeilenumbruch
VAR\$$UMB=\par
' Text-header mit Codepage
VAR\$$TXA=\pard\cf1\f1\fs18\lang1031$sp$
' Tabulator
VAR\$$TAC=\tab\tab$sp$
'
VAR\$$DAT=?MAACN428Ge1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZGVmZjBcbm91aWNvbXBhdFxk
VAR\$$DAT=$$DATZWZsYW5nMTAzMXtcZm9udHRibHtcZjBcZm5pbFxmY2hhcnNldDAgQ2FsaWJyaTt9
VAR\$$DAT=$$DATe1xmMVxmbmlsXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xjb2xvcnRibCA7
VAR\$$DAT=$$DATXHJlZDBcZ3JlZW4wXGJsdWUwO30NCntcKlxnZW5lcmF0b3IgUmljaGVkMjAgMTAu
VAR\$$DAT=$$DATMC4yMjAwMH1cdmlld2tpbmQ0XHVjMSANClxwYXJkXHNhMjAwXHNsMjc2XHNsbXVs
VAR\$$DAT=$$DATdDFcZjBcZnMyMlxsYW5nNyAqSGVhZGxpbmUqXHBhcg0KKlRhYmVsbGUqDQoNClxw
VAR\$$DAT=$$DATYXJkXGNmMVxmMVxmczE4XGxhbmcxMDMxICpGb290ZXIqDQpcY2YwXGYwXGZzMjJc
VAR\$$DAT=$$DATbGFuZzdccGFyDQp9Py0=
' This Line will decode the Data into the Variable $$DTA. Variable $$FIN may contain a hint about the origin of the data.
ANA\Decode|$$DAT|$$DTA|$$FIN
RET\
'----------------------------------------------------------------------------
'
'----------------------------------------------------------------------------
Attachments
RTF-Spezifikation.pdf
RTF Spezifikation 1.9.1
(3.52 MiB) Downloaded 107 times

Post Reply

Return to “Package Robot”

Who is online

Users browsing this forum: No registered users and 4 guests