Entwickler: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
 
(63 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<i>Software ist in der modernen Welt zu wichtig, um nicht als Open-Source entwickelt zu werden.</i><br>
<i>Software ist in der modernen Welt zu wichtig, um nicht als Open-Source entwickelt zu werden.</i><br>
[Linus Torwalds]
[Linus Torwalds]
<br>
<i>Freie Software ist die Basis für IT-Sicherheit</i><br>
[Richard Stallman]
* Aktuelle Entwicklungen: https://github.com/Andreas-Filsinger/OrgaMon/commits/main/


== OrgaMon, unterstützte Betriebssysteme ==
== OrgaMon, unterstützte Betriebssysteme ==


* Win32, Windows 2000, XP, Vista, Windows 7
* Win32, Windows 2000, XP, Vista, Windows 7, Windows 10
* Linux über die Emulations-Schicht Wine ab 0.98.5
* Linux über die Emulations-Schicht Wine ab 0.98.5
* Virtualisierte Windows XP Systeme (via VirtualBox)
* Virtualisierte Windows 10 Systeme (via [[Linux.kvm]])


== OrgaMon-App, unterstützte Betriebssysteme ==
== OrgaMon-App, unterstützte Betriebssysteme ==
Zeile 17: Zeile 22:
*[[Entwickler Schnellstart]]<br>
*[[Entwickler Schnellstart]]<br>
*[[OrgaMon-FS|OrgaMon Test-Suite]]<br>
*[[OrgaMon-FS|OrgaMon Test-Suite]]<br>
* Datenbank [[Metadaten]]
*[[Technik]]
*[[Technik]]
*[[eCommerce]]<br>
*[[eCommerce]]<br>
Zeile 25: Zeile 31:
*[[HotKeys]]
*[[HotKeys]]
*[[OrgaMon-next]]
*[[OrgaMon-next]]
*[[HeBu-next]]
*[[TxOrtung]]
*[[TxOrtung]]
*[[minecraft]]
*[[minecraft]]
*[[ZIP-Erstellung]]
* http://msdn.microsoft.com/en-us/library/ms740668(v=vs.85).aspx
* http://msdn.microsoft.com/en-us/library/ms740668(v=vs.85).aspx
== OrgaMon, Summer of Code ==
*[[SOC-2016]]


== OrgaMon-RC ==
== OrgaMon-RC ==
Zeile 34: Zeile 44:
*[[OrgaMon-RC]]
*[[OrgaMon-RC]]


== OrgaMon-Servers ==
== Team-Entwickler ==


seit 2010 gibt es 2 Win32 Konsolen-Anwendungen die XMLRPC-Server darstellen, sie verwenden zu 100% die Code-Basis
Für das Gesamtkunstwerk OrgaMon wird ein zentrales Git-Repository geführt. Der Read Only Zugriff ist anonym möglich. Forke das Repository in deinen eigenen GitHub-Account. Mache von diesem Repository ein Git-Clone auf deine lokale Platte. Entwickle auf diesem Verzeichnis. Änderungen per Poll-Request an das Original OrgaMon-Repository. Der Maintainer Andreas(Punkt)Filsinger(bei)orgamon(Dot)org meldet sich dann. Es ist ein Lizenzbruch an OrgaMon zu entwickeln und die Arbeit nicht in das Original Repository zurückfliessen zu lassen. Bitte komme dieser moralischen Verpflichtung nach
vom "OrgaMon" bzw. von "JonDaServer".  


=== cOrgaMon ===
* Web-Interface: https://github.com/Andreas-Filsinger/OrgaMon
* Git-Interface: https://github.com/Andreas-Filsinger/OrgaMon.git


der XMLRPC für den OrgaMon
=== Installation ===


=== cJonDaServer ===
==== einfach mal zum testen ====


=== Ausblick ===
* Lade Dir TortoiseGIT herunter (http://tortoisesvn.net/downloads) und installiere es
 
* Erstelle in "Eigene Dateien"->RAD Studio->Projekte ein neues Verzeichnis mit dem Namen "OrgaMon" (kann auch woanders liegen oder auch anders lauten!) und öffne es (ANMERKUNG: Es MUSS sich wegen eines Bugs im TortoiseGIT auf einer LOKALEN Platte befinden, Samba Shares gehen nicht!!!!)
* der Plan ist "Flexcel" durch fpspreadsheet zu ersetzen, des weiteren "IBO" durch "UIB" oder zeos 7.0.0 da bin ich mir noch nicht sicher. UIB gefällt mir aber irgendwie besser! Danach könnte man versuchen ein mit freepascal compilierbare Version zu erstellen. Damit wäre der Linux Port der NON-GUI Anteile vollbracht.
* Rechtsklicke in das offene Verzeichnis in den leeren Bereich und wähle "Git Clone"
* Integration von Pascal Scripting http://www.remobjects.com/ps.aspx . Damit könnte man Einstiegspunkte in die Buissiness - Logik definieren, die dann mit eigener Logik erweitert werden kann. Auch eine Integration ins OLAP ist denkbar. Also
* Als Repository gebe <code>https://github.com/Andreas-Filsinger/OrgaMon.git</code> an
 
* Vergewissere Dich, dass Dein "Check Out Directory" (eigentlich das Target Dir!) das eben angelegte "OrgaMon" ist, und nicht OrgaMon/OrgaMon sein wird
pascal
* Drücke OK, alle Optionen einfach so lassen!
-
 
 
 
==== XMLRPCx ====
 
OrgaMon-XMLRPC für Linux
 
==== JonDax ====
 
JonDa-XMLRPC für Linux
 
==== weitere Kommandos ====
 
OrgaMonx
 
 
* --Indexerstellung
* --FTP-Uploads
* --Backup / --restore
* --tagwache
* --tagesabschluss
 
== Team-Entwickler ==
 
Für das Gesamtkunstwerk OrgaMon wird ein zentrales Repository mit der Software Subversion verwaltet. Der Read Only Zugriff ist anonym möglich. Schreibenden Zugriff erhalten Entwickler nach Kontakt zum OrgaMon-Maintainer Andreas(Punkt)Filsinger(bei)orgamon(Dot)org .


* Web-Interface (WEBsvn) Read-Only Zugriff: http://orgamon.org/subversion/
==== wenn man mitentwicklen will ====
* SVN-Interface: svn://orgamon.org/orgamon


=== Installation ===
* Dann braucht man einen GitHhub Account, also schnelll registrieren
 
* Man macht einen Fork des Repositorys OrgaMon
* Lade Dir TortoiseSVN herunter (http://tortoisesvn.net/downloads) und installiere es
* Man macht vom Eigenen Fork einen "Git Clone" ins lokale Verzeichnis
* Erstelle in "Eigene Dateien"->RAD Studio->Projekte ein neues Verzeichnis mit dem Namen "OrgaMon" (kann auch woanders liegen oder auch anders lauten!) und öffne es (ANMERKUNG: Es MUSS sich wegen eines Bugs im TortoiseSVN auf einer LOKALEN Platte befinden, Samba Shares gehen nicht!!!!)
* Man macht Änderungen/Test und immer mal wieder ein Commit, damit Änderungen sinnvoll ins eigene Repository fliessen
* Rechtsklicke in das offene Verzeichnis in den leeren Bereich und wähle "SVN Checkout"
* Als Repository gebe "svn://orgamon.org/orgamon" an
* Vergewissere Dich, dass Dein "Check Out Directory" (eigentlich das Target Dir!) das eben angelegte "OrgaMon" ist
* Drücke OK, alle Optionen einfach so lassen!


=== täglicher Arbeitsablauf ===
=== täglicher Arbeitsablauf ===
Zeile 97: Zeile 74:


* rechter Mausklick auf Dein OrgaMon-Verzeichnis
* rechter Mausklick auf Dein OrgaMon-Verzeichnis
* "SVN Update"
* "Git Sync" ... danach weitere Schritte


-> Du bist nun auf dem neuesten Stand!
-> Du bist nun auf dem neuesten Stand!
Zeile 119: Zeile 96:
Man sollte erst mal alles zu Ende bringen, also alle Hinzunahmen erst mal zu Ende bringen. Nun muss man
Man sollte erst mal alles zu Ende bringen, also alle Hinzunahmen erst mal zu Ende bringen. Nun muss man


* auf neue Verzeichnisse einen rechten Mausklick machen und "TortoiseSVN" -> "+ add" ausführen, jetzt hat man die Chanche Datei-Extensions, die man nicht auf dem Server haben will zu demarkieren (default ist "Alles angekreuzt"). Nach einem OK wir im lokalen Repository zunächst mal der neue Content als überhaupt "SVN-relevanter" Content beachtet. Der Fragezeichenstatus geht über in ein fettes blaues Plus.
* auf neue Verzeichnisse einen rechten Mausklick machen und "TortoiseGIT" -> "+ add" ausführen, jetzt hat man die Möglichkeit Datei-Extensions, die man nicht auf dem Server haben will zu demarkieren (default ist "Alles angekreuzt"). Nach einem OK wir im lokalen Repository zunächst mal der neue Content als überhaupt "SVN-relevanter" Content beachtet. Der Fragezeichenstatus geht über in ein fettes blaues Plus.
* neue Dateien, die noch ein blaues Fragezeichen haben muss einzeln ge "+ add"ed werden.  
* neue Dateien, die noch ein blaues Fragezeichen haben muss einzeln ge "+ add"ed werden.  


Zeile 126: Zeile 103:
==== Release erzeugen ====
==== Release erzeugen ====


* mache diesen Schritt sobald all deine Test erfolgreich laufen
* mache diesen Schritt erst sobald all deine Test erfolgreich laufen
* Nebeneffekte deiner Release sollten ausgeschlossen sein, wenn unsicherheiten bestehen bitte Andreas Filsinger kontaktieren
* Nebeneffekte deiner Release sollten ausgeschlossen sein, wenn unsicherheiten bestehen bitte Andreas Filsinger kontaktieren
* "SVN Update" auf die Projekt-Datei im Rev-Verzeichnis (z.B. OrgaMon.rev.txt)
* Editiere die zum Projekt passende .rev.txt Datei aus dem Pfad /rev
* Mache oben neu Einträge im Stile der anderen alten Einträge
* Ab .SQL Init kannst Du SQL Befehle zum Metadaten Update hinzugeben
* In Globas.pas (oder in jedem Projekt eigentlich anders) erhöhe die Versionnummer auf die Angabe in der Rev-Datei
* Rev-Datei nun laden und eine Version hochzählen (und merken) und einen neuen Eintrag machen
* Rev-Datei nun laden und eine Version hochzählen (und merken) und einen neuen Eintrag machen
* in "globals.pas" die gemerkte Version Nummer eintragen
* in "globals.pas" die gemerkte Version Nummer eintragen
Zeile 134: Zeile 114:
* Autoup und ab damit
* Autoup und ab damit
* Nun all deine Änderungen committen: rechter Mausklick auf das Repository Haupt-Verzeichnis  
* Nun all deine Änderungen committen: rechter Mausklick auf das Repository Haupt-Verzeichnis  
* "SVN Commit"
* dokumentiere in der Msg-Box dein Patch-Set
* dokumentiere in der Msg-Box dein Patch-Set
* "GIT Commit"


optional
optional


* anschliessender "SVN Update", denn andere waren in der Zwischenzeit nicht untätig
* anschliessender Merge (bitte das hier korrigieren) damit auch Du wieder die Änderungen der anderen bekommst
* dies erhöht die Chanche dass Dein nächster "Update" / "Commit" problemlos durchläuft


=== Bedeutung der Verzeichnisse ===
=== Bedeutung der Verzeichnisse ===
Zeile 157: Zeile 136:
== Konzepte ==
== Konzepte ==


[[DatabaseArchitect]]<br>
[[RAIB]]
[[RAIB]]


Zeile 185: Zeile 163:
* Die Lösung 2103 liegt sauber in unserem Zeitfenster!
* Die Lösung 2103 liegt sauber in unserem Zeitfenster!


== CodeSign ==
=== TO DO ===
 
Das erweitern einer EXE Datei um ein Certifikat.
 
Buying the code signing certs from Thawte will cost you $200 per year. Renewals cost ~ $153 US. Verisign charges $400 per year. Obviously I went with Thawte. The certs are the same, as all CA's have their root certs for codesigning enabled, this really isn't the case with SSL (https:// certificates) so you have to pick wisely when buying ssl cert.
 
With the cert you can sign as many products as you wish, as long as they are from the company/organization which purchased the code signing cert.
 
You are not required to renew the certificate, as long as you timestamp the program. You basically connect to a server that does timestamping and it stamps the certificate/program with a hardcoded date. If the certificate expires and there is a valid stamp on it then the certificate does not warn it is expired to the end users downloading your files. But you will need to renew the cert if you want to re-stamp new builds/updates of your files. You can use the freely available versign timestampign service to stamp your code with (instructions to do it are included in microsofts code signing sdk).
 
Information on how to sign code is at:
http://msdn.microsoft.com/library/default.asp?url=/workshop/security/authcode/signing.asp
 
You can download the files (signcode.exe) at:
http://www.microsoft.com/downloads/details.aspx?FamilyID=2B742795-D0F0-4A66-B27F-22A95FCD3425&displaylang=en
 
Probably want to get the x86 executable as it's unlikely most people here are generating alpha executables (64 bit).
 
 
You can get more information and purchase the certs from Thawte at:
http://www.thawte.com/codesign/index.html
 
Look at the Microsoft Authenticode Code Signing Certificate.
 
 
 
As to questions about stealing a cert. It's possible but very very hard to do. Thawte sends you a .pvk file (private key file) and a certificate file. Both files are required to generate the certificate embedded into the exe. The hash of this certificate is unique to each executable and if the exe is modified in anyway the cert is nullified. Also you have the option when purchasing the code signing cert if you want to password protect it. This allows even more security as if anyone does get a hold of the cert and private key then they still need the password to sign with.
 
 
Also the process to obtain a cert can take some time. It took me roughly 8 hours to receive it. You cannot as an individual in the US get a code signing cert. You must be a registered business with your state, country and they will require you to fax them documentation proving your business is valid. Then they will check your domain, all certs are tied with a domain - typically business domain so they check the whois records. As long as the REGISTRANT OF RECORD on the domain matches your legal company name EXACTLY then you are fine. For instance my legal company name is PGWARE LLC, thus thta is what had to be listed in teh registrant information for the domain; if I had just PGWARE then Thawte will decline my application.
 
Finally you have to have a business phone number where they can contact you to verify the purchase. They will attempt to obtain a phone number from you by the use of phone directory service in your city, if you are not listed then they will attempt other means to find a phoone number to contact you at. If they are not able to find any number then you need to fax them a phone bill that shows your company name on it, and your telephone number on it. They will then call you and ask you basic questions on who ordered the certificate and details you entered when ordering - this allows them to confirm you are the person who really is getting the cert. If you have no phone number at all for your business fear not you can send in a notorized letter signed by a notary which states you give permission and authorization to distribute a certificate to your business; then fax it in to them.


As long as you have everything in order and all documents ready to be faxed you can get the cert within a day's time. They do all these checks to make sure you are who you say you are. Also they want ot make it seem like they are actually doing something for that $200 you're sending them.  
* FlexCell und IBObjects Wegfall
* Nach der Funktionsprüfung von lOrgaMon.exe (FreePascal-Win32-Konsolenanwendung) soll das Compile-Target "Linux" geprüft werden.
* Bestandteile der Dienste "Mail", "Tagwache", "Tagesabschluss" sollen Stück für Stück in den lOrgaMon Code wandern.
** --Indexerstellung
** --FTP-Uploads
** --Backup / --restore
** --tagwache
** --tagesabschluss


== SEPA-Probleme ==


If any of you guys are interested in doing it and have any problems along the way just message me here or email me and I'll lend some assistance.
bisher
---
Julian the cert is signed into the exe by the user of the signcode.exe program. It adds an additional section into the exe header which contains the cert.


When usign the codesign.exe you can pass commandline params to generate the digital certificate within the exe. When you right click on a exe that is signed , click the PROPERTIES and there is a new tab within the properties sheet of the executable entitled DIGITAL CERTIFICATE.
'ABSCHLUSS PER 31.03.2011'#$D#$A
'SALDO RECHNUNGSABSCHLUSS'#$D#$A
'            PER  31.03.2011'#$D#$A
'INCL. ABSCHLUSSBETRAG'#$D#$A
'                    303,49'#$D#$A


Here is how to sign:
neu


'ABSCHLUSS PER 31.12.2015SALDO RECHNUNGSABSCHLUSS            PER  30.12.2015INCL. ABSCHLUSSBETRAG                    763,52'#$D#$A


signcode.exe -spc mycert.spc -v mykey.pvk -n "My Program" -i http://www.url.com -$ commercial -t http://timestamp.verisign.com/scripts/timstamp.dll MYPROG.EXE
Aufsplittung




mycert.spc is the file Thawte/verisign sends to you, it is the certificate. MyKey.pvk is the private key thwate/verisign also sends to you which contains your private key and password (if a password was set). Note you cannot change the password without buying a new cert.  
'ABSCHLUSS PER 31.12.2015'
'SALDO RECHNUNGSABSCHLUSS'
'            PER  30.12.2015'
'INCL. ABSCHLUSSBETRAG'
'                    763,52'


"My Program" is just a friendly name you can give your program and is displayed in the Security box when shown to a user downloading you file. http://www.url.com is the url to your website, this lets a user click on your program name (friendly name) and it takes them to the website. Finally you include the optional timestamp (you should timestamp, so when the certificate expires the file is still signed). Then you pass the filename/path to your exe that needs to be signed.
* Also was die Banken machen ist gegen jedes IT-Verständnis
** die einst mehrzeiligen Verwendungszwecke werden zu einer langen Zeile zusammengefügt, dabei werden
*** Blanks links des ersten Zeichen erhalten
*** Blanks rechts des letzten Zeichens gelöscht


[[CMS.Dateiablage]]
TOLL!!! Gut gemacht

Aktuelle Version vom 12. August 2024, 18:54 Uhr

Software ist in der modernen Welt zu wichtig, um nicht als Open-Source entwickelt zu werden.
[Linus Torwalds]
Freie Software ist die Basis für IT-Sicherheit
[Richard Stallman]

OrgaMon, unterstützte Betriebssysteme

  • Win32, Windows 2000, XP, Vista, Windows 7, Windows 10
  • Linux über die Emulations-Schicht Wine ab 0.98.5
  • Virtualisierte Windows 10 Systeme (via Linux.kvm)

OrgaMon-App, unterstützte Betriebssysteme

  1. Andorid 2.3 oder besser

Datenfunknetz

technische Infos für Entwickler

OrgaMon, Summer of Code

OrgaMon-RC

Team-Entwickler

Für das Gesamtkunstwerk OrgaMon wird ein zentrales Git-Repository geführt. Der Read Only Zugriff ist anonym möglich. Forke das Repository in deinen eigenen GitHub-Account. Mache von diesem Repository ein Git-Clone auf deine lokale Platte. Entwickle auf diesem Verzeichnis. Änderungen per Poll-Request an das Original OrgaMon-Repository. Der Maintainer Andreas(Punkt)Filsinger(bei)orgamon(Dot)org meldet sich dann. Es ist ein Lizenzbruch an OrgaMon zu entwickeln und die Arbeit nicht in das Original Repository zurückfliessen zu lassen. Bitte komme dieser moralischen Verpflichtung nach

Installation

einfach mal zum testen

  • Lade Dir TortoiseGIT herunter (http://tortoisesvn.net/downloads) und installiere es
  • Erstelle in "Eigene Dateien"->RAD Studio->Projekte ein neues Verzeichnis mit dem Namen "OrgaMon" (kann auch woanders liegen oder auch anders lauten!) und öffne es (ANMERKUNG: Es MUSS sich wegen eines Bugs im TortoiseGIT auf einer LOKALEN Platte befinden, Samba Shares gehen nicht!!!!)
  • Rechtsklicke in das offene Verzeichnis in den leeren Bereich und wähle "Git Clone"
  • Als Repository gebe https://github.com/Andreas-Filsinger/OrgaMon.git an
  • Vergewissere Dich, dass Dein "Check Out Directory" (eigentlich das Target Dir!) das eben angelegte "OrgaMon" ist, und nicht OrgaMon/OrgaMon sein wird
  • Drücke OK, alle Optionen einfach so lassen!

wenn man mitentwicklen will

  • Dann braucht man einen GitHhub Account, also schnelll registrieren
  • Man macht einen Fork des Repositorys OrgaMon
  • Man macht vom Eigenen Fork einen "Git Clone" ins lokale Verzeichnis
  • Man macht Änderungen/Test und immer mal wieder ein Commit, damit Änderungen sinnvoll ins eigene Repository fliessen

täglicher Arbeitsablauf

Beginn

  • rechter Mausklick auf Dein OrgaMon-Verzeichnis
  • "Git Sync" ... danach weitere Schritte

-> Du bist nun auf dem neuesten Stand!

Coding & Test

  • öffne z.B. mit Delphi ./OrgaMon/OrgaMon.dproj
  • editiere Dateien wie bisher
  • mache alles wie bisher, teste alles gut ...

-> wenn Deine Änderungen Release-Fähig sind ...

Löschen von Dateien

bei einem Commit sind Löschungen nicht automatisch im Änderungsauftrag an den Server mit dabei: Es reicht aber "select / deselect all" anzukreuzen, alternativ kann bei jeder gewünschten Löschung ein Haken gesetzt werden.

Hinzunahme neuer Dateien

ACHTUNG: Jeder neue Content (neue Verzeichnisse / neue Dateien) wird erkannt jedoch muss wie bei der Löschung das "select / deselect all" angekreuzt werden, dass überhaupt der Content übertragen wird. Bei dieser Verfahrensweise bekommen jedoch andere Entwickler diese neuen Dateien nicht zu Gesicht. Es muss hier mehr getan werden:

Man sollte erst mal alles zu Ende bringen, also alle Hinzunahmen erst mal zu Ende bringen. Nun muss man

  • auf neue Verzeichnisse einen rechten Mausklick machen und "TortoiseGIT" -> "+ add" ausführen, jetzt hat man die Möglichkeit Datei-Extensions, die man nicht auf dem Server haben will zu demarkieren (default ist "Alles angekreuzt"). Nach einem OK wir im lokalen Repository zunächst mal der neue Content als überhaupt "SVN-relevanter" Content beachtet. Der Fragezeichenstatus geht über in ein fettes blaues Plus.
  • neue Dateien, die noch ein blaues Fragezeichen haben muss einzeln ge "+ add"ed werden.

Vor einem "Commit" sollten also alle "hängenden" Stati ordentlich in echte Stati "add" oder "ignore" umgesetzt werden!

Release erzeugen

  • mache diesen Schritt erst sobald all deine Test erfolgreich laufen
  • Nebeneffekte deiner Release sollten ausgeschlossen sein, wenn unsicherheiten bestehen bitte Andreas Filsinger kontaktieren
  • Editiere die zum Projekt passende .rev.txt Datei aus dem Pfad /rev
  • Mache oben neu Einträge im Stile der anderen alten Einträge
  • Ab .SQL Init kannst Du SQL Befehle zum Metadaten Update hinzugeben
  • In Globas.pas (oder in jedem Projekt eigentlich anders) erhöhe die Versionnummer auf die Angabe in der Rev-Datei
  • Rev-Datei nun laden und eine Version hochzählen (und merken) und einen neuen Eintrag machen
  • in "globals.pas" die gemerkte Version Nummer eintragen
  • nochmals compilieren
  • Autoup und ab damit
  • Nun all deine Änderungen committen: rechter Mausklick auf das Repository Haupt-Verzeichnis
  • dokumentiere in der Msg-Box dein Patch-Set
  • "GIT Commit"

optional

  • anschliessender Merge (bitte das hier korrigieren) damit auch Du wieder die Änderungen der anderen bekommst

Bedeutung der Verzeichnisse

  • anfix32 (*.pas Tools)
  • PHPincludes (*.php Tools)
  • rev (Die Revision-Dateien)
  • OrgaMon (*.pas der OrgaMon-win32-Client)
  • MonDaServer (*.pas ein Server)
  • Oc (*.pas ein Kommandozeilen Tool)
  • aqbd (*.c ein HBCI Dämon)
  • TWebShop (*.php5 der OrgaMon Webshop)

Konzepte

RAIB

Datum

Noch immer ist die Unsitte verbreitet Datumsangaben im Bezug auf das Jahr nur 2 stellig anzugeben, als man schenkt sich das Jahrhundert, in dem wir leben! Also einen Datumsangabe wie z. B.

10.10.10

hm, ist das jetzt der 10.10.1910 oder 10.10.2010. Das kann man nun je nach Kontext (als Mensch) sehr gut entscheiden. Der OrgaMon legt hier folgende Vereinbarung zu Grunde:

  • Gehe vom aktuellen Jahr aus und rechne ein Menschenalter (75 Jahre) zurück, dies ist das Startdatum für 2 stellige Jahresangaben
  • Gehe vom aktuellen Jahr aus und rechne eine Menschengeneration (24 Jahre) vor, dies ist das Endedatum für 2 stellige Jahresangaben


z.B. 10.10.10
  • Es sei das Jahr 2025: Zeitraum ist somit also 1955 bis 2054
  • das bedeutet die Lösung ist entweder 1910 oder 2010
  • da nur 2010 im vorberechneten Zeitfenster liegt ist dies das Ergebnis!

Kann es sich auch mal auf das kommende Jahrhundert beziehen? JA. Sagen wir jemand sagt: Am 10.10.03 steigt die grösste Party aller Zeiten! Nehmen wir an, es ist das Jahr 2099, also

2099 - 75 = 2024 StartJahrhundert
2099 + 24 = 2123 EndeJahrhundert
  • Die Lösung 2103 liegt sauber in unserem Zeitfenster!

TO DO

  • FlexCell und IBObjects Wegfall
  • Nach der Funktionsprüfung von lOrgaMon.exe (FreePascal-Win32-Konsolenanwendung) soll das Compile-Target "Linux" geprüft werden.
  • Bestandteile der Dienste "Mail", "Tagwache", "Tagesabschluss" sollen Stück für Stück in den lOrgaMon Code wandern.
    • --Indexerstellung
    • --FTP-Uploads
    • --Backup / --restore
    • --tagwache
    • --tagesabschluss

SEPA-Probleme

bisher

'ABSCHLUSS PER 31.03.2011'#$D#$A
'SALDO RECHNUNGSABSCHLUSS'#$D#$A
'            PER  31.03.2011'#$D#$A
'INCL. ABSCHLUSSBETRAG'#$D#$A
'                     303,49'#$D#$A

neu

'ABSCHLUSS PER 31.12.2015SALDO RECHNUNGSABSCHLUSS            PER  30.12.2015INCL. ABSCHLUSSBETRAG                     763,52'#$D#$A

Aufsplittung


'ABSCHLUSS PER 31.12.2015'
'SALDO RECHNUNGSABSCHLUSS'
'            PER  30.12.2015'
'INCL. ABSCHLUSSBETRAG'
'                     763,52'
  • Also was die Banken machen ist gegen jedes IT-Verständnis
    • die einst mehrzeiligen Verwendungszwecke werden zu einer langen Zeile zusammengefügt, dabei werden
      • Blanks links des ersten Zeichen erhalten
      • Blanks rechts des letzten Zeichens gelöscht

TOLL!!! Gut gemacht