Benutzer-Werkzeuge

Webseiten-Werkzeuge


internsystem_files:fakt_rev

171 k:\vmanpool\tcpp\FAKT\FAKT.REV $20.06.17 11:00:25 Fakt.rev Autor Datum Beschreibung / Revison * * * * V2.00 08.07.91 Arbeitsbeginn der Version V2.0 * * V2.00-00 21.10.91 Erster Probelauf * * V2.00-13 20.11.91 Produktionsfunktionen einsatzbereit * * V2.00-37 20.02.92 Massen„nderungsfehler beseitigt (malloc bakbuff) * * und Changeflag bei CHG_EQU * * Artikelmengenumsatz Mengenfehler beseitigt * * V2.00-38 28.02.92 Import-Routinen Fehler beseitigt (fr Stefan) * * Briefe-Datei, Vergleichfunktion mit Ctrl-Taste * * High-Speed-Modus fr Externe Dateien * * V2.00-39 03.03.92 Config.prjconfig eingefhrt * * Preisgruppen in Rabatt ausgeben * * Break-Hunk in Haupthunk eingbaut * * OP-Verwaltung berarbeitet * * V2.00-41 05.03.92 EK-Ermittlung nur noch bei WEG und WarenRcksendung * * V2.00-42 06.03.92 SHIFT-ALT-F1 auswahl ausExtended-Karteien * * netto A-B in Belegen vor Mwst gerundet * * V2.00-43 17.03.92 Alt-F5 Seriendruck mit Kundenkartei eingebaut * * V2.00-44 17.03.92 Verbindlichkeiten Bezahlt und Verbucht unterschieden * * V2.00-45 19.03.92 Ausdruck-Fehler bei Listenpositionen/Seitenende bes. * * V2.00-46 24.03.92 Ausdruck-Changefeldbedingung auch bei leerem Feld * * Kundenjahresums„tze zurcksetzen * * V2.00-47 26.03.92 Langtextdruck mit '*' Option versehen * * Ausdruck-Fehler bei Langem KOPF-Hunk/Seitenende bes. * * V2.00-48 12.04.92 TEDI mit TTX-System ausgestattet * * V2.00-49 22.04.92 PRNLIB mit CRLF-Flag ausgestattet * * DFLOADmit calclist und Sammelpositionen mit 'E' * * Option (func FNC_LOADLISTMSAMMEL_POSNUM) versehen. * * 27.04.92 PROGAW mit Shift-Tastenanzeige und SERV mit maximal- * * Speicher ausgestattet * * V2.00-50 04.05.92 Return-Cut bei TTX abgestellt * * V2.00-51 11.05.92 Seriendruck ber Karteiauswahl * * 13.05.92 TTX-Maskenfensterzeilenbreite bernommen * * V2.00-52 18.05.92 Umstellung der Handler-Verwaltung und der Datenfile- * * anordnung in der PDF-Projektdatei * * V2.00-53 21.05.92 Fehler mit Vd-Variable in PRNLIB beseitigt, * * Fehler im Zeilenumbruch im TTX-System beseitigt. * * 22.05.92 Fehler von OPENLIST-Fenster bei x,y 0,0 Koord. bes. * * TTX in Maske immer an. * * Seitenumbruchfehler in DFPRN bes. * * 25.05.92 Va,Vc,Ve-Variable und Globalmaskenzugriff in PRNLIB * * eingebaut ([.mmCcc]) * * Firmenangaben in Configdatei eintragbar (GLOBxx-Sys.)* * V2.00-54 29.05.92 Bank-DTA System betriebbereit, * * Fehler in DFPRN-Schleife mit Haupt-Liste bes. * * V2.00-55 02.06.92 Window MIN-MAX xy-Position korrigiert * * Programmeinstellungen/Firmenangaben eingebaut * * Summenfehler in BANK-DTA (atol→atof) behoben * * In DFTTX ohne Positionen gesperrt, * * TTX Eingabe nach Blockende gesperrt. * * 03.06.92 get_strval auch fr Zeit-Format (SS:MM:SS) ausgelegt * * Wertrckgabe in Stunden * * 09.06.92 Fehler in PRNLIB [V -Verschachtelung beseitigt * * 19.06.92 MAI_EXTPRN00 eingebaut, RND &0x30? → 0x70 * * V2.00-56 19.06.92 PRNLIB #include und Vt0-9 eingebaut * * Datumseingabefeld ge„ndert * * 24.06.92 PINBOARD eingebaut * * V2.00-57 25.06.92 PRNLIB aufgeteilt, etwas Speicher frei gemacht * * 29.06.92 Broadcast und FaxLog eingebaut * * TEDI []-Angabe eingeblendet * * 30.06.92 ARCHIV-Aktiviert, INIT-Hunk eingebaut * * Pinboard DESK-Key entfernt * * Statistiken šberarbeitet * * V2.00-58 02.07.92 Ausgabeformulare ge„ndert, Kennzeichnen m”glich * * Druck-Routine um Vermerk erweitert * * 10.07.92 Druckausgabe um Zugriff auf Ausgabeformularfenster * * (DFBase.printdfi) und .98Cxx erweitert. * * 15.07.92 Taschenrechner-HotKey (XA3-E6a) in ed_data eingebaut.* * Bei Zahlungsart, Bezahlt-Betrag abprfen. * * 20.07.92 Produktion L-Anz korrigiert * * V2.00-59 21.07.92 Fehler PrnLib PrnBuff[dvlsize]='\0' beseitigt * * Quer-Zurgriffe bei EXTDAT in BASISDAT umgeleitet * * iggexitkey auf 190 erweitert * * 26.07.92 Maus-Copy -bei Liste voller mai-Vergleich eingebaut * * V2.00-60 28.07.92 Archivierungsmodul eingebaut * * 29.07.92 Multi-Flex Verwaltung in DES eingebaut! * * 30.07.92 Žnderung in PRNLIB wegen erstem calc_hunk ENDE Probl.* * set_print( NULL) in df_print_ eingebaut * * V2.00-61 04.08.92 EK bei kopieren nachladen Lager BW eingefhrt * * Bei Maskencopy nur nach Name, Nummer nur wenn scr und* * dest keinen Namen haben! * * 05.08.92 Rearchivierung eingebaut * * Bei DB-Auswahl Indexpfad nach ber Code suchenDatensatz suchen. * * 07.08.92 Fehler *ptr=='\0' in PRNLIB beseitigt. * * rechnung_lieferscheinbuchen strchr( buff,'E') eing. * * High-Speed-Modeus wieder aktiviert * * FIBU: ERB verbuchtdatum eingesetzt. * * Einzelums„tze: title-refresh gerichtet * * V2.00-62 17.08.92 Preiseinheiten beim laden bercksichtigt (+TYP-27) * * 19.08.92 Variable %STATION% fr Stationsdrucker eingefhrt * * Gegenbuchung nur bei Vermerk 'A' ausfhren * * Caps-Lock-Warnung eingebaut * * CTRL_LEFT/RIGHTS Auswahlfenster-Umschaltung * * 20.08.92 Look-Puffer von 10 auf 20 erh”ht * * CTRL-F9 look eingebaut * * DF-Nachladen in print_browse eingebaut * * 25.08.92 get_loadinfodfuse mit df->recndf eingebaut * * V2.00-63 08.09.92 PINBOARD auf CPP umgestellt * * 14.09.92 OPENLIST x1,x2=1,80 entfernt * * dfdef->akt_recpos bertrag von TEMP-DF entfernt * * LOADDF in browseliste auf Listen erweitert * * 16.09.92 LOADDF in Browse verbessert * * @L; Befehl in PRNLIB umgebaut * * V2.00-64 23.09.92 FaxLog-Modul eingebaut mit Kennung berspielen. * * .M-Befehl in PRNLIB eingebaut. * * 25.09.92 '.'-Option in DFIMP eingebaut. * * V2.00-65 06.10.92 Hunk ENDE1-4 in PRNLIB eingebaut. * * 07.10.92 print_dtrout bei PRN_CALC unterdrckt. * * 12.10.92 ExtWindow XXXXXXFX eingebaut * * 14.10.92 KW-Jahr Eingabem”glichkeit eingebaut * * Staffel und KundenPreisReferenz eingebaut * * Seekoffset in DFIMP auf long umgestellt * * Taschenrechner geht immer * * Preisvereinbarung Basisartikelprfung * * Preisbildung: Auftragspreis ==0 Prfung * * 15.10.92 Belegposition Betrag = 0 Prfung * * Connection-Prfung eingebaut * * 16.10.92 get_strval bei Datum Deltatage seit 16.10.1582 * * V2.00-66 20.10.92 Vertretreabrechnung, * * Artikel-Rabattkennzeichen * * C++ Umstellung, Zahlen-Array * * Kundenums„tze + RG pro Monat * * 21.10.92 Artikelpreis Netto/Rabatt * * Belegnummernvorgabe, * * Autonummerierung Positionen * * 25.10.92 FIBU: ERG Rechnugsdatum eingesetzt. * * 26.10.92 Import um '*' Writeflag erweitert * * Typ -28 ExtDf implementiert * * Artikeltexte ausgelagert und Warengruppen eingefhrt * * V2.00-67 29.10.92 Neue Artikelmaske * * Versandscheine * * V2.00-68 04.11.92 Rohgewinn bei Listenbuchung berichtigt (kein EK) * * Sonderpreis- und Preiserh”hungautomatik eing. * * 09.11.92 Rechnungssumme bei Auftrag summiert * * 13.11.92 Sonderpreisautomatik bei ArtNr="" abgeschaltet. * * V2.00-69 19.11.92 Firmenumsatzstatisitk mit Monatsabschluss eing. * * Artikelstatisikzahlen erweitert * * 25.11.92 Preisvorgabe in Warengruppe eingebaut * * MaskNameCopy bei namecopy=0 auch dmai->code verwenden* * Jahresabschluá eingebaut * * 01.12.92 Monatsabschluá Datumseintrag bei Abbruch verhindert * * 02.12.92 Jahresabschluá funktioniert * * 03.12.92 laufende Nummer vor Belegzusammenfhrung zurckgsetzt* * V2.00-70 07.12.92 Statisitken berprft und betriebsbereit * * OnLine- Exit-Key Bildung * * Positionsnummerierung berarbeitet * * 08.12.92 V-Variablen beim Ausdrucken gerundet und gespeichert * * 09.12.92 PrintJob bei Meldung "Neues Blatt einlegen" abgesch. * * 10.12.92 Systemparametermaske erweitert * * 11.12.92 Bei Bestellvorschl„ge Artikel ohne Verwaltung weggel.* * 23.12.92 Bei Druckeranschluá auch Dateiausgabe zugelassen * * 30.12.92 Inventurmodul eingebaut * * 02.01.93 Jahresabschluá gerichtet * * print_mask bei edit_extwindow gerichtet * * V2.00-71 04.01.93 Inventurmodul fertig+Jahresabschluá gerichtet * * 05.01.93 Datei-Drucken mit Umlautumwandlung int PRNLIB korrig.* * Fuss-Hunk-L„nge vor Ausdruck in DFPRN berechnet * * Anzahl bei Bestelliste->Bestellpos. zwangsweise ber.* * Listenverwaltung bei Lagerbuchung korrigiert * * 08.01.93 Druckertreiber V6 mit SET-Cursor Befehl ausgestattet * * SETCUR bei Spaltendruck fr HPLJ-Etiketten angewend. * * DFBase.printdfi bei unuse_all_df_ bercksichtigt. * * 08.01.93 Formatierungsoption n und z fr Nachkommastellen eing* * 12.01.93 Beleg-Nummernvorgabe Extra-Karteien Vorrang einger. * * Klein 'd','n' und 'l' in PRNLIB eingefhrt * * '!'-nichtgleich-Vergleich fr Vt und V eingefhrt * * '+' fr Vt Var in PRNLIB zugelassen * * close-Fehler beim Ausdruck aus Archiv beseitigt * * (minorhandle mit reserv_handle geladen) * * V2.00-72 13.01.93 Recover-M”glichkeit eingebaut. * * Speicherlochfehler in Verbindlichkeit_func Calc8 bes.* * 15.01.93 Im Einkauf negative Mengen zugelassen * * Artikelmengenstatistik Warengruppen berichtigt * * Wareneingang Liefranteninfo Feldabh„ngig gemacht * * Variablen in PRNLIB von 8 auf 32 erweitert * * 18.01.93 Rechtbndige Ausgabe bei Browse links abgeschnitten * * Bei input_search L„nge auf 72 begrenzt * * 25.01.93 Gutschriften bei alter Umsatzbersicht bercksichtigt* * Summe Forderungen mit minusbetr„ge * * V2.00-73 26.01.93 Vermerkfeld in Artikelstamm und Automatische best. BM* * Bildschirmschoner * * set_rootrec, indexpfad bei Neueinrichtung gesetzt * * lfdnr in ArtLst eingebaut * * 27.01.93 Ram-Reread bei Neueingabe & F2-Speichern korrigiert * * Barkasse erweitert * * 29.01.93 Exit Left/Right korrigiert * * V2.00-74 03.02.93 Kennzeichen P in ARTIKELDF und ! in AUFTRAG fr Prod.* * Kennzeichen A Autobestellung bei Auftr„ge eingebaut * * Tausenderkennung in print-browse eingeb. * * V2.00-75 09.02.93 Terminbersicht fertig * * Tausender-Formatierungsl„nge bei Brows berichtigt * * Fehlermeldung klartext bei Multi-Belegbearbeitung * * Btrieve-Errormeldungen in FAKT.$MG ausgelagert * * Bildschirmschoner-Zeit in SysPara eingebaut * * 10.02.93 Belegbearbeitungssperre aktiviert * * 11.02.93 letzter Kundenpreis Materialliste e_getcodemai45 bes.* * 12.02.93 letz. KdPr. KdNr="", Preisermittlung unterdrckt * * 17.02.93 PRNLIB Linker Rand bei Laser-Etiketten eingerechnet * * PRNLIB @An;-Befehl eingefhrt * * PRNLIB Option 'o' fr String vorne abschneiden eing. * * Editierbare Hilfen eingefhrt * * 18.02.93 Zahlungsbedingungen beim Lieferant und bern. in Verb* * 22.02.93 Maus-Copy sdf-ddf kontrolle mit Nummern-Neuvergabe * * V2.00-76 02.03.93 Erste DATEV-Funktionen * * TEMP-Verwaltung in STDPRJ modifiziert * * 05.03.93 User.NetMessageOff fr Druckschutz * * use_df bei edit_zs maindfl fr Druckschutz * * 18.03.93 Maximum-Meldung in Dirlib read_textdir eingebaut * * 19.03.93 Etikettendruck -print_listende Seitenl„nge korrigiert* * Nochmaliger KOPF-ENDE -Druck bei [L] und SpDr. bes. * * Bei DVL-Umbruch EndCap erzeugt * * Bei Drucker "Automatisch" aktiviert -> * * EndCap bei Seitenumbruch * * 22.03.93 SHOWLIST1 mit DFF_CHOOSEEDIT editierbar gemacht * * Warnung bei Verkauf ohne Artikelnummer * * bei input_searchitem rootmai bergehen * * bei dfimp beim Speichern MA_EDFUNC * * 23.03.93 Fehler bei use_cnt von BRW_DFLOAD von CHOOSE bes. * * 31.03.93 DFIMP BCD-Zahlenoptin '#' implementiert * * 02.04.93 Feldl„nge fr get_direction bei textlen=0 verbreitert* * V2.00-77 05.04.93 Im Einkauf 3 Lieferanten ArtNr und Preise bercks. * * 06.04.93 PRNLIB: @Afn;-Option, Vso-Variable * * 07.04.93 Kundenartikeltexte bercksichtigt * * Reparaturen aktiviert * * 21.04.93 Kurseingabe aktiviert * * close_all_childdf als Rekursion eingebaut * * 22.04.93 Lieferantenums„tze mit Monatsaufschlsselung eing. * * 26.04.93 DFF_HIGHSPEED eingebaut * * Vertreterabrechnung (Umsatz,RG,Bezahlt - Provision) * * Vertretersummenbuchung aktiviert * * V2.00-78 27.04.93 * * 29.04.93 PRNLIB Spaltendruck erste Zeile/Spalte outSetSpalte * * Vertreter Umsatzbuchungen eingebaut * * PINBOARD Gruppen-Rundsendungen * * DFOBJ LoadFromGroupRefTst eingebaut * * 30.04.93 Bestellvorschl„ge nach Lieferant sortiert * * V2.00-79 18.05.93 DTA-BLZ und KtoNummer mit Leerzeichen zugelassen * * Netzwerk-Info auf Infofenster, * * abgleich Systemzeit alle Stunde * * SERV-Error nur bei -1 * * 19.05.93 BSSchoner wird bei Nachricht ausgeschaltet * * Ersatzartikel-Kartei * * BLZ-Verzeichniss * * 20.05.93 PRNLIB, gGkK-Vergleiche fr V-Variablen eing. * * 24.05.93 Fehler bei DF-Nachladen in Openlist beseitigt * * Druckerliste mit CHOOSEEDIT * * V2.00-80 25.05.93 Bedarfzahl im Artikelstamm eingefhrt * * Diverse Funktionsnummer FNC_ fr BTRIEVE und * * SETRECDATADF eingefhrt * * Bestellistenmenge in Artikelstamm eingefhrt * * FEHLER BEI ARTIKEL-PARALLELBUCHUNG BEI FFARTBUCH * * BESEITIGT (WENN REVERSARTIKEL NICHT GEFUNDEN WURDE, * * WURDE REVERSBUCHUNG AUF ORG-ARTIKEL VOLLZOGEN!!) * * df->maxnum bei ed_listdata-Eintritt auf "" gesetzt * * 26.05.93 Bedarfberechnung und Bestellmengenautomatik eing. * * Artikelmaske erweitert * * 28.05.93 Drucker INIT-Hunk wird zuerst abgearbeitet (Seitenl.)* * FFFIRUMS bei Nachberechnung kein Datum * * Fehler bei warenbedarfneuber. ohne Produktion bes. * * Infoauswahl auf Maximal 32 erh”ht * * Bei Spaltenskip Barcode und FELD_TEXT bersprungen. * * 01.06.93 FNC_DFINIT DFDROP und DFOVERTAKE_NI eingebaut * * Artikelumsatzmenge bei Bestellvorschl„ge per Paramet.* * Drucker INIT-Hunk nach load_dvl vorverlegt * * set_maxline bei load_dvl nach set_printer gelegt * * 02.06.93 Umwandlung Datum->KW eingebaut * * 05.06.93 sprint_mai_len eingebaut (fr Datum) * * sprint_extmaiT um 'M' erweitert * * V2.00-81 09.06.93 DFIMP

           27.05.94  FAKTMAIN:Userabh„ngiges Config.projektconfig eingf.
                     FFARTPR: Kundenpreisvereinbarung hat Vorrang vor
                              letztem Kundenpreis
                     FFPROD:  Produktion best„tigen, von Prod Bestellung
                              eing.
           01.06.94  DFREQUES:wird im Logbuch mitgeschrieben
                     DFPRN:   PRINT_AKTREC eingefhrt
                     FAKTEDIT:PRINT_AKTREC eingebaut, WEGEN AUSDRUCK UND
                              DARAUFHIN VERBUCHUNG VON ANDEREM BELEG ALS
                              DER, DER GERADE BEARBEITET WIRD, WENN IM
                              HINTERGRUND SELEKTIERTE DATENSŽTZE VORHANDEN
                              SIND!
                              !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
           06.06.94  DFIMP:   Bei Import @D4-Option fr selektieren eing.
           08.06.94  DFED3LIB:bei edit_mask ALT_O -> inkey eingebaut.
           14.06.94  FFARTBCH:F2-Bestellung aus Beleg auch ohne Kennz.'A'
                     FFBSTLST:Artikel-Dispo Bestellvorschlag eing.
                     PRNLIB:
           15.06.94  DFEXTFNC:Opt. 'k','K','G','g' bei [Lxx,o] CHOOSELIST,
                              'l' bei [Lxx,o] Listen, 'p' bei Next [Nxx,o]
                     BRECLIB: open-read alle errors nicht melden.
                     PRNLIB:  [V1:di] (index) und [V1:db] (best anfang KW)
                              [V1:dv] (Lieferverzug in KW V1, ok =-1
           21.06.94  DF:      REC_INXCNT von 8 auf 12 erh”ht
           23.06.94  FFARTPR: Artikelstamm-FlexText bevorzugt behandeln
           24.06.94  DFLIB:   Browse::print bei load_df use_df korrigiert.
                     FFPROD3: Produktions-Mehrfachaufl”sung und Kontrolle
           25.06.94  FFEINK:  Artikel->BestList EK richtig zugeordnet
  V2.00-97 27.06.94  CONLIB:  long 1000 und FileMask size 6000 -> 7000 Byte
           29.06.94  PRNLIB:  @H...; eingebaut
           29.06.94  MENULOAD:POPUP-Kommando bei vorhandenem Item anh„ngen
           01.07.94  FFDISPO: Produktionsmenge um Istwert korrigiert
                     FFEINK:  Bestellung best„tigen mit GeLief Mengen kor.
                     PRNPRM:  sprintDate();//>0:KW, =0: wie date, <0: datum
                     PRNLIB:  Vd-Verarbeitung mit convDateStr()
                              Vdkw und Vdtag zugelassen
           05.07.94  PRNLIB:  [V1:dp] (prozent Auslastung in KW)
                     FFPROD:  bauzettelposition_aendern korrigiert
                     PRNLIB:  Abbruch verbessert
           06.07.94  PRNLIB:  GETV_DATEVAR bei Vt:= zugelassen
           07.07.94  PRNLIB2: clear_dvlhunks() Hunknamen gel”scht
           08.07.94  PRNLIBx: [Vn eingefhrt, [Lxx,Var] eingefhrt
                     FFART:   nur Listenzeichen 'A' wird von clac_list
                              nicht gel”scht
           09.07.94  FFART:   íEK wird bei K/X-Liste ohne Produktion
                              gleich VorKalk gesetzt.
                     PRNLIB:  .LISTENENDE eingebaut, Vt:- eingebaut
           12.07.94  PRNLIB:  .STACK eingebaut
                              max. Schachteltiefe auf STACK<4000 eingest.
           18.07.94  PRNLIB:  Vt:=[C87(3)] - Editorfeld-Zeile bei= m”glich
                     PRGLOAD  ExecutePrintText und ViewMessage eing.
                     DFLIB:   REC_BREAK eingebaut
           19.07.94  STDPRJ_: defdata-Zeiger ber PDF_DEFDATA-Flag holen
           20.07.94  PRGLOAD: SetFileIndex eingebaut
                     FAKTSUB: taschenrechner nur bei Feld MaiAktiv F2 zug.
                     PRNLIB:  DvlHunk-Anzahl von 10 auf 16 erh”ht
                              _SP <4000 Schachteltiefe der Druckvorlage...
           21.07.94  PRGLOAD: SetIndexFilterImmediate,ClrIndexFilter eing.
           26.07.94  PRNLIB3: druckeCharTest() Zeichen nicht mitgez„hlt
           28.07.94  DFIMP:   Option '/', wie '*' nur Speichern wenn wenig-
                              stens ein Feld etwas enth„lt (bei mehreren '/'
           29.07.94  DFED2LIB:save_copyrecdata mit RAM-Liste korrigiert.
                     WINLIB2: call_helpfunc fr Tedi korrigiert
                     DFEDLIB: Archivierung fehler beseitigt/Rechte
                     FFPROD3: Unter-Ebenen in einer Prod mit SysNum & Ebene
           01.08.94  DFED3LIB:edTeilstringAnfang() Teilsuche fr Poly korr.
                     CONLIB:  prjMalloc() und prjFarmalloc eingebaut
           02.08.94  CONLIB2: strgg() SHIFT_INS und SHIFT_DEL eingebaut
                     PRNLIB:  [Dnn,Var,b,IndexItem] eingebaut
                              @X fr DoLoop-Exit
                              [Dnn,Var,b,FileNr,IndexItem1,IndexItem2] eing.
                     FAKTEDIT:edit_datazwsp_materialbuchen() Belegnummern-
                              berwachung eingebaut.
                     FAKTSUB: taschenrechner() erweitert
                     DFEXTFNC alle load_numchoose_rec() Aufrufe mit
                              use_df/unuse_df versehen
           05.08.94  PRNLIB4: print_list() exit bei Spaltendruck-Abbruch
                              verbessert.
           08.08.94  PRNLIB:  @b Kommando
                     FFSTDVK: Titelsummen
                     DFPRN:   wenn keine OR2, dann =OR
           15.08.94  PRNLIB:  char -Puffer allokiert wegen Schachteltiefe-
                              Stackbelastung
           06.09.94  FFDATEV: Schreibschutzprfung eingebaut
                     DFLIB:   set_sdfrecdata SET_RECDATA_PARENTDFFIRST fr
                              openliste-F1 falsches ROOT eingebaut
           08.09.94  PRNLIB:  bei Vt:=[] sizeof( str) -> LINESIZE, fehler
                              von 15.08.94 (str[]->*str) beseitigt
           09.09.94  PRNLIB:  Vt:m fr Monatsnamenzuweisung von Datum oder
                              Zahlenwert 1-12
                     PRNLIB3: get_strvar_ mit Tausenderformatierungsunter-
                              drckung eingebait
           19.09.94  FAKTMAIN:Bei Tedi F1-Text CHANGE-Flag gesetzt
                     FILEEDIT:DVL->DVU speichern Kopieren stat Speichern
           28.09.94  DFEDLIB: KEY_SHIFT_INS -> KEY_CTRL_INS fr unternumm.
                     SYSLIB:  bioskey(0) gegen getch() ausgetauscht, weil
                              CTRL-INS bei bioskey nicht funktioniert?!
                     CONLIB:  Convert Key Option C scan-hex to scan-hex
           06.10.94  DFED3LIB:bei edit_extwindow wird zeichen bei Inhalt
                              gesetzt.
           10.10.94  FFSTDVK: fr 'B'-Position auch 't' zugelassen
                     FFARTBCH:check_posvk bei 'B' un 't' auch keine VK==0
                              Prfung
                     DFLIB:   set_dfmaidata ausgabe der Rechnoperationen auf
                              den Bildschirm unterdrckt.
           17.10.94  FFVERK:  Bei Auftrag „ndern Produktionskontrolle wieder
                              aktiviert
                     FAKTEDIT:Bei Belegverarbeitung verlassen, Frage nach
                              Verlassen/Verwerfen
           20.10.94  DFLIB:   bei init_recdata MA_NEW und rootmai und
                              mai->group>=32 set_sdfrecdata mit mai->group
                              und SET_RECDATA_PARENTDFFIRST
           29.10.94  DFEDLIB: remove_dyndf df->usecnt auf >1 ge„ndert (-1
                              error entfernt)
                     FFLAGBCH:Nur noch 'J'-Listen werden als Listen
                              gebucht!
                     PRGLOAD: SetFileIndex Fehler bei mehreren ItemCode
                              beseitigt
                     FFDISPO: dfo.init()-Fehler (Zu wenig Hauptspeicher)
                              -Endlosschleife beseitigt
           02.11.94  FAKTEDIT:FNC_BELEGSPEICHERN wird auch bei rckg„ngig
                              machen mit para=BUCHEN_REVERS aufgerufen,
                              bei Rechnungen FIBU-Sperre geprft
  V2.00-98 08.11.94  WINLIB2:
                     CALCLIB: Stringarray eingefhrt
           09.11.94  FFDISPO: Menge in Feld 8 bei AufPos und Produktion
                              mitbercksichtigt
           15.11.94  FFBSTLST:bei BelegDfo fr Bestellung best„tigen
                     FAKTFNC:     akt_recpos=REC_TOPRELPOS eingebaut
                     FAKTSUB: bei summe_forderungen Anzahl korrigiert
           28.11.94  FFPERS:  Personalmodul/Urlaubsplaner eingefhrt
                     FFBDE:   neues BDE-System eingefhrt
           02.12.94  FFREPARA:Verschiedene neue Reparaturfunktionen eing.,
                              Reparatur-Artikel/Kundenberwachung berarb.
                     PRGLOAD: Change-Funktionen eingebaut.
                     BRECLIB: Bei func cmp_recbuff bei BKT_ZSTR stracsncmp
                              eingebaut.
           12.12.94  FFART:   Artikel WE-Statisitk (stat DW) eingebaut
                     FFFIRUMS:WE in ArtUms und WGRUms eingebaut
                     DFED2LIB:Liste kopieren -> USERBREAK m”glich
           14.12.94  DFDB:    open_db  dtbuff[10] -> dtbuff[20]
                     DFEXTFNC:[L-Kommando, cpy_maibuff -> convert_mai_input
           16.12.94  FFBELPRU:workAufNummern Meldung bei Ware zu Auftrag
                              komplett gekommen korregiert und aktiviert
                     FFREPARA:šberwachung EINE Ausfhrungsart muá angegeben werden
                     FFART:   Negativ-Buchungsberwachung eingebaut
                     BRECLIB2:Insert und Append eingebaut
                     DFEXTFNC:[L-Kommando um beliebigen Datenbankzugriff
                              wie [D-Kommando erweitert
                     PRNLIB3: getVariableStr v2-Wet bei V1-V32 korrigiert
                              (@H,V10 ging nicht)
           02.01.95  FFSTATIS:warenbedarf_neu_erstellen Repara (in gebrauch)
                              bercksichtigt !!!!!!
           03.01.95  FFCPSHOP:Miete_func Kontrolle auch bei Z„hlerstand 0
           11.01.95  386      Erste Protected-Mode -Version eingesetzt
           14.01.95  FFBDE:   Autostop fr alle Tasks korrigiert
           18.01.95  386      Fehlerhafte realloc-routine von WATCOM ersetzt
           20.01.95  FFBDE:   Autostart eingebaut, BDE berarbeitet, BDELog
                              eingebaut, BDE-Terminalausgabe nur differenzen
           21.01.95  FFART:   Wareneingang-Umsatzstatistik eingebaut
                     FFFIRUMS:Wareneingang-Umsatzstatistik eingebaut und
                              Jahresabschluá umgebaut. L”schen des letzten
                              Bewegungsdatums bei Jahresabschluá im Artikel-
                              stamm beseitigt.
           27.01.95  FFBUCHEN:aenderungsBuchen uninitialisierter revNumPtr
                              bei mode NEW und DELETE beseitigt
           28.01.95  FFEINK:  Automatische Bezahlung einer Verbindlichkeit
                              bei Zahlungsbuchung und Bezahltbetrag kleiner
                              Buchungsbetrag
           31.01.95  FFFIBU2: Eigene neue FIBU aktiviert!
           04.02.95  FFFIBU2: Verschiedene Fehler korrigiert
           08.02.95  FFFIRUMS:Bei Jahresbertrag Lieferantenartikelstatistik
                              mit einbezogen!
                     TURCBTRV:Auch bei Err 22 bei __386__ Puffer bertragen
                              (memcpy)
           10.02.95  PRNLIB4: Bei Ausdruck mit @0 am Ende in normalem
                              Eingabefeld Fehler "Hunk-Abbruch" beseitigt
           13.02.95  FFREPARA:reparatur_abschliessen fehler bei Rechnungs„nderung
                              zur Reparatur -> Reparatur nicht zurckgebucht!!
                              beseitigt.
                     FFSTATIS:warenbedarf_neu_erstellen erweitert um Artikelfeld
                              "in Reparatur" neu berechnet.
           14.02.95  DFED3LIB:save_copyrecdata alle Fehler als Returnwert
                              zurckgeben (Bei Archiv-Fehler wurde nur Belegkopf
                              aber keine Positionen bertragen!)
           15.02.95  FFART:   íEK-Logbucheintr„ge aktiviert
           16.02.95  SECURITY:Zus„tzlich zu \n auch \r beim Lesen der Serien-
                              nummer entfernt.
           17.02.95  FFFIBUDV:Bei Belegaufl”sung Verbindlichkeiten ohne 'R'
                              trotzdem 'ER' und eOpen bei Buchungsjournal
           22.02.95  DFIMP:   Option '-': Fhrende Leerzeichen entfernen
           23.02.95  FFARTBCH:beleg_positionbuchen_ 2 x if( pointer); <-Fehler entfernt
                     FFLAGBCH:artListBuchen 2 x if( pointer); <-Fehler entfernt
                     FFART:   bei Wareneingang LiArtNr von WegPos und
                              nicht von zugeh”rgiger BstPos!
           02.03.95  DFED2LIB:save_copyrecdata WL_USERBREAK bei Listenkopieren
                              nur bei Frage "Liste Kopieren" zugelassen.
                              (wegen Archivieren -> Taste -> Abbruch mitten
                              in Liste!)
           06.03.95  FFFIBUDV:Beleg2Journal::Work()  BelegFibuDfo *belegDfoPtr
                              delete aus if/else zweigen herausgenommen
           08.03.95  FAKTMAIN:bei Automenuepunkten 0xAxxF BrowseNr 0xF -> 0x0
                     PRJPRM:  class GlobalInfo bei Read() Drop() vorgeschaltet
           09.03.95  BRECLIB: bsearch2 bei >= element immer end+1
           10.03.95  STDPRJ2: globalmasken nwnr mit 0xC0xx Schlssel fr Hilfen versehen
           11.03.95  DFEDLIB: Bei Openlist Speicherung bei Neueingabe des
                              Parent-Datensatzes m”glich
                     REQUEST: ask2 @ fr keine Esc-Taste eingebaut
           14.03.95  RECHTAW: RechtMenue_func bernahme von Menuepunkte >0x7FFF
                              gerichtet (0xFFFF wurde angezeigt)
           16.03.95  FFVERK:
                     FFPROD:  von Auftrag und Produktion kann auch bei anschauen
                              mit F2 Ware in die Bestellliste bernommen werden
                     FFLAGBCH:Bestellberwachung bei Lagerbuchung eingebaut
                     FFART:   Bestellung mit F2 von Artikelstamm aus m”glich
           17.03.95  FFSTDVK: In den Ausgangsbelegen Nettosumme fr Rabatt-
                              vergabe eingebbar
                     FFRECH:  Bestellistenberwachung auch in den Auftragspos-
                              listen aktiviert
                     FFVERK:  In AufPos FeldCode 11 fr GesLiefermeenge eing.
           21.03.95  DFLIB:   Flag DFF_CHILDAUTOCLOSE und closeAllAutoChildDf
                              eingebaut.
                              close_dfrec mit closeAllAutoChildDf in allen Ebenen
                              versehen.
                     BRECLIB: close_record mit FNC_BTRIEVE 2 ausgestattet
                     FFART:   Nicht Schlieáen der Artikelpreise bei Sonderpreise
                              'Ja' durch DFF_CHILDAUTOCLOSE beseitigt.
                              FNC_BTRIEVE 2 (close) mit closeAllAutoChildDf eing.
           22.03.95  FFARTPR:
                     FFART:   Preisfindung um Warengruppenbezogene Kunden-
                              rabatte im Staffelpreismodul erweitert.
                              Preivorgabe bei Artikelneueingabe ber Waren-
                              gruppe verbessert.
                              Rabattsteuerung und Rabattfelder in Preis-Kartei
                              aktiviert und erweitert.
                              Zus„tzliche šbersichten fr Preisvereinbarungen
                              von Warengruppen aus und fr Kunden zus„tliche
                              šbersicht.
                              Zus„tzliche Artikelvorgaben in der Warengruppenmaske
                     DFRW:    bei df->flags&DFF_EXTWINDOW READ-Function wird nicht
                              mehr aufgerufen.
           23.03.95  FFVERK:  AufPos_func bei Auftrag kopieren neues Feld 11 wird
                              mit gel”scht
                              Auftrag_func bei Auftrag kopieren Feld Rechnung> wird
                              gel”scht
           24.03.95  INPLIB:  bei Rabatt und Kurseingabe zus„tzlich mai->flags|=MAI_CHANGE
                              eingebaut
                     FAKTSUB: bei taschenrechner zus„tzlich mai->flags|=MAI_CHANGE
                              eingebaut
           28.03.95  FFBSTLST:lagermaterial_aufnehmen() und bestellvorschlag2bestelliste()
                              Problem bei ge”ffneter Quell-Maske und Ctrl-Left beseitigt
                     FFART:   FNC_DFEDITMASKKEY fr DFF_EXTWINDOW gesperrt
                     STDMSK:  Druckerliste Taste ' ' bei JobListError šbersicht abgeschaltet!
           29.03.95  SCRIPT:  Modul VkLeVe implementiert
                     FAKTMAIN:EXPIRE_DATE386 implementiert
           05.04.95  DFLOADZW:Funktion FNC_LOADLIST_CPYINIT und FNC_LOADLISTMSAMMEL_WRITE
                              eingebaut.
                     FFEINK:  Bestellung von Auftrag eingebaut.
           12.04.95  FFART:
                     FFARTBCH:Erste Posten und Hyperartikelverwaltung/-buchung
                              in Betrieb genommen.
                     FAKTMAIN:Key CTRL_TAB fr Fensterumschaltung eingebaut
                     WINLIB:  Key TAB und Shift-TAB fr Felder vorw„rts/rckw„rts
                              in der Eingabemaske (wie Windows)
                     FAKTMAIN:Bei Userlogin 3 Versuche.
                     FAKTMAIN:EK-Nachladen bei Lieferschein->Rechnung abgestellt,
                     FAKTSUB: EK-Nachladen bei Auftrag -> Lieferschein/Rechnung
                              ber Programmeinstellungen einstellbar. Flag PRJCNF_AKTNOEK
           19.04.95  FAKTEDIT:bei func FNC_EDITBELDATAEND mit Werte >0 -> err=0 gesetzt
                     FAKTMAIN:Datumsangabe in do while-Schleife verlagert
                     FAKTPRJ: User.rec ohne DEFDATA wegen Masken”ffnen beim Desk
           20.04.95  DFED2LIB:Meldung bei šbernahme von zu vielen selektierten Flags
                              in ein Feld
                     Massen„nderung: Increment +10 und +Var1 eingebaut
           21.04.95  DFLIB:   Initiallisierung von Bearbeiter nach F1 falsch; korrigiert.
                              set_dfmaidata(): Bei Initgruppe und File == User und FirstTake
                                               sdf auf Login-User gestellt
           24.04.95  FFEINK:  Einkaufsbelege mit Kostenstellenzuordnung m”glich
                     FFPROD:  Fremdleistungen/Externe Produktionen m”glich
                     DFLIB:   print_browse(): Bei nachladen Zahlenarrayzugriff monatsabh„ngig default
           25.04.95  FAKTPRJ: Alt-F6: A.ASC editieren immer m”glich
                     FAKTEDIT:edit_datasingle() Drucken bei šbersicht generell m”glich
                              (insbesonderst bei Verbindlichkeiten bearbeiten)
                     FFPROD2: Produktionprfroutine korrigiert
                              Bei Artikel ohne Lagerverwaltung keine Meldung
                     FFPROD2: Soll/Termin„nderung, Ist-Mengen„nderung eingebaut
                     DFMBIGG: Bei F1-™ffnen der Maske Listfenster bereits aktiviert
                     FFPROD2: Bei Auftrag -> Direktproduktion NAME2 von Artikel nachgeladen
           26.04.95  PRGLOAD: Bei F10-Menues Submenus m”glich
                     MENULOAD:Rekursion in Kommando PopUp entfernt,
                              MenuSize in Kommando End von PopUp verlagert.
                     DFEDLIB: Rechter Mausknopf -> PopUp-Menue
  V2.1-01  27.04.95  FFAHYPO: Hyperartikel-Plausibilit„tskontrolle eingebaut
                     DFEDLIB: Fehler -230 bei Ctrl-F7 Archiv ber Filterliste beseitigt
                     DFPRN:   Bei F4 Menu vorgeschaltet
           28.04.95  PRGLOAD: DisplayFile -Kommando mit Fenstertiteltext
           02.05.95  FFMANDAN:Mandantenverwaltung eingebaut
                     DF.H:    struct DataFilePara default_file_path eing.
                     FAKTMAIN:CTRL_TAB Endlosschleife ohne Fenster beseitigt.
           03.05.95  PRGLOAD: EditFile -Kommando mit Fenstertiteltext
           08.05.95  FAKT.H:  Modulschalter fr Betonwerke eingebaut
           09.05.95  SECURITY:IsEnvBased() eingebaut:
                              Multiversion mit 'SET COMPUTERNAME=XXX' benutzbar
           10.05.95  FFERLBU: Kontobername mit convert_mai_input wegen Fehler
                              bei unterschiedlicher L„ngen.
           11.05.95  FFFIBUDV:Belege -> Journal Frage nach Einkauf/Verkauf/Beides
                              eingbaut
                     FAKTMAIN:EXTDAT->Dateien greifen nicht mehr auf BASISDAT zu!!!
                              Ausweichmenuepunkt 0x571 (org 0x57) fr
                              Abw„rtskompatibilit„t (Notfalls) eingebaut.
                     STDPRJ:  verfuebarer Bestand, Bedarf und Vergleichmodus werden bei
                              neuem User initialisiert.
                     STDPRJ:  bei set_user() User->data memhead immer initialisiert
                              wegen Neu-User keine Userdatenspeicherung!
                     SECURITY:bsumm() um adrSumm() erweitert
           08.06.95  DFLIB:   get_df() Mandanten-Defaultpfad bei abgeleiteten Aufruf erzeutgt
                              (z.B. PLZ- und BLZ-Verzeichnis nur im Default-Mandant
           09.06.95  POPUPMNU:Problem beim Menue erzeugen beseitigt (notfals Meldung)
                     FFARTBCH:TTS-System beim Positionsbuchen aktiviert.
           12.06.95  FFPROD:  SN bei Produktion zu Beleg in Feld SN der Position (falls vorhanden)
                     FFARTBCH:Dummypositionen (gleiche POS-Nummer) nicht im Belegbezug verbuchen
                     FFSTDVK: Positionstypen 'B','T','t','I': VK und EK = 0 oder Menge =0
                              Dummypositionen (gleiche POS-Nummer) werden beim Abschliesen
                              nicht mitgeprft
                     FFARTBCH:TTS-System: Schliesen aller Dateien korrigiert
           13.06.95  DFPRN:   druckerauswahl() Page-Fault Fehler bei DOS32 (varPtr) beseitigt.
                     BRECORD: REC_EXCLUSIVE eingebaut
                     FAKTEDIT:Belegart auf zwei Stationen mit einem User gesperrt
                              (Problem nur bei Client-Server Btrieve)
                     FFREPARA:bei BUCHEN_KEINBELEG (warenbedarfszahlen neu erstellen)
                              Lagerbuchung (Eigenger„t) beseitigt!
                     FFSTATIS:warenbedarf_neu_erstellen RepRcksendung mit bercksichtigt.
                     FFBSTLST:Bestellliste->Bestellung, Lieferantenwechsel mit
                              Auswahlm”glichkeit.
                     FFVERK:  Auftragsbestandsberechnung um Alternativ-, Optionalpositionen
                              und Auftragsberlieferung korrigiert
                     FFARTBCH:Auftragsbestandsberechnung bei Kunde und Vertreter:
                              Fehler bei Auftrag „ndern von keinem
                              Kunde/Vertreter -> Kunde/Vertreter beseitigt
                     STRLIB:  strtokenCpyExt (\ Bercksichtigt) eingebaut
           14.06.95  PRGLOAD: Kommando AddMultiFileFilterArchiv und SetFileToArchiv eingebaut,
                              Texteingaben mit " (speziell ExecutePrintText) durch \" m”glich
                     PRNLIB:  Vn Variable, maximale PuffergrӇe von 255 -> 1024 vergrӇert
                     DFEXTFNC:[D und [L -Kommando um Archiv-Zugriffsm”glichkeit erweitert
                     DF.H:    DataFile.iggexitkey von 230 -> 240
                     FAKTMAIN:IFW Aufruf mit Loginname#MENUITEM-CODE fr direkten Menupunkt-
                              aufruf m”glich (z.B. fr BDE)
  V2.1-02  16.06.95  IGGAW:   Selektionsbits von 16 -> 32 korrigiert
                     RECHTAW: 1. Zugriffsrechte fr Archivieren pro Datei eingefhrt
                              2. Rechte fr Zugriffslevel auf Felder in der Maske eingefhrt
                              3. Menuepunkt Benutzerprogramme anmelden abschaltbar
                     DFEDLIB:
                     POPUPMNU:Aufrufm”glichkeit fr ein Systemprogramm beim Laden
                              einer Kartei eingebaut
                     FAKTMAIN:Btrieve-Reset eingebaut
                     PRNLIB:  Listekopf nicht auf Erster Seite bei zu Langen Angebotstext
                     TEXTEDIT:fill_line Routine korrigiert
                     FAKTMAIN:Editor F1-Textmodul von Ersatz auf Insert ge„ndert.
           20.06.95  PRGLOAD: Archiv-Module mit #include "prj.h" aktiviert
                     FAKTEDIT:BUCHEN_CHANGE fr para-mode Beleg ver„ndern eingebaut
                     FFOFFPOS:Plausibilit„tskontrolle: OP muá bei Rechnung ver„ndern
                              /- rckg„ngig machen existieren!
           21.06.95  DFED3LIB:edit_extwindow() Systemprogramm beim Laden von Unterfenster
                              aufrufbar.
                              šbertragen der Zugriffslevel Hauptfenster -> Unterfenster
                              eingebaut (Fehlfunktion evt. von Ctrl-F3 im Unterfenster.
           22.06.95  FFSTDVK:
                     STDPRJ:  Benutzer„bh„ngige einstellung fr Auswahllisten
                              fr Kunden und Artikel im Verkuf eingebaut.
           25.06.95  FAKTVERK:Feld 11 in Aufpos ohne Produktion gel”scht und bei
                              Auftragsbestandberechnung mit und ohne Feld 11 bercksichtigt
                     COPYSHOP:Abrechnungsfreie Monate eingebaut.
           26.06.95  DFLIB2:  df_init() Memorymanagerfehler bei Initialisierungfehler bes.
                     DFIMP:   Kommando @Hnnn; und @H"comparestring"; eingebaut.
                     TEXTEDIT:isZeilenumbruch in fill_line eingebaut.
                              KEY_LEFT in letzter Zeile ge„ndert
           28.06.95  WINLIB:  convert_mai_input() Eingabe von mehr Zeichen als Feldl„nge,
                              hinten abschneiden von ASCII-Zahlen nach vorne abschneiden
                              korrigiert. (auch fr FIBU unterschiedliche Kontofeldl„ngen!)
           29.06.95  FAKTEDIT:bei WM_AUTOSPEICHERN Endloschleife und Nummerabfrage bes.
                     DFOBJ:   setAndChooseMaiGroupData() eingebaut
                     FAKTMAIN:Lieferanten-/Kundenmitarbeiter bei direktem Aufruf šbersicht 0
           30.06.95  FAKTMAIN:šberweisungen in Usereinstellungen Einkauf mit einbezogen
                     DATENSP.H:Datenspeicherverwaltung Rckgabewert bei Add ge„ndert:
                              bisher Anzahl, neu index des Elements!
                              bei Remove Destruktor aufgerufen, Drop mit free() statt delete [].
           04.07.95  PRJPRM:  Protektedmodeabsturz beim ™ffnen einer nicht vorhandnene Dialogmaske
                              beseitigt. (Masken::Masken())
           05.07.95  BRECLIB:
                     DFLIB:   šberwachung von ungltigen selektierten Eintr„gen eingebaut.
                              Beim Nachladen von Daten in der Liste, Fehler
                              nur noch 1 mal, nicht mehr pro Zeile
           07.07.95  386      Protected-Mode -Version mit WATCOM 10a compiliert
           10.07.95  DFLIB:   set_dfmaidata() SET_RECDATA_CMP_ONLY - Modusflag eingebaut
                     FFART:   Warengruppen-Preisnachladen mit Abfrage eingebaut
           11.07.95  LOADSAVE:stat open sopen wegen Zugriffsrechte bei WATCOM eingebaut
                     PRGLOAD: Change()-Kommando um ASK-Parameter erweitert
                              SetItemAccesslvl() um bit 8 und 3 (0x108) erweitert:
                               bit 8 -> Feld muá etwas beinhalten,
                               bit 8 und 3 -> Feld sollte etwas beinnhalten.
                     FAKTEDIT:Die Abfrage erfolgt nur beim Beleg speichern.
                     POPUPMNU:Bei Temppuffer der Belege wird zuerst versucht Programm mit
                              tempor„rem Filename zu laden (Userabh„ngig), falls ohne Erfolg,
                              dann Programm mit Filename nnn000.
           12.07.95  DFLOADZW:Belege vom - bis bei gleichem Datum nur vom
                     WINLIB:  convert_mai_input() 0 - Eingabe bei Text-Zahlen ge„ndert
                     FAKTEDIT:Kennzeichen 'S' im Beleg fhrt allgemeine zu Storno des Belegs
           13.07.95  DFED2LIB:bei ed_writerec() vor Speichern Gruppe 99 ausgel”st
                     DFLIB:   Browse.print BE_KEYNOTFOUND bei Abschaltung von DF_LOAD bercksichtigt
                     PRGLOAD: Search und Change -Kommando open-ReRead abgeschaltet
           14.07.95  BRECLIB: bei unlock_record() Lock=0 eingebaut.
                     WINLIB:  input_mask() bei Feld mit Exit Change-flag vor input_mask_item() gel”scht.
           19.07.95  DF.H:    DFF_EDIT_WORK4PRINT eingebaut. (Bei Wareneingang mit ArtPst erst buchen dann drucken)
                     LISTE.H: Print( short) auf Print( FILE *) umgestellt
           20.07.95  DFRW:    Bei Neueingabe MA_NEW-Flag korregiert
                     STDPRJ:  load_textauswahl() (FAKT.AWT) auch Zeichen û bercksichtigt (386)
                     FFERLBU: Alternativ un Optionalposten werden bei Belegsplittung nicht mehr
                              falsch mitverbucht!
           24.07.95  FFFIBU2: GTS; Fehler bei FIBU-Buchung „ndern/kopieren bei OP/Verbindlichkeiten-
                              buchen (mode stat orgMode verwendet) beseitigt.
                     FFRECH:  Bei Postenverwaltung Postenprfung in Lieferschein und Rechnung eing.
                              Bei Produktion 'K'-Position ohne Postenkontrolle eing.
                     DFFNC:   readMandantID() Bei Mandant 000 mit Login Mandant mit Name
                              Fehlerkennung beseitigt.
                     FAKTMAIN:
                     STDPRJ:  login mit User#MenuItem ohne Mandant und mit Pinboard Fehler korrigiert.
           25.07.95  PRNLIB3: varPrint() bei Option V3n0 Fehler 100 -> 1 beseitigt
                     TEXTEDIT:fill_line Routine korrigiert, Textbearbeitung am Ende des Textes verbessert.
                     PRNLIB:  Option @Lmi,i1,i2; eingebaut
           27.07.95  FAKTMAIN:initConfig() wegen Mandant/User aus init_main() verlagert
                     DFED2LIB:ed_getdata() Funktion FNC_CHOOSE_FOR eingebaut.
                     DFEDLIB: mask->flags|=MA_EDFUNC bei ed_getdata() -Aufruf eingebaut
                     FFVERK:
                     FFEINK:
                     FFSTDVK:
                     FFARTPR: diverse Plausibilit„tskonrollen fr 'J'-Listen eingebaut
           02.08.95  PRGLOAD: bei Changekommando auf orgRecPos zurckplaziert (ohne selektierte -> #-232!)
                     FAKTSUB: input_benutzer() fr Mandant korrigiert
                     DFEDLIB: bei enterKey&KEYFLG_EXIT exit bei offenenm Fenster korr.
                              (Auftrag stornieren -> bereits Belege -> editmodus!)
                     PRNLIB3: Formatierungsoption '#' eingebaut
                     FFOFFPOS:Bei Rechnung „ndern/Rckbuchen werden nun Bezahltbetr„ge in OP belassen!
           04.08.95  FFBELPRU:Bei Bestellprfung Toleranztage eingebaut
                     PRGLOAD: Kommando OrderSelection eingebaut
                     PRNLIB3: option [j fr KW-Wochenende (Sonntag) eingebaut
           07.08.95  DATENSP: Bei Add und ReSize free() durch delete [] ersetzt
                     BELEPRU: DatenSpeicherOne wird bei Auftragsvermerk und
                              Bestellverwaltung (Bestelliste) verwendet
           09.08.95  FFFIBUDV:Bei Belegsplittung Summenprfung und korrektur bei bis zu
                              10 Pfennige eingebaut
                     BRECLIB: Bei insert_recarray() SortBreak durch Taste nicht mehr zugelassen
                              (Bei Shift-Pfeil nach unten kein Abbruchmeldung mehr)
                     FFBSTLST:Von Prod Bestellung ber beteiligte Lieferanten m”glich.
                              Es werden alle drei Lieferanten im Artstamm verwendet.
           14.08.95  DFLIB:   set_dfmaidata() mask->change-Bit bei NOTSAVE-Felder nicht setzen
                              (wegen OnLine Listenkontrolle)
                     DFLOADZW:Bei loadgroup/setgroup nur mit SET_RECDATA_NONEXTGROUP aktivieren
                     FFARTBCH:
                     FFART:   Externe Lager mit aktiven Lagerbuchungen eingebaut (KZ 'L')
                     FFxxx    VKLEVE-Umrechnung, Umgerechnete Anzeige eingebaut
           15.08.95  PRNLIB3: Option [.V04C87] fr indizierten Maskenzugriff eingebaut
           17.08.95  RECHTAW: Anzeige der Menuerechte in der Menuehilfezeile eingebaut
           19.08.95  FAKTEDIT:TTS-System Beleg Kopf und Pos Speichern gekapselt.
           21.08.95  BRECLIB: Bei Update und Insert projekt_func aufrufen mit PRJFNC_BTRIEVE_OFFSET.
                     DFEXTFNC:Bei [.xxCyy] Variablen EMPTY-Status korrigiert
                     BRECLIB:
                     DFxxx:
                     FAKTPRJ: Projekfunktion fr Btrieve Insert/Update fr Wait for FileLock eingebaut.
                              Busy-Status in Menuezeile eingeblendet (20 sek, .5 sec Intervall)
           24.08.95  FFEINK:  Von Auftrag -> Bestellung e_get_namemai-Fehler beseitigt
                              (strn0cpy ohne -1 bei Auftrag2BestellLiefNum, z.B. Prod->Best von MSC)
           28.08.95  FFSTDVK:
                     FAKT.H:  PRJCNF_SACHNRAUTO in projektConfig eingebaut und Sachnummern mit
                              Alternativzeichen 'A' beim Artikelladen nachgeladen
                     FAKTSUB:
                     STDPRJ:  systemparameter_einstellen() nach FAKTSUB verlegt
           03.09.95  FFSTDVK: Sachnummernautomatik Fehler korrigiert (FindFirst/FindNext ohne Begrenzung).
           04.09.95  REQUEST: ask-Requester um xOffset bei šberbreite korrigiert.
           05.09.95  FFDISPO: Fr Rechnungsautomatik Kundenkennzeichen 'U' und 'Z'
                              fr Sammelrechnung auftragsbezogen (U) und Einzelrechnungen (Z) eing.
                     POPUPMNU:Fehler von F10-Menueintr„ge mit Usernummer bei User nicht sichtbar bes.
           06.09.95  FFEINK:  standardcalc5_einkpos  check_belegtyp() (Ausland-Prfung) in calc-Pfad 5 eing.
           07.09.95  FFERLBU: Erweiterung der Positionsaufteilung um Bercksichtigung des Auslands-
                              kennzeichen 'a' und 'e' fr Erl”áe EG und Drittl„nder
                     FFWEG:   Bercksichtigung des Auslandskennzeichen fr Versand beim Wareneingang
                              Warenrcksendung -> Gutschrift: Falscher Wert ZahlBed in Gutschrift gel”scht.
                     FFBDE:   ReadCard-Commando eingebaut.
           09.09.95  CALCMAI: cpy_maibuff bei Stringarray l„nge um +1 korrigiert
                     WINLIB:  input_mask_item() Mit AccessLvl-Inaktive Felder mit F1 betretbar.
  V2.1-03  09.09.95  WINLIB:  Bei Maske anschauen, F1-Felder mit Cursor aktivierbar
                     FFWEG:
                     FFEINK:
                     FFFIBUDV:Mehrfachwareneing„nge zu einer Verbindlichkeit m”glich
           10.09.95  FFEINK:  Neues šberweisungsmodul aktiviert.
           12.09.95  FFFIRUMS:Lagermenge in ArtUms aufgenommen
                              Warengruppen WU-Zeile summe korrigiert
                     WINLIB:  refresh_nw() Maskenlinien bei CtrlF3 mit-refresht
           14.09.95  DFREQUES:NULL-Pointer bei Text "Von" bercksichtigt.
           15.09.95  FFSTATIS:Berechnungen der Vorjahresfelder in der ArtUms-Maske
                              (Lagerumschlagsh„ufigkeit/Rendite) und Renditendurchschnitt korrigiert.
                     FFARTBCH:aufpos_bestell_pruefung(): Menge der zu šberwachenden Position von 1.0 auf
                              eingetragene Menge korrigiert.
                              check_posart_bestell(): Verwaltung der tempor„ren Eintr„ge in der
                              Bestelliste korrigiert ($xxx-Eintrag jetzt rechtsbndig).
                     FFLAGBCH:LagerBuch_func() Funktion FNC_WRITEENDGOOD: unuse von Artikelstamm korrigiert.
                              (Bei Ctrl-A -> F10 -> Lagerbuchung -> ESC Endloschleife mit Warnung drop usecnt >0)
                     DFLIB2:  drop_all_childdf() bei drop failed, Endloschleife verhindert.
           16.09.95  FFBDE:   WriteCard-Commando eingebaut.
           17.09.95  FAKTFNC: BelegVonBisLDFO bei Verwendung von Filter Fehler korrigiert.
           18.09.95  WINLIB2: edit_nw() Maskenpositionen bei mehr als 128 Felder (128-250) bercksichtigt.
           19.09.95  DFEDLIB: Systemprogramm bei Record laden: 1:„ndern, 2:neu, 3:kopieren
                     PRGLOAD: Kommando SetItem eingebaut
                              Erweiterung von SetItemAccessLvl um Bit9 -> F1-Aktive Felder inaktiv schalten
           22.09.95  FFKDSTAT:Kundenspezifische Artikelstatistik, Fehler -4 bei nichtvorhandenen Artikeln
                              korrigiert.
           25.09.95  STDPRJ.H:User-structur um "char *zeichen" erweitert.
                     FAKTMAIN:InitStr[5] auf UserZeichen gesetzt ([4]:=UserNum)
           26.09.95  FFFIBUDV:Euro-ID wird beim Einkauf mitbertragen
                              Kostenstellenbertragung auch von Lagerbuchungen eingaut.
                              Kostenstellendatenbank (handle:106) eingebaut
                     FFARTBCH:check_posart_bestell: Bei Bestellistenbernahme mit F2 statt copy_namemaskitems von
                              Artikel->BstLst SET_CHOOSE-Funktion eingebaut.
                     FFMANDAN:Tempor„rdirektorie Mandantenabh„ngig eingebaut,
                              L”schen der Verzeichnisse: alle Dateien werden komplett gel”scht (vorher nur die
                              angemeldeten Projektdateien; fremde Kartei einkopiert -> Fehler beim L”schen)
                     DFEDLIB: Systemprogramm bei Record laden um 4:init (wird immer vor 1-3 ausgefhrt) erweitert
                              chkEmptyMai() fr soll/muá-Felder von FAKTEDIT -> DFEDLIB verlagert
           27.09.95  PRNLIB5: Bei Vn Dimmensionierung >256 Byte GrӇenfehler beseitigt (386->Absturz)
           28.09.95  DFLIB:   df_chgsel() bei DFF_RAM Fehler korrigiert.
                              (De-Selektieren mit Taste ' ' bei RAM-DF war nicht m”glich)
           05.10.95  FFBDE2:  Error-Sprung bei Fehler von Kommando:
                              Korrektur:     von aktuellem Kommando nehmen.
                              Bisher falsch: wird vom vorherigem Kommando genommen.
           10.06.95  BASISDAT:In VERTRE:MSK DM- und RG-Array von [12]->[13] wegen Gesamtsummen
                              Im STDMSK-Verzeichnis OFFPOS.MSK das Feld Finanzkonto unsichtbar geschaltet
                     FAKTEDIT:
                     DFLOADZW:Systemprogramm $10-$13 fr Belegbearbeitungsinitialisierung eingebaut
                     DFPRN:   NULL-Pointerzugriff bei Druck ber Vaiable %...% ohne Zieldruckerangabe in []
                              mit Frage "Zieldrucker ausw„hlen" beseitigt.
           09.10.95  FAKTPRJ: Alle xxxPos - Datenb„nke auf unbeschr„nkt eingestellt.
           12.10.95  PRGLOAD: Search/Search2 - Kommando -232 NORECPOS bei keine gefunden beseitigt
           13.10.95  FFINVENT:Barcodeverwaltung bei der Inventurerfassung optimiert
                              (Fhrender 10 oder 00 bei l„ngeren Barcode werden bergangen)
                     FAKTMAIN:
                     WINLIB:
                     CONSOLE.H:Barcode-Exitkey fr Barcodeeingabe bei Nummernfelder (MaiCode 32)
                              eingebaut.
                              Neues Barcodesystem fr Nummernfelder eingebaut.
           16.10.95  FFUMSATZ:Berechnung von Tagesabschlssen nur mit Gutschriften ohne
                              Rechnungen korrigiert.
                     WINLIB:  Bei input_mask() mit MA_MAISHOW Fokus auf eigentlich inaktiven Feldern
                              bercksichtigt.
                     FAKTEDIT:edit_datasingle() verstellen des Fokus von Eingabefeld ber F1-Maske anschauen
                              beseitigt.
           18.10.95  FAKTMAIN:
                     FAKTPRJ: Hotkey Ctrl-W fr Datenbank 103 (Info-System) eingebaut.
                     DFLIB:   bei _drop_df() auch bei aktBrowseNr!=0 DFD_ISINIT gesetzt.
           19.10.95  FFPROD:  Variantenproduktionen mit Status 'L' sind nicht mehr ver„nderbar
                              (wegen Probleme mit Auftragsgegenbuchung bei Auslieferung).
                              Beim Speichern wird Status 'E' und 'L' immer gel”scht.
                     FFEINK:
                     FFWEG:   Das Feld Lager wird auch beim Artikel abrufen automatisch geladen
           23.10.95  FFFIBU2: Auszugsnummer,Datum und FinKto werden bei Neuanlage automatisch gehalten.
                              Rundungsfehler +/- 1 Pf. beim Einf. beim Betrag beseitigt, Betragsumlage
                              auf Kulanz/Skonto ge„ndert.
           24.10.95  FFZAHLVE:Wie FFFIBU2: Auszugsnummer,Datum und FinKto werden bei Neuanlage automatisch gehalten.
                              aktuelle Eingabeposition in der Maske bei Neueingabe bleibt.
                     FFFIBU2: aktuelle Eingabeposition in der Maske bei Neueingabe bleibt.
                     FFPROD:  Fehler bei Variantenproduktion Positionsabgleich bei Auftrag -> Liefersch./Rechnung
                              bei Produktionspositionen mit 'M' ohne ProdPos: šbernahme von Zus„tzlicher Ware aus
                              Produktion, die eine Auftragsnummer weiter steht und eine solche Position enth„lt.
                              Auáerdem falsche Produktionsnummernreferenz in Endbeleg trotz richtiger Seriennummer!
                     DFEDLIB: Systemprogramm $00 fr Init mit Flags korrigiert und auch bei edit_datasingle aktiviert.
                              Felder-Prfung auf Soll- oder Muáfeld vor Speichern-Abfrage gelegt.
           30.10.95  FFART:   Buchung an Artikel mit aktivem externes Lager (Kennzeichen 'L') ohne Lagerangaben richtig
                              im Feld "in Gebrauch" oder "ext.Lager" bercksichtigt.
           31.10.95  FFARTBCH:F2 -> Ware in Bestelliste Datenbernahme Position/Artikeldaten wegen EK/PE/Lieferant neu
                              geregelt.
                     DFEDLIB: Bei ESC-Save Taste ESC Feldprfung auf Muá oder Soll abgeschaltet
                     FFBSTLST:Bestelliste-> Bestellung Menge*Anz Berechnung aktiviert
           02.11.95  IGGLIB:  Fehlermeldung bei Can't open itemgadget eingebaut.
                     FFPROD3: Bei Hirachischer ArtikelauflӇung Meldung bei Artikel nicht
                              gefunden eingebaut (vorher wurde einfach ohne Meldung abgebrochen).
                     PRNLIB4: Kommando @.ZAx korrigiert und Option n/360 Zoll eingebaut.
           03.11.95  PRNLIB:  Kommando @Txx; fr Drucker-Tabulatorsprung eingebaut.
           04.11.95  DFLIB:   Rekursionsschutz bei prjMalloc eingebaut
                     DIRLIB:  textdir_ Mindestspeicherreserve (15K) bei direktory-puffer
                              eingebaut
                     PRGLOAD: Kommando CopyExternData fr Fremdkatalogabgleich eingebaut.
           06.11.95  DFLOADZW:ed_readrec( destDf, 1) von destDf vor FNC_LOADLIST_CPYINIT und FNC_LOADLISTMINIT gelegt
                     FFRECH:
                     FFVERK:  Reparatur -> Lieferschein/Rechnung Kundendaten nachgeladen
                              (z.B. Vertreter/ZahlBed) und abweichende Rechnungsadresse
                              bei Reparatur bercksichtigt.
                     DFDB:    in CopyExternData zus„tzliches Aktivierungsprogramm fr
                              Felddefinition hinterlegt (.$21 und .$22)
                     DFIMP:   Vt-Variablen zur Zuweisung eingebaut.
                              Textzuweisung (z.B. [C33:=""]) eingebaut.
                              Systemprogramm ImportName.$31 („ndern) und .$32 (neu) eingaut
                     PRGLOAD: Bei Kommando SetItem Rechenfunktion ausgelӇt.
                              Kommando ExecuteItemFunction eingebaut.
           07.11.95  FFSTDVK: bei Vertreterermittlung not found keine Vtr-bernahme
           09.11.95  FFSTDVK: Preisfindung bei Externen Artikeln aktiviert
           13.11.95  PRJMAIN.H:Bei __386__ Minmem = 30kB, und PrjMalloc Off bei Mem >512kB
                     FFART:   Preismodus 'H' fr EK+% eingebaut.
           16.11.95  FFFIBU2: VH/VS Ausweisung bei Buchungserfassung, Solkonto ber Bezeichnung korrigiert
                              Meldung Belegdatum fehlt korrigiert.
                     DFDB:    Nur noch Dateien mit ??????.MSU werden angezeigt
           17.11.95  FFERLBU: Bei Splittung mit Kostenstelle in Posisition falsche Kostenstelle ausgewiesen
                     DF.H     In DFDef Daten dfNr aufgenommen, damit die Deskeinstellung bei Update-Verschiebung
                              nicht bernommen werden.
           17.11.95  BRECLIB: Bei Delete projekt_func aufrufen mit PRJFNC_BTRIEVE_OFFSET.
                              (fr Busy-Meldung bei "File in Use" -85
                     FFSTDVK: mergeTelNum() um option "Zahl mit '-' oder '/'" fr Nummernersatz erweitert.
                              (auch fr PRNLIB Kommando Vt?:n)
           20.11.95  FFLGBUCH:Nachladen von Kostenstelle und Lager eingebaut
                     FFEINK:  standard_chooseinkpos() fr Artikelnachladen umgebaut
                     FFARTBCH:Bei Mindestlagerbestandbestellung ber 'M' nur Eintrag bei bestellte
                              Menge < MindBestellMenge.
           22.11.95  FFSTDVK: mergeTelNum() option "Zahl mit '-' oder '/'" korrigiert.
           23.11.95  FFVERK:  offpos_umsatzbuchen() Kompensation der Bezahlung von Verzugskosten beim buchen
                              beim Kunde.
                     FFSTDVK: standardcalc_verk() VersandVerpackung in EK mit Aufsummiert
                     FFRECH:  Feld 23 (Gutschirft) in Rechnung Funktion bei INS abgeschaltet (Feld obsolete)
                     FFOFFPOS:Vertreterprovisionsfelder erweitert
                     PRJPRM:  read_globalinfo() nwnr mit 0xC000+infonum fr Hilfen initialisiert
                     FFPERS:  stundenuebertragungBDE() typ 34 (Pause-Teilgehen) wurde bei
                              Stundenbertragung nicht mitsummiert.
  V2.1-04  24.11.95  CALCMAI: get_maival() bei Textfeld erstes ',' -> '.'. Dadurch korrekte
                              Zahlenumwandlung bei Nachkommaziffern mit ','
                     DFED2LIB:ed_chgrec() "Massen„nderung" um Programmparameter fr Systemprogramm erweitert.
                     PRGLOAD: Kommando Change() um Programmparameter fr Systemprogramm erweitert.
                     FFRECH:  Rechnung-RG-Kalkulation mit bercksichtigung von Versand/Verpackungskosten
                     FFVERT:  Vertreterabrechnung um neue Modis erweitert
                     WINLIB:  convert_mai_input() um maiIndex erweitert
                     PRGLOAD: Kommando SetItem() um maiIndex erweitert.
           27.11.95  PRJPRM:  info() im Er”ffnungsfenster dir Zeilen "programmiert von" entfernt
                              und Fenster neu gestaltet.
                     PRGLOAD: Bei ExecutePrintText -> Input mit ESC keine Pgrogrammfehlermeldung
                              Kommando End(); eingebaut.
                              Kommando Change() um GotoLabel erweitert.
                              Label's mit "Name:" eingebaut.
                              GotoLabel in class IFWPrg eingebaut.
                              Kommando Goto() eingebaut
           28.11.95  DFED3LIB:ed_chgrec() auch mit Programm und ohne gesetzte Ver„nderung auf ein
                              Feld durchfhrbar.
                     FFART:   Artikel ohne Nummer nicht Speicherbar
                     STDPRJ_: Can't open itemgadget -12 durch Fehlenden Parametersatz
                              bei den User-defdata der Karteien beseitigt.
                     PRGLOAD: Kommando Search() um Programmangaben fr externens Vergleichsprogramm
                              erweitert. Kommando End() um Rckgabeparameter erweitert.
                     DFED2LIB:select_records() um Suchprogrammparameter erweitert.
           29.11.95  DFMULTI: Funktion printListe() eingebaut.
                     DFEXTFNC:Druckoption [D32,Vt,,M47,45,73] mit M als Multi-Dateoption (wie
                              A fr Archiv) eingebaut. Dadurch Ausdruck gemischt ber Liste m”glich.
                     STDPRJ_: in loaddatafile() globale berwachung ob PDF_NOARCHIV gesetzt ist ->
                              Zugriff auf Datenbank aus ARCHIV mit PDF_NOARCHIV -> Datenbank aus
                              BASISDAT wird verwendet.
                              Das Flag PDF_NOARCHIV ist bei den Stammdaten (Kunden/Artikel/Lieferant ... )
                              gesetzt.
           30.11.95 ûPRGLOAD: Fehler bei SearchAdd, SearchSub durch SearchBase - Programmangaben beseitigt.
           01.12.95 ûFFVERT:  Bei Prov. Rohgewinn mit Abzug, Steuer aus Abzug Rausgerechnet.
           04.12.95 ûFFSTDVK: mergeTelNum() bei keiner Durchwahl Originalnummer lassen (kein abs„gen ab '-').
           
           06.12.95 ûFFSTDVK:
                    ûFFVERK:
                    ûFFRECH:  Bei šbernahme eines Artikel (FNC_CHOOSE) Meldung "EK kleiner VK" entfernt
                    ûPRNLIB:  Kommando .PARAID fr letzte gelesene PARA-Maske eingebaut.
                    ûFFARTBCH:Korrektur bei Auftrag zu Abruf verbuchen: Artikel aus Abruf wurde
                              vor laden des Abrufes zugewiesen!
                    ûFFDISPO: Autorechnung, Kundensplittmodus wurde von Einzelrechnung ('Z' oder 'U')
                              in einem Abrechnungslauf nicht zurckgesetzte (auf ''->Sammelrechnung)
           08.12.95 ûFFLAGBCH:artikel_lager_direktbuchung_() bei Verbuchung ber Artikelnummer
                              nicht Code 32 sondern Text "ArtNr", Gegenbuchungsfehler ber Code 32 beseitigt.
                              (Abrufauftr„ge „ndern -> Fehlbuchung)
                    ûFFARTBCH:lagerBuchenKeyData::setKeyDataByMai() fr artikel_lager_direktbuchung_() eingebaut.
                    ûFFWEG:   Mehrere WEG -> Verbindlichkeit, Summe von netto Umsatzsteuerfrei korrigiert.
           13.12.95  FFFIBUDV:
                     FFDATEV:
                     FFEINK:  Belegbertragung Einkauf->Buchungsjournal erweitert. Es kann jetzt
                              ein alternativer Buchungstext in der Verbindlichkeit angegeben werden,
                              alternative Buchungskonten in der Wareneingangsposition bergeben werden.
                              Ein abweichender Steuerschlssel zu einem Buchungskonto wird automatisch
                              ber die Steuerklassen frei, A und B fr DATEV (01,09 und 08) generiert.
                    ûPrfungen: Auslandswareneingang mit Zoll, Versand, Rabatt, auch mit 2WEG->Verb.
                                Verbindlichkeit mit Buchungskonto und Buchungstext mit $
                                Warenrcksendung -> Gutschrift Innland mit Rabatt und Versand.
                                Verschiedene Buchungskonten mit abweichenden Steuerschlssel und
                                Abgleich von Standardsteuerschlssel zu Standarderl”skonten aus den
                                Parametereinstellungen.
                                Abweichende Buchungstexte aus Verbindlichkeit und bei alternativen
                                Buchungskonten in den Wareneingangspositionen mit Textbernahme.
                    ûFFVERT:  Modus Rohgewinn und Rechnugsbetrag mit Abzug um Bercksichtigung des
                              Rechnungsdatums im Abrechnungszeitraum erweitert.
           15.12.95 ûCALCMAI: cpy_maibuff() mit maxLen ausgerstet wegen instmask StringArray -Vergr”áerung
                              mit Schrottdaten im vergrӇerten Datenbereich.
           18.12.95 ûDFOBJ:   callProgramFile() mit Alternativaufruf aus SYSPRG ausgestattet
                    ûFAKTMAIN:Menuepunkte 0xB000-0xBFFF rufen ein Systemprogramm MENUbxxx.$00 auf.
                    ûPOPUPMNU:searchAndExecutePrg() um SYSPRG erweitert.
                    ûFAKTEDIT:
                    ûDFPRN:   Belegausgabe-Druckroutine berarbeitet und in DFPRN bertragen.
                    ûDFEDLIB: CTRL-F4 Belegausgabe mit Ausdruck aktiviert.
                    ûPRGLOAD: Kommando PrintFileID() eingebaut.
                    ûDFPRN:   CTRL-F4 Belegausgabe mit Id versehen.
           19.12.95 ûPRGLOAD: Bei Kommando Goto leeren Goto Indirekt bercksichtigt (Endlosschleife)
           20.12.95 ûFFSTDVK: Bei Vk-Ladeeinheitenumrechnung F1 Feld-Fehler Code 2 mai==NULL beseitigt.
                     FFVERK:  Lieferschein-Positionsbuchen fr Betonwerk-Modul mit Silo (Kundevertr„ge) -buchen
                              erweitert. Schalter DF_SILO statt DF_WARTUNG/FAKT_BTON eingefhrt
                              (Gruppe DF_MIETE/DF_WARTUNG/DF_SILO -> Datenbank 95)
                    ûPrfung: Nur fr FAKT_BETON vollst„ndig.
                              IFW-Versionen mit Kundenvert„ge (auch COPYSHOP) noch testen.
           21.12.95 ûFFIBU2:  IFW-Fibu mit alternativem Steuerschlssel und Text2 versehen.
                    ûWINLIB:  Minuswerte Rot nur bei kauf.Zahlenvormat OFF
                    ûFFIBU2:  L”schen von bebuchten Konten gesperrt.
                              EuroID in Buchung als verstekctes Feld eingebaut.
           05.01.96 ûDFDB:    copyExtData() Artikelnummer bei šbertragung aus externer Kartei nach
                              System F10-Programm aus Artikelmaske gelesen, fr manipulation der Artnummer mit F10-Prg
                     PRGLOAD: fakt.frc Eintr„ge werden bei ART??? eintr„gen mit Artikel_func ausgestattet (wie ExtDat)
           06.01.96 ûFFART:   Artikel ohne Nummer speichern nur auf Artikeldatenbank beschr„nkt (nicht auf Externer ART???-
                              karteien).
                    ûPRNLIB2: Option [mParent] fr Zugriff auf Quellmaske ber minorHandle
           07.01.96 ûFFPREIS: Funktion fr Preisgruppenprfung und -berspielung fr Externe Karteien eingebaut
                    ûDFIMP:   Zuweisung ber Cxx:=Vt Variablen statt ber  cpy_maibuff() ber
                              convert_mai_input().
           08.01.96 ûFFVERK:  Auftragsbestandsberechnung mit AufPos-Maske ohne C11 (nur C6) korrigiert
           12.01.96  FIBU...: FIBU/DATEV/ZAHLUNGSVERKEHR-Switch neu organisiert
                     Prfung:ûNormal/Zahlungsverkehr/Datev compiliert und geprft
                             ûšbertrage von Bezahltbetr„ge bei Barrechnung und Barkassenabschluá
                             ûŽndern von Belegen
                             ûMenuepunkte je nach aktiven Schalten auf funktion getestet
                    ûFFUMSATZ:Barkasse-Tageabschluá OP-Bearbeitung um FIBU-Prfung erweitert
           16.01.96 ûNETLIB:
                    ûDFEXTFNC:
                    ûSTDMSK:  Druckqueues aus verschiedenen Servern ansprechbar
                    ûINT31:   Fr 32-Bit DOS-Int Gate um Rckgabe von Segment-Returnwerte erweitert.
           18.01.96  RECHTAW: Menuepunkt Textverabeitung anmelden abschaltbar
           22.01.96  FFAPOHY: Artikelhyperverwaltung nur mit Artikelstamm eingebaut
                    ûFFREPARA:Reparaturmenge eingebaut
           23.01.96 ûFFEINK:  QM-Vertragsmodule fr Anfrage und Bestellung eingebaut
                              L”schen der QM-Daten beim Kopieren der Belege
                    ûFFVERK:  QM-Vertragsmodule fr Angebot und Auftrag um Handlungsrahmen erweitert
                              L”schen der QM-Daten beim Kopieren der Belege
                    ûFAKTMAIN:Reset_btrieve beim Programm verlassen (am Ende von main()) eingebaut.
           25.01.96 ûFFARTBCH:BUCHEN_ERLEDIGTBUCHEN fr Auftrag/Bestellung erledigen in Verbindung
                              mit Abrufen.
                    ûFAKTEDIT:Bei edit_datasingle() beim neu-Speichern Nummer auf Maske eingeblendet
                              (z.B. Verbindlichkeit Neu anlegen)
                    ûFFPROD2: Massen-Istwerteintragung in Produktionen bei Soll==0 unterbunden
           26.01.96  FFARTBCH:
                     FFART:   Buchungssystem der Abrufbestellungen korrigiert/erweitert
                              (Wareneingangsterminverschiebung in AbrufBestellung gebucht).
                     FFEINK:
                     FFWEG:   Abrufbestellungen aktiviert.
                     FFBDE2:  Fehler bei Programmstep nicht vorhanden wird ausgegeben
                              (bisher Sprung auf Step 0 vom alten Hard-Programm)
           27.01.96 ûPRNLIB:  Option Vx:dm (Minusbestand in dispointervall) und
                              Vd:i (Datum von Dispoindex) eingebaut.
                    ûFFPROD2: Produktionprfung mit Endtermin eingebaut.
           31.01.96 ûPRGLOAD: Bei readPara von Zahlen NULL-Ptr abbruch nur bei Zeilenende.
                              Bei angabe von NICHTS (z.B. ,,,) keine Parametervorgabe„nderung,
                              aber weiterlauf des Parsers
                    ûFFBDE:   Bei chkPsPruefen() auch laden der Tageszeit
           01.02.96 ûFFWEG:   von Wareneingang Rechnung wareneingang_rechnung() uninitialisierte
                              short-Variable: Bei Return auf einzelnem Wareneingang ggf. keine Reaktion
                              je nach Rechner und IFW-Prg.
           02.02.96 û386:     Libaryroutine strlen() wegen strlen( NULL) durch eigene Routine ersetzt.
           06.02.96 ûFFPROD2: Produktion splitten eingebaut.
                    ûFFPROD:  bauzettelposition_aendern() kriterium fr direktbuchen verfeinert
                              ('M' und 'A'-Positionen k”nnen nun auch direkt verbucht werden)
           07.02.96 ûDFIMP:   Bei F10-Programm im Import wird bei Returnwert !=0 nicht gespeichert.
           08.02.96 ûFFEINK:  Verbindlichkeiten mit ! werden beim Ver„ndern gemeldet.
                    ûDFED2LIB:In ed_auswahl_data() wird bei Shift/Alt-F1 versucht auf ein Feld
                              mit dem Namen @Feldname des Ursprungsfeldes zuzugreifen (fr alternative
                              Suchpfade in den externen Karteien, insbesonderst fr Artikelkataloge).
           12.02.96 ûDFEDLIB: ed_openDfOpen() auch wenn schon offen, wird trotzdem der Filterwert gesetz
           13.02.96 ûFFFIBUDV:Datev-Parametermaske um Steuerschlsselfelder erweitert.
                              Ausgabe der Steuerschlssel abh„ngig von Einkauf/Verkauf ber Datev-Parameter.
                              Beleg2Journal::setSteuerSchluessel() Prfung der Automatikkonten auf korrekten
                              Steuerbuchungsschlssel.
                    ûFFFIBU2: Abweichender Steuerschlssel zu gekennzeichneten Automatiksteuerkonten werden
                              gesperrt.
                    ûFFFIBUDV:Pfennigdifferenzen werden zuerst auf Steuerkonten umgelegt, falls nicht vorhanden
                              auf Steuerfreikonten.
           15.02.96 ûFFFIBUDV:Pfennigtoleranz auf 30 Pfennig eingestellt
                    ûPRGLOAD: Bei Kommando End() addPtr entfernt (es muáte ein ' ' zwischen ( und" stehen End("[V1<]"); ging nicht!).
           21.02.96 ûFFVERK:  In AufPos_func bei Rechung/Lieferschein Reversbuchung fehler bei Auftragsbestandsmenge fr
                              Auftragsbestandsstatistikmodul beseitigt.
                    ûPRNLIB:
                    ûDFPRN:   Hunk SETUP eingebaut, fr einmalige Inputabfragen (z.B. FIBU Kontenbl„tter)
                              (Hunk BETRAG zu Hunk SETUP umgewandelt)
           23.02.06 ûFFEINK:  Lieferantenkennzeichen '!' und 'I' fr gesperrt und Info eingebaut
                              Artikelkennzeichen '-' fr Artikel fr Einkauf gesperrt eingebaut.
                    ûSTDPRJ_: Bei Userdefinierter Auswahl (ALt-F10) H”henanpassung des Fensters
                              eingeschaltet.
                    ûCONLIB:  Fr clrbox bei open_xwindow Zeichen ' ' anstatt '\0' verwendet (unter Windows bei
                              diversen Graphikkarten wurden symbole im Leerraum der Fenster angezeigt)
                    ûFFSTDVK: Optional und Alternativpositionen sind ohne Artikelnummer speicherbar.
                    ûFFPROD2: Auftrag splitten, bei Status 'E' oder 'L' Meldung eingebaut.
                     FFPROD:  Arbeitsg„nge mit 'F' wird nicht mehr Ist gleich Soll gesetzt.
                    ûFFART:   Buchung in der ArtStatistik bei Abschluá der Lagerproduktion auf den Prod.termin
                              (falls vorhanden).
  V2.1-05  27.02.96 ûPRNLIB2: bei load_formular() dvl.log fr interne includete Vorlage wird mitgeschrieben.
                    ûPRNLIB:  Speicherprfung fr lokal allokierte Variable buff,out und str eingebaut.
                              dvlgetline() prfung auf Klammer zu ']' eingebaut (Meldung Klammer fehlt).
                    ûFFVERK:  Auftrag_func_AuftragBuchen() bei Kunden AE-Buchen DFF_CHILDAUTOCLOSE wegen TTS eingebaut.
                              (Kundenstamm blieb offen bei TTS=1 und Auftrag schreiben)
                    ûFAKTPRJ: Alt 5-9 Dateien ber Filename in PrjDataFile gesucht. Ansonsten aus ExtDat genommen.
                    ûSTDPRJ_:
                    ûDFPDF:   H”henanpassung fr Userdefinierter Auswahl (ALt-F10) nach DFPRF
                              verlagert, wegen Seiteneffekt auf ExtDat Karteien (DynPDF)
           04.03.96 ûDFEXTFNC:Bei Ausdrucken mit [D...] mit Startwert, Problem mit erstem Eintrag durch vorinitialisierten
                              Feldinhalte (durch df_getfirst()) in folgenden indexfeldern mit clear_searchmai() beseitigt
                              (es wurde z.T. erst ab dem zweiten Eintrag ausgegeben (psstat01.dvl)).
           06.03.96  PRNLIB:  Flieátexte mit Parameter 'o' fr Offset ausgestattet.
           14.03.96  FFVEREIN:Vertragabrechnung fr Vereine aktiviert.
                     FFFIBU2: Erste Kostenstellenbuchung (ohne Splittung) eingebaut
  V2.1-06  01.04.96  ....    :
                     FN_STEP.H: Umbau der Routinen strgg(), input_mask_item(), input_mask(), edit_nw()
                                fr Windowsbetrieb
           10.04.96 ûPRNLIBX.H:StrVar von 60 auf 90 Zeichen erh”ht
           11.04.96 ûFFERLBU: Bei FAKT_FIBUKOSTST Erl”skonten im Verkauf aus Artstamm oder WGr bercksichtigt.
           12.04.96  FFFIBU2: Kostenstellenbertragung bei Buchungsstapel einbuchen
           17.04.96  FAKTPRJ: Kostenstellensplittungsdatei angemeldet
                     FFFIBU2: Personenkontenbuchung Betrag um Verzugskosten
                              (psKtoBetrag = Betrag+Skonto+Kulanz oder Gesamt-Verzug) veringert.
                              -> Buchunge auf dem Personenkonto um Skonto/Kulanz/Verzugskosten falsch!!!
                    ûDFEDLIB: ed_openDfOpen() Listfenter immer schlieáen: Raparatur Positionen bearbeiten,
                              Fehler "permission denied" bei wiederholten Betreten mit Client-Btrieve
                              beseitigt (durch ExtWindow Positions-DfObj mehrfach vorhanden).
           18.04.96 ûFFVERK:  Reparatur -> Lieferschein, Vorname doppelt beseitigt.
                    ûFFRECH:  Reparatur -> Liefersch/Rechnung, Vertragsnummer wird bei Positionen bernommen.
                    ûFFFIBU2: Kennzeichen V in Buchungjournal, bei Staple->Fibu
                     PRNLIB:  Kommando @- und @+ fr Ausgabeecho OFF und ON eingebaut
                              (wirkt Hunk-spezifisch).
           19.04.96 ûFFVEREIN:Aufnahmegebhren und Rechnungsgebhren werden
                              mitverwaltet.
           23.04.96 ûFFIBU2:  Stapel->FIBU Bei Ausgangsrechnungen Kennzeichen 'R' nicht 'A'!
                              Menpunkt FIBU->Stapel fr DATEV
                    ûINPLIB:  Taschenrechner kehrt wieder zur Maske zurck (return -1 auf 2 ge„ndert?)
           24.04.96 ûWINLIB:  Bei Meldung "Material nur in 'J'-Liste" aus einer Belegposition selber Effekt wie
                              bei Taschenrechner (Returnwert -1) -> in input_mask Tastencode -1 ohne abgefangen.
                    ûFFBETON: Neue Features fr R&F (Balbach) eingebaut:
                              abweichende Materialistenzusammensetzung aus Lieferscheinstapel,
                              diverse Lieferarten (Auáer A unf F noch S und Z)
                    ûFFSTDVK: Preisgruppe und Frachterl”á in Baustelle eingebaut.
                    ûFFIBU2:  FIBU->Stapel verschieden Optionen aktiviert
                    ûDFEXTFNC:
                    ûDFIMP:   setUpDynPdfOnMask() (fr ALT-F10 User-Auswahl auf Feldern)
                              bei Druckbefehlen [L [N [D.
           25.04.96  FFFIBU2: Bei OP/Verb -> Stapel Text Steuermodus nach Nummer mit / angestellt
                              (wegen Sortierung nach Text bei Suche aller Buchungen zu einer Nummer)
           26.04.96  FFPERS:  Arbeiten am Urlaubstag erlaubt (A+U ? -> u).
           30.04.96 ûFFFIRUMS:Bei Programmstart ohne Statistikdatum wird auch die Jahreszahl (C64) neu eingetragen.
                    ûFAKTEDIT:TTS auch bei Beleg l”schen edit_datazwsp_loeschen() aktiviert.
                     DFPRN:   Bei dfprint_() und PRINT_AKTREC bei Belegausdruck ber mehrere Formulare, falscher
                              Ausdruck falls im Hintergrund Eint„ge selektiert und mit TAB auf nur selektierte umgeschaltet
                              ist! Fehler beseitigt.
                    ûFAKTEDIT:Meldung "Belegnummer %s ungleich %s beim Materialbuchen! (#%d)" bei Beleg speicher und im Hintergrund
                              selektierte mit TAB (durch Druckroutine). Zusatzsicherung eingebaut, und durch obrige Žnderung in
                              DFPRN beseitigt.
           01.05.96 ûFFSTATIS:Artikelmengenumsatzmaske angepasst.
           03.05.96 ûPRJPRM:  Feld "Rev" in Config.Rec fr Revisionsnummer der Maske eingebaut, Rev beim Speichern wird gesetzt.
           07.05.96  FFSTATIS:Artikelmengenumsatz, PE und Alternativ-/Optionalpositionen bercksichtigt.
                    ûPRJPRM:  6k Stackbelastung bei read_globalinfo() entfernt (vom 03.05.96)
                    ûSTDPRJ_: get_ndf() um revNum-Parameter erweitert
  V2.1-07  09.05.96  FAKTxxx: Mehrwertssteuer mit alt und Neu-Statz eingefhrt.
                     FFFIBU2: Steuertabellen um zus„tzliche Alt-Konten-Angabe erweitert (bisher nur Steuersatz)
                     FFFIxxx: System fr IG-Warenverkehr umgestellt: Ausland l”scht nicht mehr das MWST-Kennzeichen
                              sondern die Summe MWST wird in der Hauptmaske nicht berechnet und ausgewiesen
           10.05.96  FFFIBU2: Fehlangabe in FIBU!!!: Bei Soll-Kontosplittung (Wareneongang VS oder US) ist Gegenkotoangabe
                              in Nebenbuchungen bei der Steueranteilsbuchung falsch! Alle Konten werden korrekt verbucht,
                              nur beim Druck von Kontoblatt des Steuerkontos falsche Gegenkontoangabe!
                    ûFAKTMAIN:Beim IFW-Start wird auf TTS-System abgeprft.
                    ûFFFIBU2: Buchungsschlssel EU und ES fr EG-Buchungen eingefhrt.
                              Wareneingangsbezahlung, Skonto-Steuer EU-Buchung automatisch bei igUStKto in Vorsteuertabelle
                              FEHLER BEI L™SCHEN VON BUCHUNGEN BEI ŽNDERUNG IN PARATABELLE ->
                              GEŽNDERTE NEBENBUCHUNGSLISTE: NEUE ANZAHL ZU LANG -> ERROR -4
                                                            NEUE ANZAHL ZU KURZ -> KEINE RšCKBUCHUNG DER ZU VIELEN BUCHUNGEN,
                                                                                   DURCH AKTIONSTYP -8 ABER L™SCHUNG DERSELBEN!!!!
                                                                                    -> INKONSISTENTER KONTOSTAND ZU BUCHUNGEN!!!!
                    ûFFVERK:
                    ûFFRECH:
                    ûFFARTBCH:Bei Ausgangsbelege Auftrag->Gutschrift Alternativ-/Optionalpositionsprfung eingebaut.
                    ûCALCMAI: cpy_mai() bei Feld mit '000' L”schen durch cpy unterbunden.
           13.05.96 ûFFFIBU2: Bei Buchung kopieren, keine Nebenbuchungskopie und keine Buchungsvorgaben.
                    ûTERMINPL:Feiertage aus Programmeinstellungen ausgelesen und eingeblendet.
                     PRNLIB:  Bei Kommando @-/+ Zeilenumbruch mit abgeschaltet.
                    ûDFEXTFNC:Komando [.xxCyy] um 96Cxx fr Verbindungslistenabruf erweitert.
                    ûPRNLIB3: Erweiterung [Vdwochentag] fr Ausgabe des Wochentags in Klartext.
                    ûFFFIBU2: Bei Buchung kopieren, Feld mit Buchungsnummer sofort gel”scht.
           14.05.96 ûPRGLOAD: Kommando EditFile um Modus 8 fr workmode WM_ONLINEBUCHEN erweitert
                    ûFFPROD:  Online-Buchen fr Prodpositionen eingebaut.
                    ûDFEDLIB: Bei Speichern von Liste mit Filter und Žnderung des Filterfelds
                              (->Eintrag f„llt aus šbersichtsliste raus) Fehler 230 in Liste beseitigt.
                              Ctrl-F7 im Archiv -> Meldung "Sie befinden sich bereits im Archiv".
                    ûDFPRN:   Kennzeichen schon gesetzt, 'š' -> page fault beseitigt (durch
                              šbergehen uninitialisierte Variable 'bodyhunk' und dann
                              DvlHunk[bodyhunk] -> page fault.
                    ûDFxxx:   dfCntGadGetRefresh() fr Anzeige der Selektiertenanzahl durch GadGet am unteren Bildschirmrand.
           16.05.96 ûFFFIBU2: Gesplittete auf FFFIBU21
                    ûFFFIBU2: Saldokompenstation fr OP/Verb-F1-Abruf beim Žndern einer Buchung
           18.05.96 ûFFFIBU2: Beim Bezahlen wird bei Steuerschl. '4' EuroID nachgeladen
                    ûFFFIBU2: Beim Bezahlen von OP mit EG und Euro-ID Nettosumme auf StrKl 4
                    ûFFFIBU21:Bei Gesamtsumme wurde Periode 0 doppelt berechnet.
           28.05.96  FFBDE..: Neue Kommandos fr Z„hler,Eing„nge und serielle Schnittstelle
                              eingebaut.
           29.05.96 ûFFSTDVK: Fakturing-OP/Kreditlimitverwaltung eingebaut
           31.05.96  FFBETON:
                     FFBDE..: BDE-System mit Magnetkarte und Datenerfassung fr Tankanlage einsatzbereit.
                    ûFFBDE2:  CommPort::ReceiveStr() Timeout (1s) nach jedem Zeichen neu gesetzt, nicht
                              fr den gesamt-String bis Break-Zeichen!
                    ûFFARTPR: load_artikel2position() bei 'K'-Artikeln Positionsliste in Ausgangsbelegposition
                              explizit gel”scht. (Wurde ert 'J'-Artikle, dann 'K'-Artikel abgerufen, war noch Liste
                              vom 'J'-Artikel in der Position enthalten!).
           03.06.96  FFPROD:  Bei Auftrag->Lief/Rech Seriennummer in Name2-Feld bei 'J'-Artikel ber Prod.
                              (ohne SN Extrafeld) nur wenn etwas in der Produktion in das Seriennummernfeld
                              eingetragen ist.
           04.06.96 ûFAKTEDIT:edit_datazwsp_loeschen() wenn alter Beleg Stornokennzeichen 'S' hat, bei Rckbuchung
                              BUCHEN_STORNO-Falg gesetzt. Problem beseitigt: Von Auftrag Rechnung, Rechnung Storniert,
                              Rechnung wieder ge”ffnet, Summe Rechnung in Auftrag falsch.
           05.06.96  CONLIB:  harderror() Meldung "Disk error on drive %c " nur bei Drive < 'F' eingebaut.
                     DFIMP:   Import um Kommando [t, [e, @X und [D erweitert. Vergleiche [Vt:! und [Vt;S aktiviert (zur
                              Zeit die einzig verfgbaren!). Mit [D ist Unterliste ber HUNK Alt importierbar. Die [D Schleife
                              wird mit @X verlassen.
                     FAKTMAIN:
                     FAKTEDIT:Belegimport eingebaut.
                    ûDFEXTFNC:@.96Cxx bei Singelversion mit Fehlermeldung (da StationRecPos==0). Fehlermeldung abgefangen.
           07.06.96 ûFFFIBU2: Bei Auzugsnummer und Datum im Buchungsjournal kann + und - bet„tigt werden.
                    ûFFFIBU2: Kontenkennzeichen 'Z' und '>' fr
                              'Z':DATEV-Buchungsschlssel immer angeben bei Belege->Buchungsstapel
                              '>':Kontoschlsseltransformierung bei Belege->Buchungsstapel
           10.06.96 ûFFFIBU21:BuchJnDfo::setUpMaskFromStapel() Stapel->FIBU, EG-Schlssel bercksichtigt (ES statt VS)
                    ûFFDATEV: Bei DATEV-Disketten lesen mit EuroID Lesefehler "Unbekannte Kennung ' ' in A:\ER001"
                              in Routine DatevERData::read() beseitigt.
                    ûFFERLBU: ErlKto::KtoPosAdd() Gesamtrabattumlage auf Einzelpositionen im Wareneingang und in der
                              Warenrcksendung bercksichtigt.
           11.06.96 ûFFFIBU2: Schalter fr "negative Betr„ge positiv buchen" eingebaut.
                     PRNLIB4: Meldung "Spaltendruck nur mit Hunk HAUPT m”glich" eingebaut
                     DFEDLIB: Start-fileOffset bei dfimport auf 0 gesetzt.
                     FFSTDVK: Bruttorechnungen eingebaut.
                              Rabattberechnung aus netto- oder brutto-Feld
                              kleiner 0.01% unterdrckt.
           12.06.96  FFFIBU2: Generalumkehrbuchung eingebaut.
                     FFOFFPOS:
                     FFEINK:  Funktioncode MAI_CALCFIBU_BUCHJNOPGU und MAI_CALCFIBU_BUCHJNVERBGU fr
                              Generalumkehr eingebaut.
           13.06.96 ûFAKTEDIT:Bei Belegpositionen anschauen wurde Belegimport f„lschlicherweise aufgerufen.
                    ûFFFIBUDV:Beleg -> Buchungsjournal, Zielperiode angebbar.
                    ûFFWEG:   Beim Kopieren von Wareneing„nge Feld Verbindlichkeit gel”scht.
           17.06.96 ûFFBARKAS:Skonto/Rabattangabe in Barkasse m”glich.
           19.06.96 ûCALCMAI: getExponent() eigefhrt, und Rundung von Flieskommazahlen ohne
                              Rundung auf Maximalmantissenl„nge-exponent-1
                    ûWINLIB:  sprint_maiext_() Double.Ausgabe mit Maximalstellen auf
                              14-exponent gerundet (z.B. Taschenrechner 6619,35+1116,51).
                     FFBDE:   Lesekommando fr Magentkarte von RX1X00 auf rX1X00 umgestellt.
           20.06.96  FFBDE:   GetCounter() Kommando von Z„hler 0 auf Vorteiler 1/2 umgestellt.
           21.06.96 ûFFBDE:   GetCounter() Kommando um Teilungsrechung Z„hler*1000/-Data erweitert.
                    ûFFART:   Artstamm umm Bruttopreis Feld "BVK" erweitert.
                    ûFFSTDVK: Bruttorechnung mit Bruttofelder "BVK" und "BGesPr" erweitert.
                    ûFAKTSUB: Systemschalter PRJCNF_BRUTTOVK eingebaut.
                    ûFFVERK:  OffPos_func Rckrechnung von Feld Brutto angeschaltet.
                              OffPos_func Umrechnung von IFW V1.0 -> IFW V2.0 abgeschaltet
           24.06.96 ûFAKTEDIT:edit_data um Option WM_FLGAUTOSPEICHERN_CHANGE fr Autospeichern erweitert.
                              belegImport() um Option "Belege „ndern" erweitert.
                    ûFAKTSUB: Systemschalter PRJCNF_FORCEEXTLAGBUCHEN eingebaut.
  V2.1-08  25.06.96  LSMASK:  FileMask size 7000 -> 8000 Byte
                     FFEINK:  QM-Module fr Wareingangsfreigabe eingebaut
           26.06.96  FFFIBU2: Verbind->Stapel bei 'e' und 'a' Steuerschlssel uaf 4-6 korrigiert.
                     FFFIBU2: Periodenabschluá eingebaut
           27.06.96  FFARTBCH:
                     FAKTEDIT:
                     FAKTPROD2:
                    ûFFFIBU2: closeAllCloseFailedDfRec(); nach allen e_end_trans() eingebaut.
                              (Problem mit TTS von Auftrag Rechnung -> 4 offene Datenb„nke (nur Client-Server)
                              386: MinorHandle gehen aus
           28.06.96 ûTURCBTRV:Bei Open mit Lock "BTR:"-Eintrag in User-Logdatei
                    ûFAKTMAIN:edit_datazwsp_loeschen() zuerst Material zurck, dann Umsatzbuchen,
                              beides mit TTS-Aufgesplittet, damit auch Client-Btrieve mit TTS geht.
                              (ansonsten Meldung "Btrieveerror 'operation not allowed'.)
                    ûFFBDE2:  biostime()-šberlauf ber Mitternacht bei Timer und MagnetCard bercksichtigt.
                              (if( biostime()<StepStartTime) -> StepStartTime=biostime();)
           01.07.96 ûFFFIBU2: Nebenbuchungen mit Betrag = 0.0 unterdrckt.
                              Steuerrechnungsart 'n' oder 'b' angebbar (z.B. Reisekosten/Km-Geld)
           02.07.96 ûFFFIBU2: Nebenbuchungen von SHOWLIST auf LIST umgestellt (wegen Archivieren mit Nebenbuchunge),
                              FNC_SAVELISTCOPY fr nicht kopieren bei Buchung kopieren eingebaut.
                              Steuerschluessel X und Y und šberschussrechnerschalter aktiviert.
                    ûDFEDLIB2:ed_listdata() bei aktmai->getType()==MAI_TYPE_LIST editieren nur mit DFF_CHOOSEEDIT-Flag.
                              (wegen FIBU-Nebenbuchungen editieren, Achtung im FaktPrj mssen alle F1-Listen
                              wie z.B. ArtLst ab sofort mit dem DFF_CHOOSEEDIT-Flag versehen werden!)
           04.07.96  FFFIBU2: Prfen von Buchungen auch beim auch beim L”schen.
                    ûFAKTPRJ: RPMLst mit DFF_CHOOSEEDIT-Flag versehen.
           05.07.96  DFEDLIB2:Umbau der Routinen ed_getdata() und ed_auswahl_data()
                              auf FN_STEP fr Windowsbetrieb.
           11.07.96 ûFAKTPRJ: Menue und Filerechtedatenbank mit DFF_CHOOSEEDIT-Flag versehen.
           15.07.96  FFFIBU21:
                     FFFIBUDV:In Konten Kennzeichen Y fr "DATEV-Steuerschlssel bei gleichem Steuersatz nicht angeben"
                              eingebaut (wie A nur šbersteuern erlaubt).
           16.07.96 ûFFWARTVE:Berechnung fr n„chste Abrechnung korrigiert (>12 Monate falsch)
           18.07.96 ûFFARTBCH:Keine externe Lagerbuchung bei Lager BW (Beistellware)
                    ûFFARTPR: auto. Ersatzartikel eingebaut.
                    ûSTDPRJ2: Userserrequester fr Ersatzartikeleinstellungen eingebaut.
           20.07.96 ûPRGLOAD2: readPara nach Trennzeichen noch Leerzeichen bergangen
                              (2. Parameter wurde bei Space vor Komma nicht erkannt).
           21.07.96 ûFAKTPRJ: Hotkey Strg-W von 103 auf DF_DSINFO mit FAKT_FEHLERSYSTEM gelegt
           24.07.96 ûFFFIRUMS:
                    ûFFEINK:
                    ûFFWEG:   Statistiberechnungen fr QM-Lieferantenbewertung eingebaut
                    ûFFFIRUMS:read_globalinfo() in firmenumsatz() ans ende verlagert
                              (fr Statistikeintrag in den Programmeinstellungen, damit bei Statistikberechnunge
                              read_globalinfo() beliebig aufgerufen werden kann).
           25.07.96 ûFFFIRUMS:3-Jahres-Statistik fr Kunden und Vertreter eingebaut.
                    ûFFART:   EK-Fremdw„hrungsfelder in artfunc_wareneingang() eingebaut
                              artfunc_sortWegData() fr Liefrantenlistensortierung eingebaut.
                              (V: neuster, W:billigster)
           29.07.96  PRNLIB3: Option [mCxx] wird nur noch mit groáem 'C' verwendet.
           30.07.96 ûFFBDE..: Autostop der Personalzeit auf Kernarbeitszeit, falls Abstechen vergessen wurde.
           31.07.96 ûFFPROD:  auftrag_zu_beleg() EK-Abgleich ohne Postenverwaltung reaktiviert,
                              Systemflag EK-Abgleich bercksichtigt
                     FFBUCHEN:parallelBuchen_() error von calc_func zurckgeliefert (fr FIBU)
                    ûFFFIBU21:Konto_func und KostSt_func: Logbuch bei Kontobuchung eingebaut.
           05.08.96  FFVERT:  vertreter_umsatzuebertragen_() FindNext aus else-zweig raus
                              -> Z„hler-Fenster bleibt bei Monatsabschluá nicht mehr stehen.
           05.08.96  FFBDE:   Kernzeitabstechen: BDE-Log Datum auf Kernzeittag mit 23:59:59 gelegt.
           12.08.96  FFSTDVK: anstatt Positionsart 'B' auch Positionsart 'G' m”glich.
           16.08.96  FFFIBU2: Generalumkehr Soll-/Habenbuchungen getauscht!!!!
           20.08.96 ûFFEINK:  QM-Lieferantenbewertung Berechnungsfunktion 30 aktiviert (Bei Monatsabschluá
                              wurde die Tabelle nicht automatisch berechnet)
           21.08.96  DFPDF:   Fr Nummernvorgabe Kennzeichen fr Datumsabh„ngige Zahlen um
                              "%%" fr Monate Erweitert. (## Jahr, # Jahre Einer,  KW, %% Monate).
                              DFDATA Kartei fr Karteidatenvorgaben eingefhrt.
                              Nummern und Verzeichnisvorgabe m”glich.
           22.08.96 ûFFFIBU2: Buch_func(): chkSetAllKto() Kontenangaben bei Personenkonten vorm Speichern richten!
                              ansonsten wird nach Speichern vor Buchen andere Maskenkonstellation evt. erzeugt!
                              Wird ab sofort bei FNC_WRITEFOR erledigt!
                     FFFIBU21:Funktion zur Sammel-OP-Buchung eingebaut.
                              Funktion DATEV-DESY-Daten -> Stapel eingebaut.
                     FFDATEV: Erfassung-Header mit erweiterten Ordnungsberiff einlesbar.
           27.08.96  DFEXTFNC:bei Kommando [D [N und [L Feldtypberwachung aktiviert
           29.08.96 ûPRNLIB2: Funktion printDtrTrailer() und printDtrHeader() eingebaut.
                              Druckertreiberversion 8 mit Header und Trailer, bis 255 Zeichen lang
           29.08.96 ûPRNLIB2: load_dtr() um Header und Trailer Version 8 erweitert,
                              auch Eingaben mit "" Hochkommas zugelassen.
           29.08.96 ûPRNLIB4: print_header() auch bei Druck in Datei wird Header und Reset gesendet
           02.09.96 ûFFARTBCH:check_posart_bestell() bei F2->Bestellen, Option "Edit" eingebaut
                    ûDFED3LIB:ed_delSingleRec() fr l”schen nicht ber Selektierte!
                    ûFFBSTLST:Bei Bestelliste -> Bestellung, l”schen nicht ber Selektierte!
                    ûTERMINPL:Termin l”schen, l”schen nicht ber Selektierte!
           04.09.96 ûPRNLIB:
                    ûDFEXTFNC:Printkommandos [MSave], [MLoad] und [MOrig] eingebaut.
           05.09.96 ûFFPROD2: Bei Produktion Splitten bleibt die Positionsnummerierung erhalten.
                    ûPRGLOAD: Kommando EditFile um Modus 16 fr Selektionsmodus erweitert
                              Kommando TransferSelectionToMainFile( FeldnummerAktuelleKartei, FeldnummerZielDatei);
                              Kommando ClrSelection();
           09.09.96 ûFFFIBU2: chkSetAllKto() Wahl des Sammelkontos ber OP/Verb, U/V und zuletzt Kred/Deb!
                              (Wenn Rechnung an Lieferant, dann forde bisher Verbind.Sammelkonto statt Forderung bebucht.
                    ûFFSTDVK:
                    ûFFREPARA:
                    ûFFSTDEK: Infomeldung von Kunde/Lieferant immer beim Beleg”ffnen
                              (auch bei kopieren,„ndern, von Beleg schreiben).
           10.09.96  PRGLOAD: Bei Kommando TransferSelection Error -43 ohne selektierte beseitigt
           11.09.96 ûFFCPSHOP:Neue Funktionen fr Fa. Bromat implementiert:
                                Rechnung rckg„ngig, Gebrenrckbuchung beim 1.Mal korrigiert
                                Artikelnummernzuordnung fr Erl”skonten in Para61 eingebaut
                                M”glichkeit der gesplitteten Positionen fr Gebhr/Kopien
                                Staffelpreise fr Kopienabrechnung
                                negative Z„hler
                                Kennzeichen I und ! fr Vertragsinfo Melden/Sperre
                    ûFFREPARA:Bei Vertragsabruf Kunden und Artikeldaten nachladen, Vertragsinfo einblenden.
                              reparatur_abschliessen() Feld LN und RN fr Lieferschenin/Rechnung aktiviert
           11.09.96 ûPINBOARD:Felder Angebot,Auftrag,Lieferschein,Rechnung in Nachrichtenmaske eingebaut
                     PRNLIB:  Mehrere Vd Variablen: Vd0-Vd5 eingebaut.
           17.09.96  PRNLIB   Option Vx:c fr funcExtKalk() eingebaut
                    ûDFPDF:
                    ûSTDPRJ_: Flag PDF_PARANODIRMODE eingefhrt, damit bei BASISDAT-Direktoryverlagerung
                              mit DFDATA Kartei Infodat und Tempdat lokal bleibt.
                    ûDF.H:    workmode-Flag WM_NOASKBUCHEN eingefhrt:
                              Beim Buchen keine Userrequest einblenden, immer mit Standard reagieren
                    ûFFEINK:  Bei Bestellisteneintrag WM_NOASKBUCHEN bercksichtigt.
                    ûFFBDE:   Bei BDE-Lagerbuchung workmode|=WM_NOASKBUCHEN um Lieferantenauswahlmeldungen zu unterdrcken
           24.09.96  FAKTMAIN:Feldpositionsvorgabe (Num/Name/autotake) auch fr Barkasse
           24.09.96 ûDFED3LIB:ed_delSingleRec() um Lesebefehl erweitert.
                              FEHLER BEI BESTELLLISTE -> BESTELLUNG RšCKBUCHUNG VON BESTELLISTWERTE IN ARTSTAMM FALSCH KORRIGIERT!!
           26.09.96 ûDFEXTFNC:PRNF_GLOBALMASKVAR zugriff auf Statio.rec masknum==96 ber
                              DF_RESMHD1+DF_STATION, da sonst bei Statiorecdruck kollision!
                    ûSTRPRJ_: bei Archivzugriff mit pdf->flags&PDF_NOARCHIV
                              Dir-Vergleich auf ARCHIVPFAD eingebaut.
                              (Problem mit EXTDAT F1 auf Stammdaten)
  V2.1-09  07.10.96 ûPRGLOAD: SetRecordRights - Kommandos eingebaut
                    ûDFEDLIB: F2-Systemprogramm eingebaut.
                    ûRECDATA.H:Rechtesystem auf Datensatzebene eingebaut.
           07.10.96 ûFFSTDVK: get_firma() Bei Mitarbeitern Sehr geehrte wird mitgeladen.
           07.10.96  POPUPMNU:searchAndExecutePrg_() erst PRGPFAD ausfhren, dann SYSPRGPFAD mit Vorrang
           15.10.96  FFFIBU2: Entscheidung fr Sammelkonto OP/Verb zus„tzlich um Belegfelder erweitert.
           16.10.96  FFFIBU2: Keine Skontoangabe ohne Verbindlichkeit- oder OP-Bezug m”glich.
           18.10.96 ûFFART:   Bei Neuanlage wird auch ohne Warengruppe bei EK-Žnderung VK-Spanne berechnet.
                              Lieferscheinstatistikzeile in Artikelstamm,ArtUms und WgrUms
                    ûFFBDE:   BDE-System fr KFZ um getrennte Katrtennummer erweitert.
                    ûFFBETON: Zuschlagsbertragung bei Lieferscheinimport erweitert.
                              BDE-Tankbertragung um Bemerkung und lfdNr erweitert.
           21.10.96 ûPRNLIB:  Formatierungsoption D fr Datenausgabe von Stringarrays eingebaut
           21.10.96 ûDFIMP:   Formatierungsoption D fr Datenimport von Stringarrays eingebaut
                              INLINEx Option bei Import eingebaut, x=Modus, default Modus 3
           22.10.96 ûPRNLIB:
                    ûPRNLIB2: \ fr Sonderzeichenausgabe eingebaut
           22.10.96 ûDFIMP:   Bei @H und EOF kein EOF, damit evt. letzter Datensatz gespeichert wird
           22.10.96 ûFAKTEDIT:belegImport() letzen Datensatz bercksichtigt.
           22.10.96 ûINPLIB:  get_dftextauswahlptr() auf Letzten umgestellt -> FAKT.AWT letzter Eintrag gilt.
           23.10.96  ...      bei MAI_CALCHEADLISTINIT Variablenbernahme auch bei varflag==0, damit bei
                              leerer Belegliste (da bereits alle ausgeliefert ist) die Summenfelder
                              gel”scht sind!
                     FAKTEDIT:mask->func==NULL an drei offenen Stellen abgefangen
           24.10.96  DFIMP:   Option 0: fhrende Nullen entfernen (wie -)
           24.10.96 ûDFED2LIB:select_records() Z„hlfenster erst nach Zeiverz”gerung (WL_AV_TIMEOUT)
           28.10.96 ûPRGLOAD: Erweiterung von Kommando SetItemAccessLevel um 0x400
                              fr System-Feldabschaltungsflag (mit Ctrl-F3) entfernen.
           29.10.96 ûFFVERK:  OffPos_func() Stornofeld in OP bei Rechnung ohne Storno gel”scht.
                              (Falls Rechnung storniert und wieder ver„nmdert und endstorniert, blieb Storno in OP)
           06.11.96 ûFFSTDVK: Lieferadressen->Rechnungsadressenautomatik eingebaut.
                     DFED2LIB:
                     DFED3LIB:Erster Test fr DVL-Generator mit '+' 1 2 3 ALT_W
           07.11.96 ûFFREPARA:Rechnungsadressenautomatik vollst„ndig aktiviert.
           08.11.96  FFEXABR: Erweiterte Bestell- und Auftragsabrufe vollst„ndig aktiviert
                    ûFFARTBCH:Fr F3-Positionsnummerierung ist auch Nummerierung gltig falls 1. Position !=1.00 ist
                              (sie darf nur nicht kleiner als 1.00 sein!)
           11.11.96 ûDFED2LIB:select_records() backbuff allokiert, somit keine 2kByte Grenze mehr.
                              (Suchlauf auch in gr”áeren oder mehrfach-Flieátexten m”glich).
                    ûFFARTPR: Sachnummernautomatik fr Artikelliste eingebaut.
                    ûPRGLOAD: Kommando TransferFokusToMainFile( FeldnummerAktuelleKartei, FeldnummerZielDatei);
                    ûPRGLOAD: Kommando GetRecord( feld1, inhalt1, feld2, inhalt2, feld3, inhalt3, feld4, inhalt4);
                    ûPRGLOAD: Kommando SetFileBackToMainFile();
           12.11.96 ûWINLIB:  sprint_maiext_() Datumsausgabe bei long mit MAI_STR_NOTCUT
                              L„ngenoption 8/14/17 und 10/16/19
           13.11.96 ûFFFIBU2: Sprung auf Feld Bezahlt bei OP oder Verbindlichkeiteneingabe, Rcksprung auf F1-Return Feld
                              auáer Finanzkonto und Finanz-Bezeichnung
           13.11.96  PRNLIB2: prnParBuffAlloc() Trailer ohne Header geht jetzt.
           13.11.96 ûFFFIBUDV:setSteuerSchluessel() wenn Steuerschluesselnicht passt,
                              nach Meldung keine Folgefehler -1 mehr (-1 -> REC_BREAK).
                              Meldung auch ohne DATEV-Steuerschlssel
           14.11.96 ûFFART:   Lieferantenlistensortierung 'V' -> 'U' wegen Doppelbelegung mit 'V'-Vorkalk-Entkoppplung
                    ûFFEINK:  Fehler bei Obligo von Bestellpositionen bei Menuepunkt "Bestellbest„tigung" korrigiert.
           14.11.96  FFWEG:   ! bei Wareneingang KalkEK fr direkte Zuweisung von kalkEk = !Betrag
           15.11.96 ûFFART:   Bei Verlassen der Kalkulationsmaske bei Kaufware wird VorKalk nichtmehr gel”scht
                     DFED3LIB:MAI_CALCEXTWINENTER um Returnwert REC_ABORT fr nichtausfhren erweitert.
           18.11.96  DFED2LIB:FNC_EDLISTDATA_INIT in ed_listedit eingebaut
                     FFARTPR: in ArtList_func Nachladefunktion ber df->edit_initgroup fr KdNr-Nachladen in ArtList
           20.11.96 ûFFPROD3: komplettartikel2Produktion() ohne Listenrefernezfeld m”glich.
           22.11.96 ûDFDB:    copyExtData() um Listenkopie von Openliste-Datenliste erweitert (z.B. Ansprechpartner)
                              d.h.: Interessentenverzeichniss mit Ansprechpartner l„át sich mit F10 incl.Ansprechpartner
                              in Kundenstamm bernehmen.
                    ûDFED2LIB:save_copyrecdata() bei Kopieren mit Maus (Drag & Drop) error -1 beseitigt.
                    ûFFSTDVK: Fr CopyShop-Modul Monatsratenberechnung in Angebotspositionen aufgenommen
           25.11.96  DFPRN:   Bei Dateidruck (File direkt im Ausgabeformular angegeben) ASCII-Druckertreiber geladen (Schrott am Anfange der Datei entfernt).
                    ûPRNLIB4: calc_hunk() Out of Memory bei BackVar abgefangen
                     ..:      relloc durch realloc2 ersetzt: Unn”tige Daten werden nicht mehr von altem in neuen puffer kopiert
                              -> Fehler Page fault bei realloc unter Windows behoben!
           26.11.96 ûFFFIBUDV:BuchJournal::Make() Belege -> Stapel Periodenabfrage ohne Periodenfeld
                              im Stapel unterdrckt ( Bei switch FAKT_DATEV ging die bertragung nicht mehr).
                    ûFFOFFPOS:Zahlungseingang bei Barkassen-Tagesabschluá wird nicht mehr gemeldet.
                    ûFFUMSATZ:Barkassen-Tagesabschluá Kundenbezogen: Sortierung DATUM,KdNr wird geprft, da sonst evt. OP-Summenfehler
                     FFBARKAS:Zus„tzlicher Menuepunkt fr Barkassen-Erfassung mit einmaliger Usernummerneingabe
                              MwSt-Freie Positionen wurden ohne Umsatzbetrag im ArtStamm-Statsisitk verbucht! Fehler beseitigt.
                    ûFFOFFPOS:Preisgruppe bei Tagesabschluá Barkasse auf "0b" fr korrekte Bruttorechnung gesetzt.
                    ûSTDPRJ:  Bei check_user() wird jetzt auch versucht die IPX-Adresse ber get_connectionadr() (Server-Connection-Tabel) abzufragen.
                              (bei NT war sonst keine IPX-Adresse zu bekommen).
           27.11.96  PINBOARD:Bei Firma LPC Telefon-Gadget fr Telefonnummer w„hlen versuchsweise eingebaut.
                     STDCON:  console_timerfunc() -Netwerkmessage-Pollen (Netzwerklast) von 1/10 sekunde auf 1/2 sekunde reduziert.
                     PRNLIB:  Bei Inputfeldern beim Drucken, Taste ESC fr Abbruch kein ungetkey mehr, sondern Err -1.
                     FFSTDVK: Bei neuem Lieferadressenladen: Vertreter, falls vorhanden, hat Vorrang vor Rechnungsadresse.
           02.12.96  FAXLOG:  Tobit FaxWare-Anbindung: saveTobitFax() mit Syntax "FAX: $ANGBOT 1234567x -> 1234..789, versendet" eingebaut.
           03.12.96  FFARTBCH:Meldung "Optional-/Alternativposition \"%s\"? (%sZurck)" korrigiert
           04.12.96  FFBDE..: Neue BDE Kommandos zur untersttzung eines seriellen Barcode-Scanne eingebaut.
                              (Keys: "SerialData","SerialKeyInput","ErrorSerialContinue",
                     FFPROD2: Alle Istwerte in Prod: Bei BDE Arbeitsgang nicht mit eintragen
           10.12.96  PRNLIB2: #ifoptinclude, #ifopt, #elseifopt, #else, #endif eingebaut
           12.12.96  BRECLIB: in dfBTRV() Doppelfilter eingebaut
  V2.1-10  13.12.96  FFBELPRU:Seriennumerverwaltung vollst„ndig aktiviert
                     PRNLIB2: #setopt eingebaut
                     PRNLIB.H:Neue Druckeroptionen Seitenl„nge 2. Seite und Schachtumschaltung eingebaut.
                     PRNLIB2: Druckertreiber Version 9
                     PRNLIB:  @Z-/+ Kommando eingebaut, @.S1 @.S2 @.S3 eingebaut
                     DFPRN:   [D Kommando um anderem Hunk als ALT erweitert [D "hunk"] (wichtig: Space Hochkomma)
                     IGGAW:   find_arraynum() mit Groá/Kleinschrift - Unterscheidung eingebaut.
                              ->FAKT.AWT Textauswahl Groá/Kleinschrift wird unterschieden
           16.12.96  FAKTFNC: chk_posnum() Prfung auf Summe '=' und Hauptpositionen gleich der Belegsumme
                     FFBELPRU:Seriennumerverwaltung optimiert
                     DFED2LIB:ed_listdata() Bei SHIFT_TAB wie bei KEY_UP in Beleg vom Fuá in die Positionen an letzte Stellen springen.
           17.12.96  FAKTSUB:
                     FAKTMAIN:PRJCNF_AKTLIRECHEK eingebaut -> Von Lieferschein Rechnung schreiben, EK aktualisieren
                     PRNLIB4: Schachtumschaltung um "keine Umschaltung" erweitert
           20.12.96  PRNLIB:  Bei [d48<] wurde < ohne Liste (C48) gedruckt! Fehler beseitigt
           13.01.97  PRNLIB3: Bei [.VxxCyy] wurde xx evt. mit uninitialisisertem Wert i in if( i >=MAX_VAR) verwendet.
           20.01.97 ûFAKTMAIN:Extra Menpunkt fr Sammellieferschein von Auftrag trotz Prod-Modul
                    ûFFVERK:  Schutz vor Sammellieferscheine mit Variantenproduktion eingebaut.
           21.01.97 ûCALCMAI: cpy_mai() um Kopie von Normalfeld in Textfeld erweitert
           20.01.97  WINLIB:  input_mask() calcpath-berechnungen nur noch ohne mask->flags&MA_MAISHOW
                     DFED2LIB:ed_listdata() Listenberechnung nur noch ohne edmode&EDIT_SHOW
           23.01.97 ûFFARTBCH:
                    ûFFVERK:  Betonwerk: Statistik in Baustellen wird ab jetz ber Lieferscheine berechnet, nicht mehr ber Rechnung
           29.01.97  FFFIBU21:Konto_func() Er”ffnungsbuchung in Summenfeld Soll/Haben des aktuellen Jahres bercksichtigt.
           04.02.97  PRNLIB2: Vt-Inputfeld von Eingabel„nge 50 -> 70 erweitert.
           05.02.97  DFPRN:   in dfprint_ PRINT_ONLYMASK - Flag eingebaut, fr Ausgabe des Maskeninhalts ohne Record laden
                     PRNLIBx: Unterdrckung des Variablenl”schen @V jetzt auch im SETUP-Hunk m”glich (bisher nur INIT-Hunk).
           06.02.97  FFWEG:   Nachladen von LagerNr bei Bestellung -> WegPos unterdrckt,
                              falls LG-Feld in BstPos vorhanden
                     FFEINK:  Bei Bestellpositionen, Kundennummernachladen ohne Auftragsmmer unterdrckt
           12.02.97  DF...:   CHGDAT-Implementierung begonnen.
                     PRJ.H:   Schalter FAKT_CHGDAT eingebaut.
                     PRGLOAD  Kommando SetFileToChgDat();
                    ûPRNLIB4: drucke_steuercode() @@ immer als @ drucken.
                    ûFFEINK:  Bei Abrufbestellung -> Bestellung mit ausgelieferten Positionen err -219 beseitigt.
           13.12.97  WINLIB:  sprint_maiextT() bei Ausgabe-L„ngenoptimierung Zahl mit ,xxx wird nicht mehr abges„gt, sondern gerundet.
                     FFSTDVK: check_kunde_() abweichende Rechnungsadresse eingebaut.
           17.02.97  FAXLOG:  CheckFaxMessage() convert_mai_input() fr Belegnummernsuche eingebaut.
                              Problem FAX-Rckkennung - oder û bei div. Belegnummernl„ngen ging nicht.
                    ûDFED2LIB:Belegnummerierung um Nummerierung von Zahlen mit fhrenden Nullen korrigiert (get_autoinc2_mainumber()).
           19.02.97 ûPRNLIB4: print_header() calc_hunk ENDE und ZUS nach print INIT verlagert, zur korrekten L„ngenberechnung
                              (falls in INIT Var gesetzt wird, die die L„nge beeinfluát)
                     PRNLIB:  Option @Y (dh->flags|=DVLH_FORCE_CALC) zur dauernden Berechnung der L„nge der Hunks ENDE und ZWISCHEN.
           20.02.97  PRNLIB:  Anzahl User-Hunks von 16 -> 32 erh”ht
           05.03.97 ûBRECLIB: setUpRequestTimeout() fr Requester automatisch schlieáen wenn TTS l„uft
                    ûREQUEST: Requester automatisch schlieáen wenn TTS l„uft
           06.03.96 ûFFARTBCH:chk_posnum() Prfung auf Summe '=' und Hauptpositionen um Alternativ und Optionalpositionen korrigiert.
                    ûFFFIBU21:Menuepunkt "FIBU Neuanlage" eingebaut.
                     FFFIBUDV:Bei FIBU und DATEV-Schnittstelle, Buchungstapel von bis auch in DATEV-Maske schreiben
           07.03.97  DFEXTFNC:Bei @D Kommando mit Feldvorgabe VON in mai->buff: Alter mai-inhalt gerettet.
                              Dadurch wird der Fehler vermieden, daá sich beim Drucken durch den CALC-Lauf der
                              Inhalt des Feldes f„lschlicherweise ver„ndert!
                     DFEXTFNC:[Dxx ..] um Option a (wie b fr BACK) erweitert, fr ALL, d.h. Listendruck ohne Filter
           10.03.97  FFDISPO: Modul "automatische Rechnungstellung" von erledigten Lieferscheinen um Datumseingabe fr
                              "abrechnen bis zum:" erweitert.
  V2.1-11  17.03.97  FFBSTLST:Bei Artikelstamm-Dispovorschlag bestell_cmp_func() um Funktion "in KW prfen" und "mit Folge-KW prfen) erweitert.
                              Flag BM_DISPO_KW und BM_DISPO_KWPLUS fr Bestellmodus aktiviert (z.Z. nicht in UserRec Speicherbar)
                     DF...:
                     FAKTEDIT:
                     FAKTMAIN:CHGDAT-Implementierung fertig, Maske PARA12 fr Einstellung eingebaut.
                              Flags PDF_CHGDAT_ON und PDF_CHGDAT_ALLWAYS in ProjektDataFile aktiviert.
           17.03.97  FAKTMAIN:set_pdfautoincnumstrMinMax() erweitert: Bei Belegnummernvorgaben ##.... wird automatisch
                              auch der Maximalwert auf ##     gestetzt. Dadurch wird die Belegautonummerierung beim
                              Jahrtausendwechsel vollautomatisch bercksichtigt (ansonsten ber Datembankparameter DFDATA einstellen).
           18.03.97  DFLOADZS:
                     FFVERK:  Neuer Schalter in PARA01 "Summenpositionen immer".
                              PRJCNF_SUMMPOSALLWAYS und LOADZWFLG_SUMMPOSALLWAYS eingefhrt.
                              '='-Positionen von Auftrag -> Lieferschein/Rechnung werden bei Titel 'B'
                              nicht mehr bertragen.
                     DFEDLIB: In Belegpositionsfenster ist "Fenster Zoomen" Taste-F8 aktiv. Dadurch bei groáen
                              Listen bessere Bearbeitungsm”glichkeit.
                     PRJRPM:  Im Info-Fenster wird der aktuelle Client und Datenbanksystem angezeigt.
           19.03.97  FFFIBUDV:Bei Verbindlichkeiten -> Buchungsjournal wurde fr Steuer B das Ausweichkonto nicht
                              geladen.
           24.03.97  FFBDE:
                     FFPERS:  Personalzeitmodul um Personalspezifischen Zeittabellen erweitert.
                              Tagesymbol 'a' eingefhrt (A und +), Arbeitstagesfeld in PSSTAT, toleranzstunden fr Wochenberstunden
           26.03.97  FAKTMAIN: FAKT.INI mit [NetWare] CaptureBroadCast 0/1 eingebaut.
                     FFBDE:   PIN-Nummer fr Hauptmenue eingebaut.
           27.03.97  FFPERS:  PsStat Arbeitstage-Sollberechnung ge„ndert: Alle Tage ohne '*', '#' und 'F';
                              Bei Stundenerfassung Sonderurlaub 'S' von bis m”glich.
                    ûFFPROD:  Mengen <=0 bei Auftrag->Rechnung bercksichtigt.
                              šbertragung mit Produktionsmodul, Mengen <=0 und '=' Positionen bercksichtigt.
           01.04.97 ûFFCPSHOP:Bei Mietvertragsabrechnung abweichende Vertreternummer im Vertrag bercksichtig
           02.04.97 ûFFDATEV: Datev-OBE eingefhrt. Alle neuen Disketten werden mit 7-stelliger Beraternummer und
                              5-stelliger Mandantennummer. Alte Disketten (KF01, neu DV01) lassen sich nicht mehr erweitern,
                              aber noch anschauen.
                    ûFFFIBU21:Bei fibuJahresuebertrag() Kostenstellen bercksichtigt.
                              Kostenstellen-Arrayberechnung wie bei Konten erweitert.
                    ûDFPDF:   bei setUpPdf() min/max_autoincnum nur bei vorhandenen Werten in den Feldern von DfData gesetzt.
                    ûDFED2LIB:get_autoinc2_mainumber() min/max-Verwaltung bei autoincrement bei leerer Datenbank korrigiert.
           03.04.97 ûFFFIBU2: Kostenstellensplittabelle auf Kostenstellen bertragen.
                     DFIMP:   get_inphunk_() um Import in Zahlenarrays z.B. [C160(5)] erweitert.
           04.04.97  DFEXTFNC:flush_SpecificLPTCapture() durch end_capture,capture ersetzt.
                              Dadurch ist auch unter Win95 bei Ausdruck in Druckerqueue ein Trennen der DruckJobs m”glich.
                    ûFFLAGBCH:Bei Bestellbet„tigen wurde ggf. Obligo-Bestand beim Lieferant falsch berechnet:
                                In artikel_lager_direktbuchung_() LagerBuchenData.set_revNum() eingefhrt,
                                um bei OnLine-Buchungen die Revers-Bezugsnummer korrekt zu verwalte.
           08.04.97  FFPROD:  Von Kompletartikel Produktion: Falsche Meldung "Die Variantenproduktion ist bereits ausgeliefert!" entfernt.
           09.04.97  PRNLIB.H:PrnPar.queue von 16 -> 48 Byte. Seit flush_SpecificLPTCapture()-ersatz vom 04.04.97 Problem, "Drucker ... nicht gefunden"
                              wenn Lange Server/Queue-Namen vorhanden waren, beseitigt.
           11.04.97  BRECLIB2:
                     GATEWAY: Erste erfolgreiche Export/Importvoruntersuchung zum OffLine-Abgleich zweier IFW-Versionen
                     FAKTMAIN:FAKT.INI um Kommandos erweitert:
                              [Edit] InputBadDate=0,AcceptedDateRange=5,TabKeyLikeWin=1
                              [System] RequestTimeOut=20
                              [Print] FNameConvert=0
                     DFLIB2:  Funktion FNC_CLRTEMP eingefhrt.
                     FFRECH:  Bei Lieferschein -> Rechnung mit Seriennummernmassenerfassung
                              bei Lieferschein, šbertragung zu Rechnung.
           14.04.97  BRECORD.H: REC_REPLACE_SKIP -249 eingefhrt
                     FFBELPRU:Beim L”schen von Seriennummerneintr„gen w„hrend der Massenerfassung,
                              wird bei zus„tzlicher Referenz statt dessen nur der Referenzeitrag entfernt.
           16.04.97  FAKTMAIN:FAKT.INI um Kammndos erweitert:
                              [System] FileLockMilliSec=500, FileLockRetrys=120
                     DFPRN:   dfprint_liste() bei DVLH_FORCE_CALC genaue L„ngenberechnung des Listenhunks.
                     IGGLIB:  IGG_NOWINMAXUPDOWNEXIT eingebaut. Damit wird bei Belegpositionsbearbeitung mit Gezoomter
                              Positionsliste (F8) beim Erreichen des oberen oder unteren Rands die Liste nicht verlassen wird.
           17.04.97  FFSTDVK: Im Beleg bei Abruf des Kunden ber das Ansprechpartner-Index-Feld
                              kompletten Firmenabruf ausgelӇt (mit Herr oder Frau).
                     DFPRN:   Bei Seriendruck mit Frage "Datens„tze Kennzeichnen?" wurde Druckereinstellung entfernt -> dadurch Fehler und Abbruch.
                              close_dvl() und set_print( 0,NULL,NULL) bei Frage "Kennzeichnen ?" entfernt.
           18.04.97  PRNLIB4: bei print_endhunk() bei Druck von Hunk ENDE wird bei Seitenumbruch HUNK Zwischen und HUNK Listenkopf2
                              mitgedruck (aber nicht bei Hunk ENDE1-4).
                     DFPRN.H: PRINT_LMODE_LOCAL_LASTPRINT eingefhrt.
                     DFPRN:   bei dfprint_liste() wird bei gesetztem PRINT_LMODE_LOCAL_LASTPRINT der Hunk (die Position) immer wie als letzte
                              Position gedruckt. D.h. Es wird die l„nge des ENDE-Hunk zur Seitenberechnung verwendet.
                              Bei Listen in Positionen von Belegen wird PRINT_LMODE_LOCAL_LASTPRINT von der Hauptposition gesetzt,
                              so das die Unterlisten keine Probleme mit dem Belegende bekommen.
           21.04.97  FFPROD2: Auftrag -> Produktion, bei vorhandenem Feld "PrdZeit" im Artikelstamm
                              ProdTermin (74) = LiefTermin-PrdZeit
           21.04.97  FFPROD3: komplettartikel2Produktion() mit Feld "PrdZeit" in Artstamm frage nach PrdTermin.
                     PRGLOAD: Neues Kommando SerNumPosEditFile( Browse, Titel);
                     DFPRN:   @N -> DVLH_NOTLAST fr Position nicht als letztes auf einer Seite eingebaut.
                     PRNLIB:
                     PRNLIB2: @N fr DVLH_NOTLAST eingebaut
                     PRGLOAD: Bei Change (Massen„nderung) Option Z fr "Vermerk Setzen" eingebaut.
           24.04.97  FFLAGBCH:LagerBuch_func() Lagerbuchungsfunktion Buchung im ArtStamm erst nach
                              Speicherung. Bei Neuanlage wurde erst gebucht, dann gespeichert,
                              falls Fehler beim Speichern (z.B. Nummer schon vorhanden) wurde Ware trotztdem
                              im Artstamm gebucht!
                     FFEINK:  Bestelliste genauso wie LagerBuchung umgebaut.
                     DFLIB:   Bei Zugriff von File mit PDF_DEFAULTDATA mit F1 auf anderes File, einsatz von StdDFPara-Verzeichniss.
                              Wenn im Mandant Terminkalender aufgerufen wurde (mit PDF_DEFAULTDATA, er liegt im BASISDAT\ Verzeichnis)
                              wurde bei F1 auf Kundenstamm im BASISDAT\ Verzeichnis zugegriffen. Jetz wird auf Mandantenverzeichnis
                              zugegriffen.
           29.04.97  FFEINK:  Fr Einkauf mit Rabatte Felder im Artikelstamm zu den 3 Lieferantenzeile hinterlegt, mit
                              automatischer einpflege.
           13.05.97  TEXTEDIT:Zeilenumbruch und Linienversatz im šberschreibmodus korrigiert.
                     FFDATEV: Bei DATEV-Disketten lesen, Space aus Breakstring rausgenommen
                              Fr Abrechnungsnummernkreis aktuelles Jahr aus Buchungsjournal bis Feld genommen.
           13.05.97  FFFIBU21:fibuBuchungToStapel() Stapel von bis - Datum in FIBU und DATEV-Para abgespeichert.
           15.05.97  PRGLOAD: Bei Kommando Goto() addPtr entfernt (es muáte ein ' ' zwischen ( und" stehen Goto("[V1<]"); ging nicht!).
           16.05.97  PRNLIB:  Bei @E Positionierungsfehler von ZW/ENDE-Hunk um -1/0 auf immer 0 beseitigt.
                              @? zur Ausgabe der Zeilennummer und der aktuellen Seitenl„nge zu Testzwecken
                     FFFIBU2:
                     FFDATEV:
                     FFFIBUDV:Schalter nur "DATEV-Konforme Buchungen" eingebaut:
                              EuroID-Prfung und Verdichtung, Export nur bei EG-Tatbestand,
                              prfung Stapeleintrag DATEV-Konform, Datentr„ger schreiben, keine
                              negativen Skonti, Belegnummernverdichtung, Datumsprfung.
           20.05.97 ûFFFIBU21:Funktion Konten -> Stapel fibuKontoToStapel() eingebaut.
                    ûFFDATEV: Funktion Konteneuanlage -> DATEV (Abr. 0099JJ, Anw. 13) eingebaut.
                              Datevfunktionen zum Schreiben von Kurzvorlauf und Stammdatenerfassungsbl”cke eingebaut.
           21.05.97 ûFAKTMAIN:FAKT.INI um Kommandos erweitert:
                              [FIBU] SplittToleranz=30 zur Steuerung der maximalen Tolleranz bei "Belege -> Buchungsstapel"
                     FFBETON: Bei KFZ-Datenbank wird der BDE KM-Stand vorrangig vor dem KM-Stand Feld benutzt,
                              falls der BDE KM-Stand grӇer ist. Der Stand wird zur Berechnung der Wartungsintervalle verwendet.
                     FFBDE:   Beim BDE KM-Stand schreiben wird Rechenfunktion des Feldes ausgelӇt.
                     FFDATEV: Buchungssrapel -> DATEV, Meldung differenziert:
                              "Das Buchungsjournal wurde bereits bertragen! (Nochmal/Abbruch)" und
                              "Der Zeitraum wurde bereits bertragen! (Weiter/Abbruch)"
                     FFFIBU21:Bei FIBU Export Generalumkehrschlssel hat Vorrang und Steuerschlssel
                              nur wenn Steuerrt eingetragen ist.
           23.05.97  TEXTEDI2:Fehler beseitigt: Bei Cursor Rechts/Links wurde in alter Zeile anstatt
                              in aktueller Zeile geschrieben.
                     FFFIBU21:Buchungsexport auch aus abgeschlossenen Perioden m”glich (FORCE_WRITE Kennzeichen X).
                     FFFIBU21:Bei 1. Periodenabschluá Vorgabedatum "Periode von" auf 2 Jahre vorher korrigiert.
                              Bei Neuanlage wird Vorgabedatum "Periode von" gesetzt.
           26.05.97  FFLAGBCH:Bei Lagerbuchung Neuanlage mit Postenverewaltung wird Postennummer in Lagerbuchung wieder eingetragen.
                              (Seit Umstellung "erst Speichern, dann buchen" vom 04.04.97 wurd Postennummer nicht mehr eingetragen!)
                     PRJPRM:  Anzeigen von eingeschalteten Filter einer Datenbank unter "geladene Masken", Spalte FI
           27.05.97  FAKTMAIN:Bei Verbindlichkeiten-Neuanlage wird nach Speichern die Maske gleich wieder ge”ffnet.
                              Wareneingang -> Verbindlichkeit: Rechnungsdatum wird aus Lieferscheindatum im WEG genommen (nicht mehr WEG-Anlagedatum).
                     FFFIBU2: Auszugsnummer wird beim Ausbuchen einer Verbindlichkeit mit bertragen.
           03.06.97  FFBDE..: Gruns„tzliche Erweiterung um PersonalKostenstellen stechen fr K&Oe
                     WINLIB:  Bei Anschauen sind die Felder mit Alt-10 Datenbanken auch mit Cursor fr F1 erreichbar.
                     FAKTMAIN:Bei Start mit Autostartmenuepunkt (#xxx im Loginname) wird keine Frage nach Monats- oder Jahresabschluá eingeblendet.
           25.06.97  ....:    Fr WINIFW Anpassungen eingebaut.
           27.06.97  DFEDLIB: edit_data_ Bei gesetztem Filter und abweichendes list_index abgefangen (z.B. Filterproblem bei Seriennummernerfassung).
           30.06.97  FFVERK:  OffPos_func() bei Gutschrift Provisonierbetr„ge negativ eingetragen.
                     FFVERT:  calc_vertsumme() Gutschriften bei Vertrtertabellenermittlung mit + bercksichtigt
                     FAKTEDIT:Rckg„ngig machen innerhalb des Sperr-Zeitraums nicht mehr m”glich
                              Rechnung/Gutschrift stornieren um zus„tzliche OP-Prfungsmodus 3 erweitert (alle Prfungen auser "bereits in FIBU verbucht").
                     DFPRN:   dfprint_liste() bei Listendruck ohne existierendem Hunk L„ngenfehlberechnung und Druckabbruch direkt nach Listenkopf beseitigt.
           01.07.97  FFFIBU21:fibuJahresuebertrag() und fibuNeuanlage() auf abweichendes Wirtschaftsjahr umgestellt.
           02.07.97  FFRECH:
                     FFVERK:  Bei Rechnung und Lieferschein wird bei von Beleg zusammenfhren die Kopfpositionen mit Menge 1 ausgewiesen
                              (nicht mehr 0, -> Bei Sammellieferschein wurde bei Rechnung schreiben diese Position wegen Menge 0 nicht mitbertragen!)
                     FFDATEV: Fr Abrechnungsnummernkreis Direkteingabe des Jahrs in den Feldern "Abrechnungsnr. von bis"
                              in der Parameterdate bercksichtigt (fr abweichendes Wirtschaftsjahr)
                     FFFIBU2: Abweichedes Wirtschaftsjahr eingebaut.
           07.07.97  FFBELPRU:Seriennummernverwaltung fr SN in Reparaturpositionen erweitert.
                     FFWARTVE:Abrechnungsmodus fr Normal-Wartungsvertr„ge implementiert.
                     FFREPARA:In Masken Felder fr Voraustausch-Abwicklung implementiert (CEUS-Hamburg).
                     PRNLIB.H:DTR_MAXCHR  15 -> 31; Maximale Zeichen pro Druckkommando in Druckertreiber von 15 auf 31 erh”ht.
           10.07.97  FFPERS:  Modi 1-4 fr "Kommen aufrunden, Gehen abrunden x Min" in BDE/Personal-Zeittabelle aktiviert.
                     FFBDE2:  BdeTsk_func() Zeit bei Arbeit ber nacht korrigiert.
                     FFERLBU: chkEuroId() Euro-ID prfung, alle Zeichen zugelassen (bisher nur Zahlen)
           16.07.97  FFFIBU2:
                     FAKTPRJ: Nur bei FAKT_VEREIN Fibu-šberschussrechner zugelassen.
           17.07.97  FFVERK:
                     FFRECH:  Bei "von Reparatur Lieferschein ... " oder "... Rechnung ..." werden SN der Reparaturposistionen mitbertragen
                     FFREPARA:Bei Seriennummernverwaltung auch Reparaturmaterial nach Erledigen wieder mit 'E' verbuchen (zur SN-Registratur).
                     FFBELPRU:Bei Seriennummernverwaltung wird die Menge + oder - mit registriert.
           21.07.97  FAKT.H:  Schalter FAKT_WARTUNG_AUTORECHNUNG eingebaut.
                     FFWARTVE:Lieferbedingung wird bei Belegerzeugung gel”scht.
           22.07.97  FFBDE...:Fr BDE-Barcode-Scan mit kombinierter Produktionsnummer/Position Key-Kommando
                              TC_KEY_SerialKeyInputPrdAndPos implementiert.
           24.07.97  PRNLIB4: print_barcode() Byte-Puffer fr LASER-Barcode von 500 -> 2000 erh”ht.
           25.07.97  FFEINK:  Bei Verbindlichkeit wird mit FIBU-Modul nicht nach "verbuchen?" gefragt
           28.07.97  FFSTDVK: Bei Beton-Modul listSummKFZ und listSummSilo mit += statt = bei Listensummenbildung versehen!
                     FFRECH:  In Rechnung darf Feld 98 mit VerpackungskostenFreiSumme nur bestckt werden, wenn Name != "LieferArt".
                     FAKTFNC: Bei Inventur zweite Abfrage "Warenbest„nde ALLER Artikel unwiderruflich berschreiben? (šberschr./Abbr.)" eingebaut.
                     LIBBORL\BIOS: ctrlbrk() fr WATCOM mit signal( SIGINT, SIG_IGN); fr Ctrl-C abfangen versehen.
           30.07.97  INPLIB:  **get_dftextauswahlptr() um MAI_TYPE_FTAKE erweitert (mit lst_inx !=0 && lst_inx !=0xFF)
           31.07.97  FAKTSUB: Neuer Schalter in PARA01 "Vorgabe Lagerbuchung ohne Statistikbuchung"
                              PRJCNF_INIT_LAGERBUCH_NO_STAT eingefhrt.
                     FFLAGBCH:Kennzeichen 'K' fr "Lagerentnahme ohne Statistikbuchung" eingebaut.
           01.08.97  PRNLIB:  DVL-Kommandos erweitert:
                              [Vt:U] fr alle Buchstaben zu Groábuchstaben
                              [Vt:u] fr alle Buchstaben zu Kleinbuchstaben
                              [Vt:F""] fr Filename laden (wie sie Bei @#-Kommandos verwendet werden)
                              @#OpenFile "";    Ausgabedatei ”ffnen
                              @#AppendFile "";  Ausgabedatei ”ffnen und Text anh„ngen
                              @#CloseFile;      Ausgabedatei schlieáen, zurck zur Ursprungsdatei/Drucker
                              @#IfExistFile ""; Prfen ob Datei existiert (mit [t][e] verzweigen).
                              Der Dateiname wird bei diesen Kommandos ber den Original-Ausgabedateinahme zusammengebaut.
           04.08.97  STDMSK:  Bei "Bitte Druckertreiber ausw„hlen" *.* statt *.DTR
                     DIRLIB:  dir() mit DIR_OPTIMIZE_RETURNPATH fr Namensoptimierung eingebaut.
           05.08.97  WINLIB:  bei Suchen war ggf. Maskenfeld nicht betretbar, in input_mask_item bei Mask=NULL accesslvl auf 0xFF gesetzt.
           06.08.97  DFED3LIB:ed_chgrec() mit edRead() bei Massen„nderung versehen, wegen ArtLog.
                     FAKT.H:  FAKT_ARTIKEL_LAGERLOGBUCH fr Artikelbuchungslogbuch eingebaut
                     FFART:   Artikelbuchungslogbuch eingebaut
                     FFARTBCH:Artikelbuchungslogbuch eingebaut
           08.08.97  FFDISPO: Korrektur von ArtDispo ALT-F8 Fenster: Bei mehr als 10 eintr„ge in einer KW, wurden
                              Mengensummen der fehlenden Eintr„ge nicht mitgerechnet!
                     FFFIBUDV:Beleg->Stapel: Barkassenbelge nach Kundennummer korrekt aufgel”st, SERNUM==BARTH korrigiert (fr Sammelkonto)
                     PRJPRM:  In Config.rec wird Revisonsnummer auch beim erstmaligen aufruf eingetragen, nicht erst ab dem zweiten Aufruf.
                              (Problem Update BDE Fa. Hill)
           14.08.97  FFVERK:
                     FFRECH:
                     FFSTDVK: Fremdw„hrung im Verkauf aktiviert
                     PRNLIB2: DvlPreProcessor fr DVL-Textersatz aktiviert (fr Fremdw„hrungsrechnungen) [Textersatz]
                     CONSOLE.H: In MaskItem "unsigned char prtbuff" fr weitere Flags extflags2 entfernt.
                              Wird fr Handleumstellung (bit 7 wird mit verwendet, Flag fr Tempor„rhandle) ben”tigt.
                     CONLIB:  Zeichen œ mit Keycode 'a' zugelassen (a%0)
           20.08.97  FFFIBU21: DATEV: setUpStapelMask() FIBU-Buchungen in Stapel exportieren,
                               -> Alle Buchungen mit einem Verbindlichkeitenbezug werden gedreht (Konto getauscht, Betrag negativ)
                               Datev kann keine Buchungen mit Skonto verarbeiten, bei dehnen der Kreditor nicht im Gegenkonto steht!
           26.08.97  DFLOADZW: closedf( loaddf) bei Nachladegruppen aus Schleife genommen
           28.08.97  FFARTPR:  load_artikel2position() KdArtTxt Kundenartikeltexte auch aus Feld der
                               Belegmaske geladen. Wert % 10 wegen Fremdw„hrungskennzeichen
           29.08.97  DFOBJ:    eGetRec() bei MAI_EXTTYPE um *(double*) zur bergabe von Zahlenwerte erweitert.
                     FFVERSND: Erste Versandautomatik eingebaut.
           01.09.97  PRNLIB:  DVL-Kommandos erweitert:
                              @#TranslationOn "X"; šbersetzungstabelle [TextersatzVorlageX] und [TextersatzAusgabeX] einschalten.
                                                   X steht fr Tablle 1 bis 8
                              Es k”nnen mit dem Kommando mehrere šbersetzungstabellen gleichzeitig eingeschaltet werden. Es wird
                              dann zuerst die Tabbele 1 und dann die Tabelle 8 angewendet!
                              [TextersatzVorlageX] gild fr alle fest in der Vorlage eingetragenen Texte.
                              [TextersatzAusgabeX] gild fr alle Texte die ber Variablen oder Felder ausgegeben werden.
                              @#TranslationOff; Abschalten alle Translationstabellen
           02.09.97  PRNLIB:  Translation-Korrektur
                     FFFIBU21:setUpStapelMask() -Korrektur (Kontennamen auch tauschen).
           10.09.97  DFLOADZW:Bei kopieren von Belegen werden alle Staties gel”scht
                     PRNLIB5: Bei [Textersatz] Fehler in replace-Routine beseitigt.
           11.09.97  DFEDLIB: setSummenSpalte() um itemArrayIndex zur Summierung von indizierten Spalten erweitert.
                     PRGLOAD: SetAddUp um Parameter itemArrayIndex zur Summierung von indizierten Spalten erweitert.
                     FAKT.H   Schalter FAKT_STATAE eingebaut (Dafr gab es bisher keinen).
                              Schalter FAKT_STATAE_POS_DATUM eingebaut. (Auftragseingang mit explizitem Eingangsdatum in der Auftragsposition).
                     FFFIRUMS:bei work_arraymai() bei Zahlenarrays auf [12] (13. Element) prfen und wenn vorhanden Summe bilden.
                              -> Bei Statistik-Monatszeilen mit Gesamtsumme in [12] wurde bei einem Jahresbertrag oder Statsitiklauf evt.
                                 die Gesamtsumme des Vorjahrs nicht gel”scht.
           24.09.97  FAKT.H:  Diverse FAKT_ Schalter fr Baustellen einegabut
  V2.1-12  25.09.97  PRJ.H:   Release -12 wegen FIBU-Zertifikat
           29.09.97  FFUMSATZ:calc_tagesumsatz() um Archiv fr Rechnungen, Gutschriften und Barkasse erweitert.
                              Damit berechnet die alte Statistikermittlung (Rechnung Tagesabschluá/ Monats-/Jahresberechnung) auch das Archiv mit.
           01.10.97  PRNLIB:  Druckoption - bei Flieátexten eingebaut -> keine Leerzeichen beim Einrcken (fr Export)
           02.10.97  PRNLIB:  fixTextBuff von 200 Byte -> 4k vergrӇert
                     FILEEDIT:bei fileedit linebuffer von 500 -> 4k erh”ht
           07.10.97  DFIMP:   INLINE-Importzeile von 2k auf 4k erh”ht.
                     PRNLIB:  Option [Vt:d"x"] zum L”schen des Zeichens "x" in der Variable Vt
           08.10.97  WINLIB:  ftoengstr() und convert_mai_input(): Fehler bei Enginier-Darstellung beseitigt: Statt 'P'eta wurd 'E'xa dargestellt.
                     FFRECH:  Von Auftrag Rechnung: In Kopfzeile stand "Lieferscheine von bis" statt "Auftr„ge von bis" (Lieferscheine von bis nur noch bei Fa. Dietz).
           09.10.97  PRNLIB2: set_print() filename mit ? oder ?? zugelssen, zur automatischen Generierung von vortlaufenden Datei (fr Export).
                     PRGLOAD: Neue Optionen fr PrintFile und Change eingebaut
                              Kommando Change um Modus 8/9 erweitert (NO_USER_ASK)
                              Kommando PrintFile um Modus 8 erweitert (NO_CHANGE_ASK)
                              Kommando PrintFile um Modus 16 erweitert. Ausgabe nur von Selektierten eintr„gen.
                                                                        Ist keiner selektiert wird auch nichts ausgegeben.
                     DFIMP:   Erweiterung bei INLINE um @D..; Parameterangaben in Inlinezeile
                              M”glichkeit der šbersteuerung einer solchen Eingaben durch Kommando INLINE!xxx anstatt INLINExxx.
           17.10.97  PRNLIB4: Bei drucken() Fehler bei ausgabe von \@\@ -> @ beseitigt (ein Byte wurde zuviel am Schluá des fixTextBuff ausgegeben).
           20.10.97  DFED3LIB:ALT-V zur Ausgabe eine Export-Dvl in a.asc eingebaut (Taste +, dann Alt-V).
                              Bedienung wie Taste ALT-W.
                              Taste ALT-W zur Ausgabe eine Dvl mit Felder die man zuvor mit 1 2 3 ... gekenzzeichnetz hat (Taste +, dann Alt-W)
                              (schon l„nger verfgbar, hab ich aber im rev-log nicht gefunden mr).
           23.10.97  FFVERK:  Versandkosten-Mehrwetssteuer mit EG ohne ID korrigiert.  getVersandMwstAVal()
                     FFSTDVK: isNoSteuer_() EG Nummernprfung von leer auf mehr als 2 Zeichen umgestellt.
                     FFFIBUDV:Bei OP -> Stapel, bei EG Buchung wird mindestens das Land gefordert
                     FFFIBU21 Bei export FIBU->Stapel mit EG-Tatbestand, wird mindestens das EG-Land verlangt
                     DFPDF...:Indirekter F1-User Zugriff: z.B. Angebot PG-Feld wird ber Kunden-PG Feld an Userdatei des Kundenstamms angekoppelt
           27.10.97  PRNLIB:  FixTextPuffer (4k) wird allokiert, und nicht vom Stack geholt (StackOverflow)
                     FFARTBCH:Seriennummernregistratur auch fr Komplettartikelproduktion.
                     FILEEDIT:Dateien >32k einlesbar gemacht
           03.11.97  CALCMAI: set_maiarrayval_( struct MaskItem *mai,short index, double val, BOOL& change) um change erweitert
                     FFART:   Artikelpreiskennzeichen 'W' fr "EK-Aufschlagspreis, ver„ndert sich mit EK abzglich Fremdleistung" eingebaut
           04.11.97  STRLIB:  strTokenCpyExt() um \r und \n erweitert
           05.11.97  PINBOARD:PingrӇe auf maximale BildschirmgrӇe begrenzt
                     PRNLIBX: StrVar von 90 -> 180 verl„ngert
                     FFBELPRU:Das Auftragsnummernfeld in der Wareneingangsposition hat Vorrang vor dem Feld aus der Bestellposition.
                              Die Wareneingangsmeldung zu einem Auftrag wird nur noch dann abgegeben, wenn zu diesem Auftrag keine
                              Rckbuchung stattfindet (z.B. Žndern -> Rckbuchung/Vorbuchung)
           11.10.97  DFED2LIB:get_autoinc2_mainumber() erst Minimumvergleich, dann stradd, wegen BuchJn 97.00001 add -> 98.00001 ohne Minimumbercksichtigung ##000001
           13.11.97  FAKTMAIN:set_pdfautoincnumstrMinMax() erweitert: Es wird nicht nur bei Belegnummernvorgaben ##.... sondern auch bei Belegnummernvorgabe ...##...
                              automatisch der Maximalwert auf ...##     gestetzt.
                              Fehler bei Maximalvorgabe von Karteien mit Kennzeichen PDF_BELEGNUM (##0000000) beseitigt.
                              z.B. wurde die Rechnung mit Maximalwert ##     vorbesetzt, aber bei Belegnummernvorgabe R##0001 (.##....) wurde
                              der Maximalwert nicht nachkorrigiert und blieb somit bei ##    !
           17.11.97  FAXLOG:  Faxware-David: saveTobitFax() um Syntax "David: $ANGBOT 1234567x -> 1234..789, versendet" erweitert.
           18.11.97  FFUMSATZ:calc_tagesumsatz() Fehler err -4 beseitigt. (tritt nur ohne Barkasse seit 29.09.97 auf)
           19.11.97  PRGLOAD: ExecutePrintText um close_all_childdf() erweitert.
                     FAKTEDIT:Belegbearbeitung mit Mausklick auf Menzeile nicht merh verlassbar.
                     FFPROD3: Meldung "mai 54 == NULL" bei von Auftrag Produktion anlegen beseitigt.
           25.11.97  PRNLIB:  DVL-Kommandos erweitert:
                              @#TranslationOn "0"; Feldnummernersatztabelle einschalten.
                              Diese Tabelle ersetzt alle Feldnummern der [C, [c, [B und [R Kommandos w„hrend des Druckvorgangs.
                              Syntax:
                              [Feldnummernersatz]
                              Maskennummer,Originalfeldnummer=NeueFeldnummer
           27.11.97  FFPROD2: Produktions-Masterabschluá: Fehler bei IstNeu und IstAlt-Optimierungsvergleich beseitigt.
           03.12.97  DFPDF:   Error #-4. Can't add dynpdf '%s' code %d" wird nicht mehr gemeldet.
                              (Feld nicht vorhanden)
           10.12.97  ....:    Alle n”tigen Funktionen fr den einfachen Datenabgleich eingebaut:
                              DFIMP, STDPRJ2, FAKTMAIN, FAKTEDIT, DFPRN, PRGLOAD, PRGLOAD2, SECURITY (Bit 0x10 Erfassung)...
           16.12.97  FFERLBU: Beim Verkauf erst Zugriff auf KostSt "EkKostSt#VK" und wenn nicht
                              vorhanden auf "EkKostSt" (Erst im Artstamm, wenn leer dann in Warengruppe).
                     FFPROD2: Masterabschluá -> falsche Produktion wurde abegschlossen. Fehler beseitigt.
           17.12.97  FFEINK:  choose_liefartnum() bei Einkaufspreise mit Lieferantenrabatten wurde der Rabatt mit gMIPreis() geladen
                              (um PE heruntergerechnet -> falsch)
                     FAKTEDIT:WM_DUPLIZIEREN eingebaut.
                     FAKTMAIN:Prodution duplizieren eingebaut.
           19.12.97  FFUMSATZ:calc_tagesumsatz() Summe der Belege wurde nicht ausgewiesen. (seit Archiv-Einbindung)
           07.01.97  DFLIB:   Selektionspuffer bei Protected-Mode von max 0x3FFE auf 0x3FFFFFFE erh”ht
                     DFED2LIB:Z„hlstellenanzahl 4 -> 5
           08.01.97  DFPRN:   LPT4 bis LPT9 bei der Erkennung eingebaut.
           09.01.97 ûFFARTPR: load_artikel2position() 'X'-Artikel wurden wie 'J'-Artikel geladen!
                              ge„ndert auf 'X' wie 'K'!
           12.01.97 ûFAKTPRJ: Bei getMwSt() ohne Datum wird das aktuelle Tagesdatum verwendet.
                              Fehler bei Artikelstammmaske (ohne Datumsfeld) und MwSt-Umstellung.
           13.01.97  FFFIRUMS:jahresumsatz_uebertragen() im Artikelstamm wird jetzt auch die LS-Statistikzeile gel”scht
           14.01.97  FFPROD3: Bei Auftrag zu Produktion bei abruf mehrer Auftragspossitionen werden ldf. Nr bei PosNr
                              der Bauzettelpositionen vergeben. Bercksichtigung der hirachischen Aufl”sung in diesem Fall.
                              Kennzeichen 'E' fr Externe Artbeitsgang (Fremdproduktion) eingebaut
           15.01.97 ûDFPRN:   dfprint_() bei Modus PRINT_ALL wird ab sofort Anzahl ber df_getrecanz() geladen, nicht mehr ber
                              df->rec.data->file.reccnt (bei unge”ffneter Datei 0!)
                    ûFFARTPR: ArtList_func() 'E' Positionen werden als Fremdleistung kalkuliert, nicht F-Positionen
                              load_artikel2position() 'F'-Artikel wurden wie 'J'-Artikel geladen!
                              ge„ndert auf 'F' wie 'K'!
                    ûFFFIBU2: Nullwertige-Verbindlichkeiten k”nnen Bebucht werden, auch mit Steuerkonten, aber ohne Skonto
           16.01.98 ûFFERLBU: In Warengruppe die Erl”skontentabelle aktiviert, jetzt wird auch Ausland
                              Verkauf ber Positionsplittung zerlegt.
                              Aufwandskonto im Einkauf wird mit der neuen Tabelle nur noch benutzt,
                    -         wenn eine Kostenstelle angegeben ist UND etwas im AwKonto enthalten ist!
                              (bisher auch wenn das AwKonto leer war).
                    ûFFFIBU2: chkMaiKto() U/V H/S Kennzeichnung berarbeitet:
                              wenn Finanzkto zuerst mit z.B. 8400 ausgefllt -> 'S' dann korrektur nach 'H'
                              Gegenprfung falls maske gel”scht und in 99 eingetragen wird 'H' -> 'S'
           20.01.98  FFFIBUDV:Kreditorenkonto in Verbindlichkeitenmaske wird verwendet
                     FFWEG:   Verbindlichkeit von Wareneingang/Warenrcksendung:
                              evt. vorhandenes KredKto wird gesetzt
           21.01.98  FFWARTVE:Wartungsvertr„ge k”nnen jetzt mit Kennzeichen 'M' auch korrekt durch
                              manuelle Rechnungen fortgeschrieben werden
           26.01.98 ûPRNLIBx:
                    ûDFPRN:   Erweiterung um die Druckoptionen "Anschluá nicht prfen" und "Ausdruck an MS-Win Spooler" erweitert.
           27.01.98 ûFAKTSUB: Sammelmahnung l„uft jetzt auch ohne Kundennummer durch
           28.01.98  DFPRN:   Netzwerkdrucker wird bei "Drucknschluá nicht prfen" nicht mehr geprft.
           29.01.98  DFxLIBx: newWriteDeleteCnt bei Rec-Stuctur und maxSaveCntEdit bei Df-Struktur zur Verwaltung
                              der Eingabe einer bestimmten maximalen Menge von Datens„tzen.
                     FFBELPRU:Bei Seriennummernerfasssung Maximalbegrenzung eingebaut.
                     PRNLIB5: AdrVar: Bercksichtigung von NAME3, falls NAME3 existiert,
                              wird "Ortsteil" nicht bercksichtigt
           30.01.98  PRNLIBx: str2standard @->@@ und standard2str @@->@ eingebaut.
                              Option [Vt:E...] (@->@@) und [Vt:e...] (@@->@) eingebaut.
                              Ausgabeformatierung [Cxx;E] (@->@@) und [Cxx;e] (@@->@) eingebaut.
           02.02.98  FFFIBU2: chkSetAllKto() Sammelkonto OP/Verb wird nur noch ber Debitor/Kreditor entschieden!
                              chkSetAllKto() zus„tzliche Prfung auf Steuerabsplittung Soll oder Haben gegen Personenkonten (gesperrt)
           05.02.98  DFOBJ:   in edOpenMask() setUpDynPdfOnMask() eingebaut. Damit sind die '>'-Zeichen bei "Beleg schreiben" sofort sichtbar.
                     FFRECH:  Meldung "Bezahlt-Betrag = 0,00 DM?" nur noch bei Kennzeichen 'B'.
                     FFSTDVK: Bei "Abt." ber Kundenmitarbeiter, hat NAME3 vorrang vor NAME2
           09.02.98  FFFIBUDV:Meldung bei Beleg->Stapel "Automatik:" zu "OP...:" oder "VB...:" ver„ndert.
                     NETLIB:  get_message() Sicherung fr zu groáe Datenpakete eingebaut
                     FFFIBU21:fibuBuchungToStapel() abweichendes Wirtschaftsjahr bei der Datumsverwaltung/-prfung bercksichtigt.
           10.02.98  FFOFFPOS:beleg_umsatzbuchen_() beim Speichern einer neuen Rechnung wird "OP-Eintrag ohne Nummer" nicht mehr ausversehen geprft.
           18.02.98  FFFIBU2: Datumsfeld in Nebenbuchungen wird bestckt.
                     FAKTMAIN:Bei Datenbankaufruf ber Axxx-Code wird Nebenbuchung immer mit EDIT_SHOW angezeigt
           19.02.98  FFFIBUDV:Im OP und VB werden die Personenkonten beim Kennzeichnen nach Stapel->FIBU zus„tzlich zum '!' gesetzt
                     PRNLIB:  Neue Funktion fr Konten Periodensumme:
                              Soll  [V1:pS"jj.pp"]
                              Haben [V1:pH"jj.pp"]
                              Saldo [V1:pD"jj.pp"]
                     FAKTPRJ: Archiv bei FIBU-Buchungen und Nebenbuchungen abgeschaltet
           25.02.98  FFFIBU21:chkOpVerbNew() eingebaut: Bei Neu-Anlage einer Buchung mit ReNr aber ohne OP/Verb-Verweis wird austomatisch
                              nach Neuanlage eines OP/Verb gefragt.
                     FFFIBU2: chkSetAllKto(): Prfung der šbereinstimmung der Personenkonten in der Buchung und in einem zugeordneten OP/Verb eingebaut.
           27.02.98  FFWEG:   wareneingang_rechnung() bei Wareingang „ndern und Rechnung schon in FIBU, Sperre eingebaut
                     TEXTEDI2:Taste Shift-Ins aktiviert (funktion wie Taste Ins)
                              ALT_M fr [] Block setzten
                              ALT_S fr suchen
           03.03.96 ûPRNLIB4: print_list() fr Change-Kommando erweitert: Wenn ber @Cxx; gedruckt wurde, wurde
                              das Listenende (Hunk Ende) mit dem n„chsten Datensatzt gedruckt. War in dem moment grad
                              ein Umbruch zugange, wurde auch der Kopf mit dem n„chsten Datensatz gedruckt -> z.B. bei einem
                              FIBU-Kontenblatt wurde im Kopf das falsche Konto angedruckt.
                              ACHTUNG: Beim Change-Druck-Modus werden nun die Printkommandos [MSave], [MLoad] und [MOrig] verwendet!
                                       Diese stehen somit in diesem Modus nicht mehr zur Verfgung!
           06.03.98  FFFIBU2: Das Skontofeld wird nur bei vorhandenem Saldo !=0 berechnet.
           11.03.98  FFFIBU2: Sammelausbuchen von Verbindlichkeiten und šberweisungen eingebaut.
                              Gegenkennzeichnung der šberweisungen mit 1 bis 5 im Vermerkfeld.
                              Bei Verbindlichkeiten werden nur solche ohne vorhandener Buchung akzeptiert.
                              Bei šberweisungen werden Eintr„ge mit gesetztem Kennzeichen nicht nocheinmal verbucht.
                              Die Sammelausbuchung kann auch šberweisungszeilen ohne Verbindlichkeitenzuordnung verbuchen.
                              Welche Zeile verbucht wurde wird im Buchungssatz im Feld "bezahlt per>" mit 1 bis 5 gespeichert.
                              Zuordnung beim Gegenkennzeichnen zuerst ber Verbindlichkeitennummer, dann ber Zeileninfo 1-5, dann ber Betrag.
                     FFPROD2: Aufl”sung von Auftr„gen in Prod:
                              1.Auftragsposition mit Unterlisten und -> Ebenen in unterliste aufl”sen,
                              2.Auftragsposition ohne Unterlist -> info der Aufl”sung ging verloren. Problem beseitigt.
           11.03.98  POPUPMNU:infoDfMenueAuswahl() Fehler bei zu ID-Nummern >127 ab ende des Menues beseitigt (lastMainMenuId war char!)
           12.03.98  STDMSK:  Systemmenuepunkte mit ID >=200 oder <=0 mit Meldung beim Speichern versehen.
           13.03.98  FFDISPO: Betonmodul: Rechnung::automatik() um Modus 'T' erweitert: Alle Artikel einer Art werden pro
                              Kunde und Baustelle zusmmengefasst (Bisher nur Modus 'R' Komplettrechung ber alles, oder ''
                              Sammelrechnung pro Baustelle pro Kunde.
           17.03.98  FFBSTLST:Bestelliste->Bestellung edF2writeRec() fr Makroprogramme beim Speichern eingebaut.
                     DIRLIB:  textdir() mit Delete-Option ausgerstet, damit sind DVL's und DTR's aus der Auswahl heraus l”schbar (nur mit Supervisorrecht).
           23.03.98  PRNLIB3: get_variable_() Meldung "Feld mit Kennung ..." uf "Feld mit Nummer %d ('%s') ..." ge„ndert. (wegen Translation)
           23.03.98  STDMSK:  Auswahl nun *.IM? statt *.IMP
           24.03.98  FFAPOHY: NAME2 wird in Artikelposten falls vorhanden gesetzt.
                     FAKTSUB: mahnung_cmp_func() Mahnsutfe 5 wird jetzt wie in der
                              Dokumentation beschrieben verwaltet.
           01.04.98  FAKTEDIT:edit_datazwsp_loeschen() err so eingekoppelt, daá
                              eine Weiterverabeitung abgebrochen wird. Insbesonders eine
                              Sicherstellung, daá in Verbindung mit dem TTS-System bei einem
                              Material-Verbuchungsfehler ein l”schen des Belegs verhindert wird!
           04.02.98  DFLIB:   set_dfmaidata() l„dt jetzt bei nextgroup auch MAI_TYPE_CHOOSEFLAGS nach.
           02.04.98  DFLOADZW:load_dfzwsp() l„dt jetzt bei LDZS_NEWDATE sofort das neue Datum
                              ->bei MwSt-Wechsel wird korrekte MwSt ausgewiesen.
           07.04.98  FFARTPR: Einmalmengen werden mit EK fr Einmalkosten multipliziert.
           20.04.98  DFEXTFNC:"Netzwerkverbindung" connectinfo() zeigt nun auch die UserID an.
                     TOBITFW: Neue Logbuch-Leserroutinen fr Tobit FAXWARE und DAVID eingebaut.
                              Damit wird eine Fax-Rckmeldung sichergestellt.
                              Konfiguration von Faxware/David erforderlich (*.INI: DupLog=%08x.DLG)
           21.04.98  FFARTBCH:beleg2bestelliste() alle Positionen mit Artikelnummer und ohne L im BezugsTyp
                              werden geprft. Evt. Frage nach Lieferant wird unterdrckt.
                              Damit werden jetzt auch Bestellvorschl„ge ausgel”st, wenn z.B. ein Lieferschein
                              von einem Auftrag geschrieben wird und im Artikelstamm Kennzeichen 'B' oder 'M' hinterlegt ist.
                     FFARTPR: PE-Feld (NOTSAVE) in der Staffelpreisemaske wird bercksichtigt.
           22.04.98  FAKTPRJ: Mit FAKT_QMWEGFREIGABE wird automatisch Ext104 mit "QmAnwe" belegt.
                              Die Zeile Ext104 darf nicht mehr in FAKT.FRC eingetragen werden!
                     FFWEG:   QM-Wareineingngsfreigabe: Gesamstatus wird anhand des Einzelstatus gesetzt.
                     FFART:   Bedarfszahlenbersicht aktiviert.
           06.05.98  TOBITFW: Bei Empfangsmeldung "empfangen" statt "versendet" eingebaut.
           15.05.98  FFFIBU2: Das Verzugsfeld wird nur bei Saldo >0.0 (>Verzug) berechnet.
                     FFFIBUDV:Meldung  "Beleg %c%s ist nicht vorhanden! (Abbruch)" bei Verbindlichkeitenaufl”sung
                              zu "Wareneingang/Warercksendung ...." ge„ndert
                     DFED3LIB:Problem beim Archivieren (einer, aber nicht der letzte, wurde nicht archiviert) beseitigt
                              (get_record_pos problem bei get_autoinc2_mainumber( mai, sdf) mit access_record( &df->rec,B_GLESEQU+B_GKEY)
           12.05.98  FFERLBU: bei Buchungsstapelerstellung KtoPosAdd() von LoadFromGroupRef()
                              auf LoadFromNumRef() umgestellt. Damit Problem bei BSB Stapelerzeugung mit
                              ArtIndex = 9 fr VK Artikel beseitigt.
                     STDPRJ:  logFileName[MAXPATH] von 32 auf MAXPATH erh”ht.
           14.05.98  FAKTEXT: Fibu in Stapelexport um Menuepunkt " Buchungsjournal alle Buchungen exportieren " 0x81e erweitert.
           15.05.98  FFFIBUDV:Bei NULL-Verbindlichkeit -> Stapel wurde mit Auslandszeichen 'a' f„lschlich eine Buchung mit Betrag Null erzeugt.
           25.05.98 ûPRGLOAD: bei WriteObligation() fehler beim Parameter Bezahlt-Datum beseitigt.
           02.06.98  FFPPS:   Erste PPS Programmteile in betrieb genommen.
           03.06.98 ûDFED3LIB:ed_block() bei Drag und Drop schreiben nur auf Datei mit Modus EDIT_NEW zugelassen
           05.06.98 ûFFART:   Bei Artikel kopieren wird keine Sachnummernliste mehr mitkopiert
                              (ansonsten -> gleiche Sachnummer eines Kunden bei zwei Artikel, NICHT M™GLICH!)
           09.06.98  FAXLOG:  saveTobitFax() bei Syntax "David: $ANGBOT 1234567x -> 1234..789, empfangen" wird kein Kennzeichen in einem Beleg mehr gesetzt
                              damit ist das Problem, daá ein Fremdes IFW ein E-MAIL zusendet, das gegenber-IFW ein Kennzeichen '-' bei der fremden Belegart/Nummer setzt!
                    ûFFBELPRU:SerNumErfassDfo::workOnPos() bei Positionsauswahl "Drucken" freigegeben,
                              somit auch bei MAKRO-Kommando "SerNumPosEditFile"
                    ûFFWARTVE:Abweichende Rechnungsadresse wird bercksichtigt
                    ûFFSTDVK: bei standardfunc_verk() wird bei FNC_BELEGEDIT_MASKOPENSETUP (Prfung des Kunden beim Masken”ffnen zur Belegbearbeitung)
                              nach check_kunde() ein ReRead zur Verhinderung von Datenver„nderungen von check_kunden durchgefhrt
           10.06.98 ûTEXTEDIT:Eingabe von ALT 12 (FormFeed) m”glich.
                    ûPRNLIB4: Bei Ausgabe von FormFeed wird ein IFW Seitenumbruch erzeugt.
                              Der erste LISTENKOPF wird erst vor der ersten Position ausgegeben ->
                              Bei Angeboten mit Langen Kopftexten wird kein unn”tiger Listenkopf ausgegeben, und der
                              Text auf der Folgeseite nicht durch ein Listenkopf unterbrochen.
           10.06.98 ûDFMULTI: MultiDFO::printListe() Zuweisung des DfHandles dfnr an alle Hunk's beim Drucken!
                              Damit ist das Problem beim Listendruck auf anderen Hunk als ALT mit [D,mit 'M'- Option beseitigt.
                              (es wurden immer gleiche Eintr„ge gedruckt K&Oe).
           17.06.98  FFWEG:   Bei Wareneingang kopieren, Meldung mit Feld 27 aus Lieferantenmaske beseitigt.
           18.06.98  BRECLIB: in open_record wurde am 09.06.98 Logbuchfunktionen eingebaut und der ablauf mit den Fehlermeldungen "err" auf einen einzigen Return verlegt.
                              Dabei wird unter Umst„nden (User besitzt ein aktuelle Datenbankposition in eine ganz leere Datenbank) der Fehler "9" (statt -9) generiert.
                              Fehler beseitigt und Logbucheintr„ge nur noch bei gesetztem Fehler.
           22.06.98  PRNLIB?: DVL-Kommandos erweitert:
                              Neue šbersetzungstabelle fr Flieátextersatz eingebaut:
                              [TextersatzAusgabeFlexTextX]
                              Innerhalb des Textersatzes sind Feldzugriffe mit [] m”glich!
                     FFPROD2: bauzettel_erstellen() bei "von Auftrag Produktion anlegen" wird nach Abruf weiterer Positionen fr
                              eine zweite Produktion die Prod-Maske korrekt ausgefllt.
           01.07.98  STDPRJ:  display_message() Textpuffer von 80*4 auf 200*4 erh”ht,
                              wegen berlangen DAVID-Meldungen. Diese haben ber den Puffer
                              hinaus geschrieben, und damit die Logfile-Namensvariable zerst”rt ->
                              Bei Logbucheintr„gen dubiose Meldungen "Can't open File xxxx.xx)"
                     FAKTMAIN:Bei Erfassungsstelle auch das Produktionsmen nur auf "Anschauen" begrenzt.
           02.07.98 ûPRGLOAD: SetCursorPosItem setzt jetzt auch die "newinit" - Position
           03.07.98  FFEINK:  Fremdw„hrung im Einkauf aktiviert.
           07.07.98 ûFFARTBCH:Auslanskennzeichenkontrolle der Belegpositionen zum Belegkopf aktiviert
                              (bisher nur mit Fremdw„hrung)
                    ûFFERLBU:
                    ûFFFIBUDV:Zus„tzliche Spalter "Voraus" bei den Erl”skontenparameter. Damit wird bei einer Vorausrechnung
                              zuerst versucht die Erl”se gegen diese dort eingetragenen Konten zu buchen. Sind keine Konten eingetrgen,
                              so erfolgt die Kontenfindung wie bei einer normalen Rechnung.
           08.07.98  FFBSTLST:Lieferant wurde bei Bestelliste->Bestellung nicht mehr in Bestellkopf eingetragen.
           30.07.98  BRECORD.H: REC_RKSIZE von 15 auf 40 erweitert
           06.08.98  FFVERT:  bei der Vertreterabrechnung ist nun auch F2 zum Maske schlieáen erlaubt.
           07.08.98  FAKTSUB: Bei Sammelmahnungen werden Gutschriften ohne Mahn-Verzugstage selektiert.
           10.08.98  FFOFFPOS:Storno mit bezahlt und FIBU mit Extraabfrage erm”glicht.
                     FFRECH:  OffPos_func() bei Storno der Saldo = -bezahltbetrag gesetzt
                              Auch Gutschriften sind nun Stornierbar
           12.08.98  FFFIBUDV:Auch Ausgangsstornos werden jetzt bei der Stapelerzeugzung bertragen.
                              In Verbindung mit der FIBU findet eine Prfung auf Steuersatzt„nderungen (Umsatzsteuertabelle Steuersatzt 1)
                              statt.
           19.08.98  FFEINK:  Vollst„ndiges aktivieren der Einkauf-Fremdw„hrungs funktionen.
                     WINLIBx: Einfhren einer besonderen Darstellungsform des Kursfeldes.
                              Eingabemaske des Kurses nach z.B. "100 sfr = 124,50" (reziproker Wert gegenber bisher)
           21.08.98  PRNLIB4: reset_dvl eingefhrt: damit wird bei einem CHANGE-Formularwechsel (Sammelmahnung) die Translationtabelle
                              nicht mehr verworfen. (Der Erste Druck war ok, der Folgedruck war ohne Translation)
           24.08.98  FFSTDVK: Bei F3 zum neunummerieren: L”schen der ArtNr und der Materialliste bei 'B' 'G' 't' 'T' und '='
           26.08.98  LSMASK:  FileMask size 8000 -> 10000 Byte
           27.08.98  FFSTDVK:
                     FFEINK:  Bei Fremdw„hrung wird beim Abruf eines Kunden/Lieferanten ohne W„hrung der Kurs aktiv auf 0 gesetzt.
           02.09.98  INPLIB:  Schutzverletzung bei F1 (mit Fremdw„hrung) behoben
           09.07.98  PRGLOAD: SetFileFilterExt hat mit Release AktDfo gel”scht. auf Dfo ge„ndert.
           10.09.98  PRGLOAD: GetRecord Parameter 2 bis 4 korrigiert
           14.09.98  FAKTMAIN:FAKT.INI um Kommandos erweitert:
                              [FIBU] LeitWaehrung = "DM "
                              [FIBU] EuroKursLW = 0.0
                     STDPRJ_: convertLeitWaerungTxt() wandelt beim Laden einer Maske den Text $$$ in den Text
                              der in der Variable Screen.LeitWaehrung ( = "DM ") gespeichert ist um.
           14.09.98  WINLIB:  sprint_maiextT() bei Flieákommazahlen mit mehr als zwei Nachkommastellen, die nicht ins Feld passen, werden nicht mehr
                              die alle Nachkommastellen bei der Anzeige gel”scht
           15.09.98  FFSTDVK: Umrechnung der W„hrung in einem Beleg
                              W„hrungsdatenbank wird geschlossen
           17.09.98  STDPRJ:  message2buff() Formatierung der Textausgabe gekrzt: es wird nur noch
                              der Wochentag und die Uhrzeit mit Stunden und Minuten ausgegeben.
           24.09.98  FAKTMAIN FAKT.INI um Kommandos erweitert:
                              [System] KbTest=0
                              [System] UseBiosKey=0           //bioskey( 1) statt kbhit() verwenden
                              [System] WaitForKeyExtraEvent=0 //Anzahl extra-key events bei wait (fr Cirix Erkennung)
                     SYSLIB:  Tastaturabfrage fr Winframe von Cirix optimiert
           25.09.98  SERV:    Argumentenanzahl 4 auch zugelassen (wegen iniFileName)
                     FAKTMAIN:Laden einer anderen Konfigurationsdatei zugelassen
                              Anzeige der selben im Info-Fenster
           25.09.98  FFWEG:   Bei Rcksendung -> Verbind. clr_maibuff( 67) wegen unpassender Felder -> Zahlungsbedingung im Rechnungsdatum
           29.09.98  DFED2LIB:MaxListeVerschachtelung eingefhrt: normal 8, bisher 5
                     FAKTMAIN FAKT.INI um Kommandos erweitert:
                              [System] ItemTreeMax=8
                     DFEXTFNC:in getCommandPara() dh2->loadnwnr=dh->loadnwnr und dh2->nwnr=dh->nwnr
                              entfernt, da bei Druck-Rekursion die Originalwerte zerst”rt werden!
           30.09.98  PRNLIB:  print_hunktext() bei Kommando @Hnnn; alte Hunk-Parameter zwischengespeichert, wegen Rekursion
           01.10.98  PRGLOAD: Kommando ImportFile um die M”glichkeit der Variablenangabe erweitert
                     PRGLOAD2:getVar() mit Erweiterung "File:" ausgestattet
                     PRJPRM:  Meldung "Fehler %d beim Lesen der Konfigurationsdatei Block %d! (#%d)" Blocknummer und Fehlernummer waren vertauscht
           01.10.98  DFEDLIB: ed_edit() bei Openlist wurde in Maske in Show-Mode nach betreten und verlassen
                              der Openlist der Show-Modus zerst”rt.
           05.10.98  FAKTSUB: edit_prgpara() PRJCNF_AKTNOEK_ANGEBOT eingebaut
                    ûFAKTMAIN:EK-Abgleich bei Angebot -> Beleg (PRJCNF_AKTNOEK_ANGEBOT) aktiviert
                              auch bei Angebot kopieren
                    ûDFLIB:   drop_df_() von Tempor„rdateien werden die Grundeinstellungen nicht mehr bernommen
                              (nach Beleg „ndern, war der Fokus in der Datei weg)
           07.10.98 ûFFEINK:  chooseLiefArtStaffel() setzt den StaffelEK jetzt auch bei "nicht Žndern"
           13.10.98  PRGLOAD: Kommando TransferSelectionToMarkedFile eingebaut
           14.10.98  FFCPSHOP:Abzurechnende Z„hlerst„nde werden 7-Stellig bis maximal 9 Mio in der Rechnung eingetragen
                              bisher nur 6-Stellig (max 999 tausend)
           15.10.98  FFFIRUMS:firmenumsatz() Neue Maske mit Ums. und RohG statt ReAg ReRG, plus Skontozeile und Jahressummen.
                              Ums und RohG wird ber die OffPos Datenbank ermittelt.
                     FFART:   Artikel_func bei Wahrengruppenbernahme mit F1-Return Žnderungsabfrage reaktiviert
                     DF.H:    Z„hler und Maximalwerte fr den Selektionspuffer auf long umgestellt.
           21.10.98  DFPRMLIB:Browse::makeText() $$$ -> Leiw„hrungsbezeichnung.
                     DFEDLIB: edit_data() im Archiv (CTRL_F7) das L”schen gesperrt (z.B. Lagerbuchungen buchen zurck!)
                     FFFIRUMS:artums_uebertragen() Warengruppen-Gruppe bercksichtigt
                     DATELIB: adddate() und ddays() Schaltjahrhundert korrigiert
           22.10.98  FFARTPR: get_maipreisFW() bei der Preisfindung aktiviert ->
                              wird die gleiche W„hrung abgerufen, so bleibt selbst bei unterschiedlichem Kurs der Preis gleich.
                              Im Artikelstamm werden die neuen Fremdw„hrungsfelder 220-229 bercksichtigt.
                     FFART:   Berechnung fr neue Fremdw„hrungsartikelfelder 220-229 eingebaut.
           27.10.98  DFEDLIB: Beim Drucken wird der Drucker in der Sttuszeile eingeblendet
           28.10.98  DFPRN:   Beim Belegdrucken wird der Drucker in der Sttuszeile eingeblendet.
           29.10.98  WINLIB:  convDateStr() aktzeptiert jetzt auch die Datumseingabe 19102000
                              (konvertierung fr rckw„rtsgeschriebene Datumseingaben erweitert)
                     PRNLIB:  Option [Vd:vxxx] mit calcRechnungsValutaDatum() fr Valutaberechnung eingebaut
                     FAKTFNC: calcRechnungsValutaDatum() eingebaut
                     FFVERK:  OffPos_func() calcRechnungsValutaDatum() fr Valutaberechnung eingebaut
                     PRNLIB2: load_formular() um Kommando #ifsetopt( feldnummer, optionen) erweitert
  V2.1-13  30.10.98  PRNLIB3: get_variable_() zugriff [o oder [O wie [c oder [C eingebaut, nur ohne Nummerntranslation
                              [.EURKURS eingebaut
                     DFPRN:   druckerauswahl() globale Druckvorlagenoptionen von Druckermaske eingebaut
           02.11.98  FFSTDVK: check_kunde_() um nachladen der EuroId und des DebKto von abweichender Rechnungsadresse erweitert
                              (mittels loadKndRechAdrData()).
                              bei Lieferadresse und nach Abfrage "Dies ist eine LAdr... Rech Laden?" Ja, korrekte bernahme der
                              abweichenden Rechadresse
                     FFVERK:  OffPos_func() um nachladen der EuroId und des DebKto von abweichender Rechnungsadresse erweitert
                              (mittels loadKndRechAdrData()). Dies wird aber nur beim expliziten Abruf der Abweichenden RechAdr ausgel”st.
           04.11.98  FFERLBU: AddBelegPos2Kto() Verpackungskosten (Feld 17) wurden nicht bercksichtigt.
                     FFFIBU21:fibuJahresuebertrag() bei verschobenem Wirtschaftsjahr korrigiert!!!!
                              Konten werden jetzte unabh„ngig von ihrer Jahreszahleintragung kopiert
                     FFEXABR: ExtAbrAufPos_func() prodAnz von AufPos wurde von gegenbuchmenge abgezogen? ... beseitigt.
                     PRNPRM:  sprint_mai_len() bei printlen>0 wird optionale Zahlenformatierung verwendet
                              damit lassen sich mit option # beim Drucken die L„nge Formatierung.
           12.11.98  FFREPARA:repara_artbuchen() keine Leihger„tbuchung bei "BUCHEN_KEINBELEG"
                              (warenbedarf_neu_erstellen hat das Leihger„t immer vom Lager abgebucht!)
           25.11.98  FFART:   Fremdw„hrungsartikelfelder EK-Begrenzung und SP-Berechnung korrigiert
           03.12.98  FFBDE:   Kommando 221 eingebaut: wie 101, nur bei Kennzeichen X immer Anwesend (jumpOffset: nicht da 0, anwesend 1)*faktor
           04.12.98  FAKTFNC: BelegVonBisLDFO::SetUp() korrigiert: IsInit() Wert wurde nicht zurckgeliefert!
                              Damit funktioniert die kundenspeziefische Artiklestatistik wieder.
           07.12.98  FFPROD2: material_in_bauzettel() bei "Alle Istwerte eintragen" wird der EK jetzt nachgeladen.
           10.12.98  PRNLIB:  Bei Flieátextdruck, Vorprfung fr Flieátexte in einer Zeile fr X-Offset ge„ndert: [[] fhren
                              jetzt immer zum setzen des X-Offsets
           04.01.99  FFSTAKND:Kundenbetr„ge neu korrigiert das Feld Fibu-Saldo  falls falsch
           05.01.99  FFRECH:  Bei W„hrungen zus„tzliches Feld "1 EUR =" eingebaut
           07.01.99  FAKTMAIN:Euro=1.95583 als default fr die INI-Datei hinterlegt.
           11.01.99  FFWEG:   Bei warenrueksendung_gutschrift MwSt Berechnung mit Rechenpfad 12
           12.01.99  FFWEG:   wareneingang_rechnung() Meldung Verbindlichkeit xxx bereits vorhanden, vor der Meldung "in FIBU verbucht"
                              In FIBU verbucht wird nun auch ohne FIBU-Modul geprft.
           14.01.99  FFFIBU2: OP's sind nur noch bebuchbar, wenn existent.
           21.01.99  FFSTDVK: Bei W„hrungseingabe in einem Beleg (F1), wird der Kurs wieder angezeigt.
           26.01.99  PRNLIB:
                     NETLIB:
                     DFPRN:
                     FAKTMAIN:Direkter Druck in eine Novellqueue aktiviert.
                              FAKT.INI um Kommandos erweitert:
                              [NetWare] PrintQueueDirekt = 1
                              [NetWare] CaptureLPT = 2
                              Durch einem Zeichen '*' beim Druckername, kann der Direktdruck erzwungen werden.
                              Ein Dirketausdruck kann in der Statuszeile an einem '*' erkannt werden. Er
                              steht w„rend des Ausdrucks am Ende nach dem Text an "Drucker".
           26.01.99  FFVERK:  OffPos_func() bei Mahnung mit Mahnstufe, wurde der Verzugsbetrag auf Wert X
                              gestetzt (z.B. 2190,00). Dies trat ein, wenn zuvor die Untermaske Bemerkung
                              aufgerufen wurde. Fehler beseitigt.
           27.01.99  PRNLIB2: unload_dvl() aktiviert
                     DFPRN:   unload_dvl eingebaut: Bei Massendruck selektierter Rechnungen, wurd nach der
                              ersten Rechnung die Translationstabellen verworfen! Dadurch wurden keine
                              korrekten Euro-Rechnungen mehr gedruckt!
           28.01.99  DFPRN:   Bei Druck in Datei ber Kleinbuchstaben wurde nicht der ASCII-Drucker verwendet.
           01.02.99  FFPERS:  Typ '' auf 1 Anwesenheitstag korrigiert! Sonst wird der šberzeitabzug doppelt kompensiert.
           04.02.99  FFSTDVK: Bei F3 mit Fremdw„hrung (Preis anpassen) auf FW-Felder geprft -> bei RepPos kam mai==NULL Meldung.
                              Reparatur -> Lieferschein/Rechnung, Positionen ohne ArtNummer hatten kein Preis (wegen FW). Fehler korrigiert.
           08.02.99  FFBSTLST:Bestellvorschl„ge Auftrag->Bestelliste bereits gelieferte Menge bercksichtigt.
           12.02.99  CALCMAI: str_numtext() Fehler bei Zahlen >64000 beseitigt (Zahl -> Text)
           16.02.99  PRGLOAD: Kommando LoadBrowseNr, SetBrowseItem, AppBrowseItem und DelBrowseItem eingebaut
                     STDPRJ:  Systemprogramme .$40 - .$56 fr Browser eingebaut.
           24.02.99  WINLIB:  print_mask_item_() Flieátextfelder werden nichtmehr ausgegeben, wenn sie per Rechte abgeschaltet sind.
                     DFEDLIB: ed_edit() nach ed_readrec und PRG aufruf, wird setRecDataRechte ausgefhrt. Dadurch wirken
                              sich Rechteeinstellungen wie z.B. "SetRecordRightsAccessLvlStandard" auf die Maske aus.
                              (fr NEW-Rechte bei spezifischen Maskenfeldrechte)
           03.03.99  FFVERK:  OffPos_func() Bei FW-Betrag eintragen, wird LW-Betrag automatisch gesetzt.
           03.03.99  FFVERT:
                     FFCPSHOP:bei 12V am 28.02.1999 wurde 31.03.1999 als Abrechnungszeitpunkt berechnet
           12.03.99  FFBSTLST:bestellungBestaetigen() DF_RESMHD1 rausgenommen (Kollision mit Fax-Rckmeldung)
           16.03.99  FFFIBUDV:Verbindlichkeit -> Stapel: Das Personenkonto aus dem Lieferantenstamm hatte vorrang vor dem Konto in der Verbindlichkeit
                     STDPRJ:  drop_all_closedf() ge„ndert, so daá erst alle niederwertigen raus, wegen akt_recpos in defdata
           22.03.99  DFED2LIB:ALT-F10 Auswahllisten, sortiet die Kennzeichen nicht mehr neu bei extflag MAI_EXTPRN00
           25.03.99  PRNLIB:  Option [Vt:N fr Zuweisung von Zahl zu Zahlentext (fr Schecks) eingebaut
           29.03.99  DFPRMLIB:ExtDataText bei ins und del mitverschoben -> Text-Fehler bei AppBrowsItem und DelBrowseItem beseitigt.
           30.03.99  FFBDE:   setStart setzt bei FAKT_PPS den Startzeitpunkt in der BauPos
                              setStart/setStop setzt auch das Datum
           31.03.99  FFERLBU:
                     FFFIBUDV:Bei V wird auch Vorausgutschrift bercksichtigt
           07.04.99  PRNLIB2: bei include MAINFILE als Schlsselwort eingebaut: #include MAINFILE.fus
                              es gibt keine Meldung, falls die damit aufgerufene Datei nicht existiert.
           13.04.99  BRECLIB: bei dfBTRV() err 22 -> keine Filterprfung! das brachte
                              den Browser total durcheinander!
                              ge„ndert auf Prfung, Prfung ok -> err 22 sonst err 9
           19.04.99 ûSTDPRJ:
                     ....     Tempor„re Textdatei TEMPDAT\Axxx.ASC mit Userflag 'T' aktiviert
           19.04.99 ûRECHTAW: Gruppenrechte um Zuordnungsfeld erweitert
                              Bei vorhandensein des Feldes, Lineare Rechtesuche
                    ûDFMULTI: MultiDFO::printListe() bei CALC lauf FORCE-Parameter aktiviert, Rechenfehler beseitigt
           20.04.99 ûWINLIB:  convert_mai_input() um Eingabe in ein Stringarray erweitert (offset maiIndex, len strlen())
                     FAKTMAIN:FAKT.INI um Kommandos erweitert:
                              [Belege] LieferscheinRechungAllePositionen=0;
                              Damit l„át siche eine šbertragung der 0 Positionen im Lieferschein auf eine Rechnung erzwingen.
                    ûFAKTEDIT:Neue Systemprogramme aktiviert:
                              .$16:Belegbearbeitung Beleg „ndern speichern  FAKTEDIT
                              .$17:Belegbearbeitung Beleg neu speichern     FAKTEDIT
           21.04.99  PRNLIB3: get_variable_() ab sofort auch Tageszahlen aus Vd Variable m”glich (V1:=Vd)
                     PRNLIB:  Vd Variable beeinflussen jetzt auch das prtflg fr [t Anweisungen (z.B. [Vd|*][t...)
                     PRGLOAD: Erweiterung von Kommando SetItemAccessLevel um 0x800
                              fr vom System inaktive Felder aktivieren.
           22.04.99  PROGAW:  call_prog() bei Angabe eines '*' vor dem Namen eines Aufrufprogramms,
                              wird das IFW nicht verlassen, sondern direkt mit spawn ein DOS-Instantz aktiviert.
                              (fr aufruf des NETSCAPES vom IFW aus).
           26.04.99  PRNLIB:  Fehler bei Vergleich mit Vd (seit 21.04.99) beseitigt.
           28.04.99  PRNLIB4: drucke_char() bei FormFeed (12) wird jetzt crlf ausgegeben, nicht nur lf
                              (bei FF im Flieátext wurd der Zwischenhunk eingerckt gedruckt)
           30.04.99  DFLIB:   del_recdata() mit Filter "" werden keine Listen mehr gel”scht!
           03.05.99  FFBDE:   makeTextAndWriteDisplay() kritische Zeichen \x1b und \r im text ausgefiltert
                     FFART:   Artikellogbuch: Preiseinheiten wurden nicht bercksichtigt (auáer bei Wareneingang/Warenrcks.)
           04.05.99  FILEEDIT:
                     LOADSAVE:save() mit unsigned versehen -> files >32k max 64k speicherbar
           07.05.99  FFSTDVK: Neues Systemprogramme aktiviert:
                              .$60: Artikel auf VK-Belegposition abrufen
           12.04.99  DFPRMLIB:ExtDataText auch bei Spalte 0 gesetzt
                              delBrowse() bei Spalte 0 x Position auf 0 gesetzt
                     MAI#DEF.H:#define MAI_TYPE_SHOWLIST3   -32   // Wie SHOWLIST1 mit doppelfilter, aber mit CHOOSEDIT wie SHOWLIST2
           18.05.99  PRNLIB3: Sichtbar-Rechte auf einem Feld wirkt sich jetzt auch auf Flieátextfelder aus
                     FFFIBU2: chkMaiKto() U/V H/S Kennzeichnung berarbeitet:
                              wenn keine Kennzeichnung enthalten, wird ab sofort das Gegenkonto auf Steuerkennzeichen geprft
                              und entsprechend im Buchungssatz gesetzt. Ist keine Kennzeichnung vorhanden, wird keine Ver„nderung
                              vorgenommen.
           21.05.99  PNRLIB.H:UserHunks von 32 auf 64 erh”ht
           25.05.99  DFEDLIB: ALT_F5 fr externes Programm im edit_data() aktiviert
                              (Daten -> Textverarbeitung)
           28.05.99 ûDFEDLIB: Neue Systemprogramme aktiviert:
                              .$07:„ndern speichern vorF. Karteibearbeitung DFEDLIB
                              .$08:neu speichern vorFrage Karteibearbeitung DFEDLIB
           02.06.99  FFSTDVK: funcExtKalk() Bei Kalkulationsmaske Fertigunszuschalg auf Fertigungkosten korrigiert.
           04.06.99  LOADSAVE:open() Rckgabewert auf -1 als fehler geprft
           08.06.99  FFPERS:  PsStat Arbeitstage-Sollberechnung ge„ndert, 'f' mit bercksichtigt: Alle Tage ohne '*', '#', 'F' und 'f';
           09.06.99  PRNPRM:  SwitchHunk mit Namen fr 64 Userhunks erg„nzt
           12.06.99  DFEXTFNC:[D Kommando mit Datensicherung bie ldf->dfnr == PrnPar.listHauptDfNr versehen.
                              Damit ist eine Bearbeitung der Positionsliste im KOPF mit [D bei gleichzeitgen verwenden von
                              @Lxx; Kommando m”glich.
           14.06.99  PRN...:  Hunk Trailer eingebaut.
           15.06.99  DFEXTFNC beim [L Kommando wird der original Feldinhalt zwischengepuffert,
                              falls er durch eine Vorgabe zerst”rt wird
           16.06.99  PRGLOAD: Kommando CheckPLZ eingebaut
           17.06.99  DFED2LIB:select_records() benutzt beim deselktieren nur noch die selektierten
           21.06.99  STDPRJ_: Bei newposmc auf KBez und Sachnummernfeld vorhanden
                              und KBez auf OFF, wurde trotzdem auf KBez der Cursor gesetzt
                              ge„ndert auf Cursor auf Sachnummer
                     DFLIB:   set_dfmaidata() und set_sdfrecdata(), es wird zuert MAIC_PREISEH geladen, dann der Rest
                     DFOBJ:   gMIStr() gibt bei Flieátext-Mai nun die Zeile aus, die mit Index angegeben ist (bisher nichts)
                     FFPROD:  Bei Kennzeichen 'R' im Artikelstamm, werden beim Produktionsschreiben beim ”ffnen Der Prodmaske eine
                              Artikelinformation des zu Produzierenden Artikels ausgegeben (Voraussetzung: Ein Feld mit ArtNr muss
                              in der Prodmaske enthalten sein). Es werden die ersten beiden Zeilen aus der "Betriebsinternen
                              Artikelbeschreibung ausgegeben, wenn diese jeweils ein '$'-Zeichen am Anfang besitzen.
           22.06.99  FFBDEx:  BdeManager::communication() NextZwischenStopZeit eingebaut fr Zwischenstechen
                              Gehen/Kommen fr Schichtzeitenauswertung
           24.06.99  DFEDLIB: ed_edit() ALT_F5 dirket in Temp-Belegedit m”glich (mit speichern)
                     DFPRN    dfprint() PRN_HTMLEXP_PRINTER mit Shift-Strg-Return direkt zum Netscape ber :HTML_EXPORT Drucker
                     DFED2LIB:fehlermeldung() meldet bei DUB_KEY Error zwei Felder fals vorhanden
                     FFFIBU2: srcVerbOffPosSplitData() Bei Belegbernahme zur Zahlung von Gutschriften, wurde err -11 in Verbindung
                              mit einer Euro-Gutschhrift ausgegben. Die Pfennigkorrektur mit den Brutto A und B Betr„gen ging bei
                              negativen Betr„gen zum Teil nicht. Korrigiert.
           28.06.99  FFFIBUDV:OffPos2Journal::MakeMask() nimmt die Kostenstelle aus der OP-Maske mit
                     FFSTDVK: check_kunde_() Kostenstelle im Verkauf vom Vertreter wird nun nachgeladen
           29.06.99  PRGLOAD: SearchSub store_dfmask eingebaut, backbuffer wurde evt. zerst”rt (falsche Selektion)
                     PRNLIB.H PrnPar.loadDvlOptions eingebaut
                     PRNLIB3: get_variable_() [.OPTIONEN eingebaut
                     DFLOADZW:load_dfliste() openlist<0 -> src = MAIC_LISTE nicht get_listtypmai
                     FFARTPR: Mit Artikeldoku wurden keine "Bestehend aus:" Listen in Belegpositionen bernommen
           30.06.99  DIRLIB:  dir() Taste i-z zum Laufwerk wechseln aktiviert
           03.07.99  FAKT...:
                     FAKTWEG: Eingangsrechnungdatenbank eingbaut
                     FFFIBUDV:Verb2Journal bertr„gt jetzt auch die extra Eingangsrechnungsdatenbank
           30.07.99  DFED2LIB:isInMinMaxRange() zeigt auch wieder zu groáe Nummern an. MaxWert von DfData geht wieder.
           02.08.99  FFFIBUDV:getBuchStapelTyp() erkennt XR Buchungen auch als Verbindlichkeiten
                     FFFIBU2: chkMaiKto() noSecondKtoChk eingefhrt, wegen TTS-Single Absturz
                     FFFIBU21:setUpMaskFromStapel() bei chkMaiKto() noSecondKtoChk eingetragen, wegen TTS-Single Absturz
           03.08.99  BRECLIB2:change_cmprec() l”st beim Vermerk setzten die buchstabenabh„ngige Gruppe aus
                              (Massen„derung z.B. "E" durch SetVermerk 'Z' -> Datum 105 wird gesetzt).
                     FFBSTLST:FlexFeld "ArtLANGTEXT#1" aus Bestelliste: falls nicht leer, wird es in die Bestellung bernommen.
           04.08.99  FFBDE:   maximale Tasks pro Terminal von 32 auf 256 erh”ht
           17.08.99  FAKT....:šbersetzter zum Erstenmal aktiviert
           19.08.99  FAKT....:Datensynchronisierer zum Erstenmal aktiviert
           19.08.99  FFRECH:  Lieferscheine werden erst abgeschlossen, wenn alle Positionen komplett abgerechnet sind.
           23.08.99  PROGLOAD:Kommando WriteSyncFiles eingebaut
           31.08.99  FAKTMAIN:Problem mit deaktivierten Menuepunkten beim Umloggen mit verschiedenen Rechte beseitigt.
                     BRAIN:
                     DFED3LIB:Einstein mit CTRL-F5 aktiviert.
                     DIRLIB:  dir_iggprint() Jahreszahl mod 100 wegen Jahr 2000 šberlauf
           01.09.99  STDPRJ_: Fehler "DataFile-Struktur konnte nicht angelegt werden !" beseitigt:
                              Es k”nnen max. 80 Df-Objekte im Ram gehalten werden, da die MinorHandles ausgehen. In diesem
                              Fall kam die Meldung. In diesem Fall wird jetzt versucht unn”tige Objekte zu entfernen.
           13.09.99  PRNLIB2: bei include file.DV* wird zuerst versucht die Vorlage file.DVU zu laden, falls sie nicht existiert, die Vorlage file.DVL
           15.09.99  FFEINK:  In Verb_func wird der Bezahltbetrag zuerst gerundet und dann vom Bruttobetrag abgezogen, zur berechnung des Saldos.
                              Damit Problem bei Auslandsrechnungen und Pfennig Saldo beseitigt.
                     FFVERK:  In OffPos_func wird der Bezahltbetrag zuerst gerundet und dann vom Bruttobetrag abgezogen, zur berechnung des Saldos.
                              Damit Problem bei Auslandsrechnungen und Pfennig Saldo beseitigt.
           16.09.99  FILEEDIT:fileedit() merkt sich die letzte Position im File.
           17.09.99  FFARTBCH:Neu Sicherung fr "Positionsnummerierung nicht in Ordnung" eingebaut:
                              '=' Positionen werden nur noch bei Lckenloser B/G -> U Nummerierung akzeptiert.
           20.09.99  PRNLIB4: Beim Drucken wird zuerst der Zeichenersatzt vorgenommen, und dann ggf. der Graphikersatz ($ in der Bezeichnung)
                     FFEINK:  Bei šberweisungen und bei Verbindlichkeiten, wird der Lieferantencheck mit Info und Sperrmeldung durchgefhrt.
                     DFLIB:   bei df_looprec() wird mit mode WL_ONE und akt_recpos==0 nicht err -43 ausgegeben, sondern die Maske gel”scht und err=0.
           22.09.99  DFPRN:   druckerauswahl() l„át nun auch Druckerangabe #DTR-Treiber;Ziel zu ohne ein Drucker aus der Druckerliste zu laden.
           23.09.99  FFRECH:  checkLiePos() dummy Positionen werden beim Lieferscheinabschluss bergangen
                     FFVERSND:Auslieferungmodul Sintron, kann jetzt ber Lieferbedingung verschiedene Speditionen, Kennzeichn 'L' bei Spedition fr
                              Postleitcode Prfung
           28.09.99  FAKT...: Neues Hilfesystem einsatztf„hig
                     DFLOADZW:Tranlater fr šberschrift eingebaut.
                     PRNLIB5: Bei šbersetzer Einlesen, auch ersetzstring ber strTokenCpyExt() fr \r ersatz
           30.09.99  INPLIB:  Bei F2 bernimmt Kurseingabe den Wert, F2 bei Bruttoeingabe m”glich.
                     FFFIBU2: chkPeriode_() cmpPeriode() aktiviert -> Nach einem Periodenabschluss konnte keine Periode im Jahr 2000 (ab 00.01) gebucht werden!
                     PRNLIB:  Option '#' bei Flieátext -> keine Auto-Zeilenumbrche
           04.10.99  PRNLIB:  Option 'h' bei Zahlenvariablen: wie '=', nur Zuweisung eines hexadezimalen Werts (strtoul( 16))
                     FFWEG:   standard_chooseForEinkPos() und  standard_chooseinkpos() bei Warenrcksendung aktiviert (FNC_CHOOSE, K-Listen aufl”sen)
                     PRNLIB3  varPrint() option h und H fr Hexadezimal ausgeben klein/Groábuchstaben bei Zahlenvariablen (wie k n oder z Format fr Nachkomma)
           07.10.99  ...:     Neuer Compiler WC11 eingefhrt.
                              18.10.99 mit Bug printf %05.2lf ohne fhrenden Nullen eingespielt -> DTA Endsatz und autonum mit fhrenden Nullen falsch.
           07.10.99  DFLIB:   chk_diskspace() Diskgr”áenberechnung fr >2GB gerichtet, Granulat auf 16k begrenzt.
                     BIOS:    getdfree() dtable_t.sectors_per_cluster==0 abgefangen (Microsoft Client!) in dem Fall auf 512 gesetzt.
           11.10.99  INT31:   union REGS immer mit memset auf 0 gesetzt -> vorbeugend wegen NT
           12.10.99  STDCON:  Die Tastaturflags werden rechts oben angezeigt
                     FFEINK:  Beim Wareneingang schreiben/„ndern/rckg„ngig machen, wird die Bestellung ber die Positionen geprft und entsprechend das 'E' gestezt.
                              ('E' wurde bisher nicht mehr entfernt)
           15.10.99  DFLIB2:  Einstein Lernfelder ber Maske angebbar. Werden mit in das *.EST File geschrieben.
           18.10.99  ...:     Compiler Bug printf %05.2lf ohne fhrenden Nullen eingespielt -> DTA Endsatz und autonum mit fhrenden Nullen falsch.
           25.10.99  FAKTFNC: Beim Hilfenaufruf, wird Maske gerettet -> bei Neueingabe und modifizertem Maskeninhalt, verschwand er nach dem Hilfenaufruf
           26.10.99  FFVERK:  Alte Abrufauftr„ge (Poly) Statistiktabelle Jahr 2000 f„hig gemacht
                     FFWEG:   Alte Abrufbestellungen Statistiktabelle Jahr 2000 f„hig gemacht
                     WINLIB:  convDateStr() bei KW eingabe wurde bei .2 2000 die KW 2 im Jahr 3900 gespeichert.
                              Algorythmus ge„ndert:
                              4 stellige Eingabe -> Jahr direkt bernommen
                              Andere Eingabe:
                              Die letzten zwei oder eine Stelle wird auf Jahr <80->2000 sonst ->1900 erg„nzt
           28.10.99  FFBDE:   Kommando 125 eingebaut: Produktionszeit berechnen (vor Stop stechen fr Anzeige, setzt das Feld 5:Menge[])
                              TaskListDFO::calcStopTime(), Task::comCalcStopTime()
           29.10.99  PROGAW:  Nach einem externen Programaufruf call_prog_path() bleibt die Maus an.
           03.11.99  DFRECOVE:Meldung bei erfolgreichem Umbennen eingebaut.
           04.11.99  PROGAW:  Externen Programaufruf call_prog_path() benutzt jetzt auch den Extender z.B. START.EXE anstatt nur START
           09.11.99  FFBDE2:  TerminalPort::WriteDisplayLinePos() Zeilen l„nger als 40 Zeichen bercksichtigt
                              (Zeichen blieben am Ende auf dem BDE Display stehen).
           10.11.99  FAKTFNC: htmlHelp() HTML-Hilfen jetzt auch von Untermaske ohne Fehler aufrufbar
                     FAKTMAIN:Die Hintergrundfarbe des IFW-Desktops l„át sich einstellen (Mandantenabh„ngig)
           12.09.99  DFPRN:   druckerauswahl() Anschlusseinstellung %STATION% und "MANDANTEN% beim Drucker zugelassen.
                     DFEDLIB: ed_edit() Bei Listen F1 Feld-Anschaurecht mitvererbt an Liste.
           15.11.99  FFEXABR: ExtAbrAufPos_calcRestFunc() PE und Rabatt bei Restbetrag mitbercksichtigt.
           17.11.99  PROGAW:  call_prog() Aufruf ohne serv (IFW.COM) bei dirketcall * immer m”glich
                     FFARTPR: ArtList_func() bei Btrieve-Read wird bei NotSAVE-Feld des Namens artlist_read() aufgerufen
                              (bei Ausdruck waren Felder leer MSC).
                     DFPRN:   dfPrintBelegausgabe() bei Anzahl 0 wurde der Drucker trotzdem aktiviert (ohne Ausdruck)
                              ->Bei NT-NetUse wird ein Job in die Queue mit Adding gestellt, aber nicht abgearbeitet -> nur
                              jeder zweite Druck darber kam raus (DF-Bauservice)
           23.11.99  FFARTPR: chooseAfterArtLst() mai Fehlermeldung bei Sachnummern mit ArtLst Maske ohne Sachnummer beseitigt
           24.11.99  FFFIBUDV:Verb2Journal::MakeMask() bei Sammelkonten (Barth) GetVkSammelErlKto nach GetEkSammelErlKto korrigiert.
           25.11.99  FFBDE2:  TerminalPort::WriteCard() macht jetzt 10 Versuche pro 4 Byte Datenblock
                     FFVERSND:Wenn bei Lieferbedingungen die Paketgebhr des Kunden
                              kleiner 0.0 (Feld 20), dann Gebhr gleich Paketkosten
           29.11.99  FFFIBU2: short fibuBuchungToStapel( short modus) FIBU2STAPEL_SELECT eingebaut
           03.12.99  FFVERSND:PaketZuordnung::work() Paket Produktcode ge„ndert: 00 bei
                              allen normalen Pakete, 01 bei einem Nachnahmepaket "NN*", aber nur beim
                              ersten Paket einer Nachnahmesendung.
                     FFDISPO  FAKT_LIEFERVORLAUF Lieferscheinautomatik:
                              - Liste der f„lligen Auftr„ge werden vohre immer angezeit (auáer Poly)
                              - Endlosschleife bei Kennzeichne Y im Kundenstamm zur Lieferscheinzusammenfassung beseitigt.
                              - Not-Abruchtaste bei Erstellungsschleife eingebaut.
           07.12.99  TOBITFW: Beim Logbuchscan, mehrere Server mit ';' getrennt zugelassen
                              korrespondierender Server/Verzeichnisscan
           08.12.99  TOBITFW: Zwangsbackslash bei mehreren Verzeichnissen mit ';' beseitigt
           09.12.99  FAKTMAIN:default PrintQueueDirekt auf 1 gesetzt
           09.12.99  FFARTBCH:Vorrausgutschrift bucht keine Ware mehr.
                     FFFIBUDV:Stornos von Eingangsrechnungen werden jetzt automatisch bertragen.
                              Falsche Ausweichkonten bei Stornos beseitigt (globalPara Maske
                              wurde im Hintergrund umgeladen).
           10.12.99  TEXTEDIT:ALT_D fr Direktory einfgen. Fehler beim Einfgen am Ende des
                              Textpuffers beseitigt.
                     NETLIB:  Systemcalls zum Aufl”sen des Laufwerkbuchstaben eingebaut.
           13.12.99  DFEDLIB: Bei F1 und dann Archiv wird die Schlsselnummer gemerkt, damit im
                              Archiv dirket auf den Datensatz gesprungen wird.
           14.12.99  TERMINPL:Terminsystem berarbeitet: Mehrfachselektion von zu berlagernden
                              Personen, anzeige derselben, bleiben berlagert, F2 Speichern/Versenden/Zurck.
           16.12.99  FFFIBUDV:Bei der Stapelerzeugung Pfennigprfung bei OP's (wegen Euro und Fremdw„hrung).
                              Zwangsrundung der Betr„ge im Stapel.
                              Stapelbertragung -> FIBU Zwangsrundung bei der Betragsbergabe.
           17.12.99  FFEINK:  Verbindlichkeit Zwangsrundung bei Saldoberechnung, Zwangsrundung von Brutto
                     FFVERK:  OP Zwangsrundung bei Saldoberechnung, Zwangsrundung von Brutto und Bezahlt
           20.12.99  FFBDE2:  Task::work() ErrRepeatCnt eingefhrt und nach 2. Versuch ABBRUCH Knopf F3 fr
                              Notausstieg eingebaut (Task abschiessen)
                              Defautl TIMEOUT von 10 auf 20 erh”ht
                              MaxTerminals von 5 auf 7 erh”ht
           21.12.99  DF.H:    DF_RESMHD_SYNC eingebaut, DF_RESMHD1 umgestellt, DF_MAXMINORHANDLE von 0x6C auf 0x6B
                     DFLIB2:  DfSyncBuff::init() auf DF_RESMHD_SYNC umgestellt, wegen kollision mit F10 Prg
                              (ArtLst Unterliste anzeigen -> drop error)
           23.12.99  FFFIRUMS:artums_uebertragen() Warengruppen-Gruppe Prfung ob auch in der WarGru vorhanden
           27.12.99  DFLIB:   Selektierte >32k fhrte zum Absturz.
                              (Verschiedene lokale Z„hlvariablen fr die Selektierten von short auf long umgestellt)
           04.01.00  STDPRJ:  James aktiviert
           05.01.00  DFEDLIB: STRG-Home und STRG-End fr min/max Bereich aktiviert.
                     DFED3LIB:Archivieren: df_cpycmprec_func() der Letzte Datensatz des aktuellen Nummerreirungbereich
                              wird korrekt erkannt.
                              (Bei Jahreswechsel mit neuem Kreis und noch keinem Datensatz, konnte der Eintrag der aktuellen
                              Zeilen auf der der Balken stand nicht archiviert werde.)
                     DFED2LIB:ed_writeLog() Logbuch um Lfd und PKey erweitert.
                     FFBDE2:  Bei BDE-Stundenbertragung ber Jahreswechsel, vom-datum auf 01.01 des bis-datum begrenzt.
                              (BDE Gateway blieb mit Meldung "Datumsgrenze..." stehen).
           10.01.00  FAKTMAIN:Barkassennummernvorgabe auf ##...0001 korrigiert
                     DFPDF:   set_pdfNumStr() um &&& fr Tageszahlvorgabe bei der Autonummerierung erweitert.
           12.01.00  DFIMP:   Flag IMPORT_NO_CALC_MAI eingebaut "Keine Rechenoperationen der Felder ausl”sen".
                     PRGLOAD: ImportFile DocumentImportFile um Modus 4 fr IMPORT_NO_CALC_MAI eingebaut.
                              ExchangeImportFile() und ExchangeDocumentImportFile() grunds„tzlich mit Modus IMPORT_NO_CALC_MAI
                              versehen.
           14.01.00  TEXTEDIT:TB_NOEDIT implementiert
                     TEXTEDI2:TB_NOEDIT implementiert
                     WINLIB:  Im Anschaumodus sind Flieátextfelder betretbar und expandierbar (anschaubar)
           17.01.00  FILESTR: get_filestr_() um radix (Zahlen in dez stat hex) erweitert
                     DFED2LIB:fehlermeldung() benutzt die Datei BTRIEVE.$MG um die Fehlernummer in ein Text umzusetzen.
                              Die Datei kann im IFW Verzeichnis vorhanden sein, ist sie dort nicht, dann im SYSTXT-Verzeichnis.
           18.01.00  DFPRMLIB:
                     STDPRJ_: $$$ wird links-/rechtsbndig die Leitw„hrung (DM) mit einem Space versehen
           19.01.00  DF.H:    struct DataFile iggexitkey[] von 240 auf 300 vergrӇert
           20.01.00  FFMANDAN:Auch bei Mandant 0 eine Sprach-Translation (Fremdsprachiger Client) m”glich
           24.01.00  SYSLIB:  console_exit() textmode wird nur noch bei abweichung gesetzt (Windows Bildumschaltung).
           25.01.00  PRGLOAD: Bei Search, Change und CopyToMakedFile DefaultPrgName eingebaut.
           26.01.00  FAKTMAIN:Kundeklassifizierung aktiviert (Conware)
                     PRGLOAD: Programmfunktionen zur Klassifizierungsbearbeitung modifiziert
                              Kommandos "TransferSelectionToMarkedFileAND","SaveSelection",
                              "GetSavedSelectionADD" und "GetSavedSelectionSUB" eingebaut.
                              class SelBuff programmiert.
                     TOBITFW: Das Lesen von eMails als IFW Nachricht implementiert.
                     PINBOARD:Textpuffer vergr”áert (eMail), --> Kennung falls Text zu groá
                              GadGet zum vergr”áern und verkleinern von Nachrichten, Status 'S' fr Shrink
           27.01.00  FFPROD2: Beim Produktionssplitten "FertigeTeileAbsplitten" implementiert.
           31.01.00  PRGLOAD: ViewMessage askt( 0, NULL, buff) -> askt( 0, NULL, "%s", buff) wegen Absturz bei % im Text
           02.02.00  LIBBORL/WINDOW:  cprintf() textpuffer von 2000 -> 5000 (Absturz bei Einstein einlesen)
                     DFED3LIB:edit_extwindow_() setzt beim Verlassen im SHOW-Modus kein '*' mehr
                     FFVERK:  AufPos_func() beim Nachladen der Fertigungstelle (Conware) Problem
                              mit vererbten ALT_F10 aus Artikelstamm (auf Fertigungstelle) Gruppe+30 beseitigt.
                              Wird jetzt ber das Feld "FertKz" nachgeladen.
                     FFPROD:  MAXPRODANZ von 100 -> 256. Maximale Anzahl von Varianten beim Liefern von 100 auf 256 gesetzt.
           11.02.00  FFCOMCON:Kommunikationspacket fr TCP/IP mit IFW-Client unter Windows
           14.02.00  FFPRODx: PrdErstellen:: setEbeneCnt und getEbeneCnt eingbaut -> Bei Prod-aufl”sung
                              mehr als 9 Baugruppen m”glich (A-Z)
                              ThePruefTermin[] global eingebaut, damit Eingabe zu Programmlaufzeit
                              erhalten bleibt.
                     FFARTBCH:Bei automatischer Bestellung von Produktion (F2) oder anderen Belegen, wird das Kennzeichen 'E' (einzeln) aus dem
                              dem Artikelstamm bercksichtigt.
           15.02.00  FFVERK:  Autoabgleich der Adresse beim Beleg schreiben, Name3 mit eingebaut
                     FFRECH:  Kunden_func() bei Unterfenster keine PLZ-Prfung mehr (SINTRON)
           23.02.00  TOBITFW  Bei Mailempfang wird bei "to" wenn ID 1 (Called Number) leer ist,
                              ID 9 (Routing ID) verwendet
           24.02.00  WINLIB:  sprint_maiext_() ausgabe von double ber rndf() gerundet, anstatt sprintf()
           25.02.00  DF....:  Flag MAI_EXT2_OPENMASKLOADDF fr MAI, damit sind Nachladefelder auf der Maske beim ™ffnen m”glich (wie LOADDF im Browser)
                              steckt in init_recdata() drin
           29.02.00  FFARTPR: Bei Preisfindung werden Warengruppenvereinbarungen auf Preisgruppen bercksichtigt.
                              Kennzeichen 'W' bei Erweiterte Preise, fr Vorrang von Warengruppenpreise auf PG0
           02.03.00  POSNUM:  Bei neu_positionieren() Nummerierung bei 52 bei >100 wird ABC ... verwendet.
                              Dabei sind mehr als 100 Hauptpositionen m”glich.
           06.03.00  FFBUCHEN:aenderungsBuchen() um Parallelbuchen von Belegpositionen (MAIC_ROOT MAIC_POS) erweitert
                     FFBDE2:  BDELog_func() mit Online-Buchen eingefhrt.
                     FFPRODx: PrdErstellen:: set setEbeneCnt und getEbeneCnt fehlte nummer+1 bei mehreren AufPos->Prod, korrigiert.
           10.03.00  PINBOARD:Neue Nachrichtenmaske mit eMail, neue Menuepunkte
                     WINLIB:  sprint_maiextT() Zahlenanzeige mit T oder M auf Prfung der anzahl Vorkommastellen umgestellt (bei >2 nachkomma bisher kein T oder M)
                     FAKTMAIN:DF_ARTIKELPRDDISPO abgeschaltet
           13.03.00  PINBOARD:Versenden an sich selbst abgefangen.
           17.03.00  FFUMSATZ:calc_tagesumsatz() Versandfeld 6 bei Rechnung und Gutschrift wird nicht mehr zum EK-Feld 7 addiert (bei Maske mit Feld 101 Versand doppelt addiert).
           20.03.00  FFSTDVK: standardfunc_verkpos() bei F3 mit Position 'B', 'U' und '=' und ohne Doppelw„hrung, werden Summen wieder berechnet.
           30.03.00  IGGAW:   input_auswahl() um selectArray erweitert, statt nur ein long
                              (mehr als 32 selektierbar) -> Bei Druckoptionen alle selektierbar.
           03,04,00  FFVERK:  Bei Vertreter ber PLZ wird das Protected Flag mit bercksichtigt (DOSTASK, Vertreter „ndern)
           03.04.00  FFVERK:
           04.04.00  FFEINK:
                     FFRECH:  Bei Beleg "Kopieren/von schreiben" wird der Kurs bei Fremdw„hrung auf neusten Kurs gesetzt.
                              Angbot,AbrAuf,Auftrg (auch mit Prod.modul),Liesch,Rechng,Gutsch
                              Anfrag,Bestel,WareEg,WarRck,RechEg,AbrBst. RepRck hat keine Fremdfelder.
           07.04.00  WINLIB:  sprint_maiext_() gibt bei werten fabs()>10E80 "***" aus (vorher Absturz bei >10E98)
           11.04.00  PRNLIB2: input_vd() aktuelles Datum wird bei leerer Variable nicht mehr gesetzt.
                     PRGLOAD: Kommando ProdSetSollProdTermin() eingebaut
                     DFEDLIB: Nach dem Drucken wird IGG_REFRESH gesetzte -> keine doppelten violetten Balken
           12.04.00  PRNPRM   clr_dvlvar() schaltet jetzt auch die aktiven Translationstabellen alle auf AUS.
                              (Kunde Link/Sintron: Beim Massendruck von Rechnungen mit verschiedenen Sprachen stimmen
                              die šbersetzungen nicht)
                     DFHELP:  Bei Hilfen ist jetzt auch ein Verweis m”glich.
                     PRJPRM:  Aktivierung von mehrsprachigen PARAxxy Eintr„gen, mit y =1-6
                     FFEINK:  Bei Verb_func bei Fremdw„hrung Pfennigkorrektur bei Leitw„hrung Saldo==0.0
                              Bei FIBU Zwangsrundung der Bezahlt-Leitw„hrungsfelder
                     FFVERK:  Bei OffPos_func bei Fremdw„hrung Pfennigkorrektur bei Leitw„hrung Saldo==0.0
                              Bei FIBU Zwangsrundung der Bezahlt-Leitw„hrungsfelder
           19.04.00  POSNUM:  neu_positionieren() Nummerierung bei 3 stelligen Posnum korrigiert
           02.05.00  DFIMP:   Beim Import von Belegen wird erst das Makro fr den Kopf aufgerufen,
                              dann die Ausl”segruppe fr die Position gesetzt, und dann die Position
                              eingelesen. Das Makro fr den Kopf wird zuletzt nochmal ausgefhrt.
                              Damit sind Probleme insbesonderst mit der Fremdw„hrung behoben (Firma SH-A).
                     FFSTDVK: get_firma() Mitarbeiter ohne Kundenbezug l”sten PageFault aus -> Problem beseitigt.
                     INPLIB:  input_kurs() bei Fw-Feld Cursor gleich auf DM-Feld plaziert
           03.05.00  INPLIB:  input_kurs() Zugriff auf Fremdw„hrungsliste
                     FAKTMAIN:FAKT.INI um Kommando erweitert:
                              [System] ScreenSaving=1. Damit l„át sich das Abdunkeln des Bildschirms verhindern.
           04.05.00  DFEXTFNC:getNextMaskString() um Modus 4 erweitert: Damit ist es m”glich bei der automatischen
                              Hilfeerzeugung eine Liste der verfgbaren Karteien auszugeben.
           05.05.00  FAKTEDIT:belegImport_() Beim Belegimport ist ein nicht spichern des Belegs mit einem Import-
                              Programmmakro steuerbar (End( "1") fr nicht speichern, bisher nur mit einer
                              Fehlermeldung m”glich).
                     PRNLIB3: Neue Feldzugriffe fr die Druckvorlagen:
                              Mit den Kommandos kann ein Zugriff auf Daten aus dem Rechtefeld eines Datensatzes erfolgen.
                              .RECVersion   ->Versionsnummer ausgeben
                              .RECCounter   ->Speicherz„hler des Datensatzes ausgeben
                              .RECNew       ->Anleger ausgeben: UUU TT.MM.JJJJ SS:MM:SS
                              .RECChange    ->Žndere ausgeben:  UUU TT.MM.JJJJ SS:MM:SS
                              .RECDate      ->Datum der letzten Speicherung: TT.MM.JJJJ SS:MM:SS
           08.05.00 FFARTBCH: check_posart_bestell() beim Bestellen aus der Produktion heraus mit F2, werden Artikel nur
                              noch zusammengefasst, wenn ArtNr, AuftrgNr, ProdNr und ProdTermin gleich sind.
                    FFPRODx:  Bei Produktionsuftrag aus Auftrag oder Komplettartikel anlegen, werden
                              beim Modus "Alle in 1 Produktion" die 'K' Unterbaugruppen geprft.
                              Ist ein verfgbare Lagerbestand gr”áer 0 vorhanden, so wird die Menge als
                              direkte Lagerentnahme verwendet. Die Position wird dann ohne 'M' unter der
                              gleichen Positionsnummer gespeichert, gefolgt von einer ggf. notwendigen
                              'M'/'K' Position, die die Restmenge fr die Produktion beinhaltet. Die
                              Restmenge wird entsprechend aufgel”st.
                    FFART:    Kennzeichen 'Y' im Artikelstamm fr "Vorkalk=íEK"
           10.05.00 POPUPMNU:
                    STDPRJ:   Neuer Assist beim Drucken (F4) und bei den Popup-Menues (F10) mit Einstein (James)
           11.05.00 FFSTDVK:  standardcalc_verk() bei Fremdw„hrung wurde netto A (20) und netto B (21) auf den Ausgangsbelegen
                              f„lschlicherweise gerundet -> Ausweisung von Betr„gen in Feld steuerfrei im OP
                    DFLOADZS: load_dfzwsp() Funktion "Belegsummen" beim Zusammenfhren komplett abgeschaltet
                    FFWEG:    Bei Warenrcksendung die Fremdw„hrungsberwachung und Umrechnung fr
                              die Positionen aktiviert. Auáerdem Abgleich des Tageskurses beim Kopieren.
                    FFARTPR:  Bei Sonderpreisvereinbarung ber Warengruppe/Preisgruppe, findet bei Artikel mit
                              leerem Warengruppenfeld nicht mehr statt.
           15.05.00 FAKTFNC:  Hilfesystem erweitert, so dass auch die Parametermasken als HTML-Hilfe abrufbar sind.
                              Die HTML-Hilfedatei wird beim aufruf bei einer Parametermaske immer generiert.
                              Dazu wurde die interne Objektnummernverwaltung (dfnr) erweitert.
                    DFPDF:    add_dynpdf_() nicht nur bei MAIC_VERM-Feldern wird eine Auswahldatei fr Einzelzeichen
                              aktiviert, sondern auch bei Feldern mit einem '>' als 1.Zeichen im Namen.
           25.05.00 PRNLIBx:  Erster Ausdruck in einen Windowsdrucker.
           26.05.00 DFIMP:    Bei INLINE-Import wird als default Einlesepfad geprft, on es ein Pfad fr
                              MAIC_PRIMKEY gibt. Falls ja, hat er Vorrang vor Pfad 0.
                    FAKTFNC:  Die Hilfenerzeugung setzt jetzt auch die Globale Hilfenvariable AktHTMLHelpNr
           29.05.00 DFEXTFNC: bei create_job() auch Jobnummern grӇer als 0x7FFF zugelassen
           30.05.00 FFARTBCH: Bei Artikel Kennzeichen 'B' wurde bei Lieferscheinen mit Prod-Modul auf "LiTerm" geprft
                              und šberwachungmedlung get_namemai ==NULL ausgegeben (dachte es w„re eine BauPos-Maske).
                              Prfung auf DF_BAUZETTELPOS erweitert.
           06.06.00 FFARTBCH: Erkennung fr Produktions/Terminrfung in Bestelliste beim Bestellen korrigiert.
                              Der Wunschtermin wurde falsch bertragen, die Verdichtung bei gleichen daten ging nicht korrekt.
                    FFEXABR:  Bei Abruf kopieren werden die Restmengen richtig berechnet (calc Pfad 2)
                    FFEINK:   Bei Bestellung von Abruf werden die Daten fr Best„tigung, Wunsch- und Liefertermin nicht
                              mehr mitkopiert.
           07.06.00 FFFIBBU21 BuchJnDfo::setUpStapelMask() bei Fehler "EG-Land" wird der Fehlercode -1 immer zurckgegeben.
           14.06.00 DFEDLIB:  Einfhrung der IfwKey-Flags fr Buttons unter Windows.
                              Spezialzuordung des Edit-Modes (Rechte) auf die Datei Statio.Rec vor die Rechtemanipulation verlegt.
           15.06.00 FFARTBCH: Bei automatischer Bestellung bei Lagerabgang (Kennzeichen 'M' im Artiklestamm) wird absofort
                              beim aktiven Bebuchen eine externen Lagers, die Menge der Waren in allen externen Lager zum
                              Lagerbestand hinzugerechnet. Erst wenn dieser Wert die Mindestbestellmenge unterschreitet, wird
                              ein Eintrag "Auto" in der Bestelliste erzeugt.
           26.06.00 PRGLOAD:  Kommando ExecuteFileName( File, Para) eingebaut
           28.06.00 FFBDE:    comEnterTask() l”scht den gefundenen Task, wenn er vom Modi (1000/6000) nicht passt
           29.06.00 PRGLOAD2: Beim Laden der FRC-Datei PDFLine::work(), wird beim Filename ART??? die Funktion Artikel_func zugeordnet.
                              Nichtmehr bei der Bezeichnung Art* !
           03.07.00 PRGLOAD:  Beim Searchlauf zum Schluss immer die alte Recordadresse zugewiesen -> dadurch wird Fehler 232 in
                              der šbersicht vermieden, wennn zuerst ein Search und dann ein SearchSub zu keinem selektiertem Eintrag fhrt.
           13.07.00 FFBETON:  Zwei weiter Waagenprotokolle fr die serielle Schnittstelle implementiert
                              GlobalTrashBuffer als einziger Trashbuffer eingebaut -> Shift Entfernen und Einfgen geht jetzt auch von
                              Fliesstext -> EIngabefeld und umgekehrt
           21.07.00 PRNLIB3:  get_variable_() bei Zuweisung Vt:="" sind mit \ jetzt auch Zeichen wie \" \r \n oder \t m”glich
           24.07.00 PINBOARD: Vorm scannen der Nachrichten clr_rootmai eingebaut, wegen err -6
           24.07.00 FFBETON   Waage Typ 1 angepasst (Protokolldruck sofort, kein Protokolldrucker)
                              Logbuch der COM Schnittstelle aktiviert (Flag ~ beim Benutzer)
                              Beim Druck wird eine ID-Nummer der Waage eingelesen und in der Bemerkung mit ';' hinter den Tara-Wert
                              geschrieben mit "Id=n"
           26.07.00 FFBETON:  Bei dem Lieferschein min-/max-Wert der Waage ist die Angabe von Fragezeichen '?' m”glich.
                              Sie werden beim Speichern durch die Ziffernfolge im Feld "Lagerort" des verwendeten Artikels ersetzt.
                    PRNLIB:   DVL-Kommandos erweitert:
                              @#MakeDir "";    Verzeichnis erstellen
                              Der Verzeichnisname wird bei diesem Kommandos ber den Original-Ausgabedateinahme zusammengebaut.
                              Kann das Verzeichnis nicht erstellt werden, wird eine Fehlermeldung ausgegeben. Existiert das
                              Verzeichnis bereits, wird keine Fehlermeldung ausgegeben.
                    FFBSTLST: DispoToOrderList Modus 4:
                              Bestelliste automatisch bercksichtigen und verschieben.
                              Sie muss ein Vermerkfeld und ein Sortierpfad nach ArtNr WunTerm
                              Datum besitzen. Ansonsten kommt die Meldung "Vermerkfeld oder
                              Suchpfad fehlt in der Bestelliste fr DispoToOrderList".
                              Die Bestellisteneintr„ge die automatisch verschoben werden sollen, mssen
                              alle das Kennzeichn 'A' "Eintrag mit automatischer Verschiebung" besitzen.
                    PRNLIB:   Bei [Vd:] Zuweisung neue Zuweisungsarten:
                              [Vd:bVd1] Setze Vd mit dem Datum von Vd1 auf den Monatsbeginn von Vd1
                              [Vd:eVd1] Setze Vd mit dem Datum von Vd1 auf das Monatsende von Vd1
                              [Vd:BVd1] Setze Vd mit dem Datum von Vd1 auf den Jahresbeginn von Vd1
                              [Vd:EVd1] Setze Vd mit dem Datum von Vd1 auf das Jahresende von Vd1
                              Vd1 ist hier beispielhaft angegeben. Es kann auch eine andere Variable
                              oder Datumswert stehen.
           31.07.00 FILEEDIT: Bei WIN32 256k Textpuffer verfgbar
           10.08.00 FFREPARA: Beim Reparaturen kopieren wird das Feld LN und RN gel”scht.
           11.08.00 DFPRN:    dfDruckvorschauHTML() fuer ALT_F5 aktiviert:
                              1. Es wird zuerst der Eintrag "Druckvorschau HTML" gesucht.
                              2. Es wird der Eintrag "Daten -> Textverabeitung" gesucht.
                              3. Bei vorhandener Belegausgabe wird der Belegeintrag "Standardbeleg" gesucht
                                 und der erste Eintrag verwendet.
                                 Die Ausgabe erfolgt ueber den Drucker ":HTML_EXPORT". Sollte er nicht vorhanden
                                 sein, wird er automatisch angelegt.
           20.09.00 FFVERK:   Bei OffPos_func() FIBU-Buchung:
                              um alte Fehler zu korrigieren: ist FW 0 und LW <=0,10, dann LW auf 0 setzten
           26.09.00 FFWEG:    Bei von Bestellung Wareneingang schreiben, kann mit FAKT.INI-Schalter
                              BestellungZuWareneingangAllePositionen=1 eine bernahme auch der Positionen
                              <=0 erzwungen werden.
                    RECHTAW:
                    PRGLOAD2: Bei Rechtezuordnung workGroupRec() und Programmkommando SetFile() wird der
                              Filename mit fnsplit verglichen (problem bei abweichenden Karteien mit
                              DfData-Verzeichnisangabe).
           02.10.00 BRECLIB2:
                    DFED2LIB: Neue Selektionsmethode mit GET_NEXT_EXTENDED aktiviert.
           06.10.00 FAKTMAIN: Neuer INI Schalter FaxWareScanTime
                    BRECLIB2: Massenaenderung 'Z' "set_vermerk" Setzt jetzt auch mehrere Kennzeichen oder
                              loescht auch welche mit fuehrendem '~'.
                    FFART:    Im Artikellogbuch wurden u.U. falsche Lagerbestandseintragungen vorgenommen:
                              1. Artikle mit Liste aufrufen,
                              2. In Liste gehen und von dort einen der Listenartikel mit F1 aufrufen und Maske oeffnen
                              3. Wieder raus und Listenartikel aussen speichern
                              -> Falscher Logbucheintrag, da die Lagermenge des Material in der Liste mit der Liste selbst
                              in Verbindung gebracht wurde.
                              Problem beseitigt.
                    FFPERS:   Bei Stundenerfassung šberzeit 'š' von bis m”glich
                    PRNLIB4:  Beim Drucken eines Belegs wird die erste Position immer auf die erste Seite ausgegeben,
                              auch wenn sie nicht auf die erste Seite ganz passt (Problem erste Seite leer).
           09.10.00 TOBITFW:  scanFaxWareLog() unlinkPending auf fuer mehrere Server
                              bei mehreren Servern geht jetzt auch der erste.
                              BRECLIB2: Fehler bei nicht-Stringfeldern bei der neuen Selektionsmethode beseitigt.
           18.10.00 PRNLIB4:  Bei Ausgabe von Fliesstexten auf Blaetter mit Seitenlaenge groesser gleich 9000,
                              wird ein von Hand gesetzter FormFeed (12 Strg-L) unterdrueckt.
                              (Problem bisher: Bei eMail wurden in diesem Fall 10000 Zeilen lange Seiten erzeugt).
           19.10.00 DFED2LIB: select_records, neue Methode: Problem mit ersten Datensatz selektieren beseitigt.
                    DFEXTFNC: fuer HTML-Hilfen Kommando Cxx.EURO verfuegbar:
                              Ergebnis: 1 zahlenfeld nix, 2 default not conv, 3 conv
                              Werte "<0 error, 0 nix," werden nicht ausgegeben.
           20.10.00 BRECLIB2: Fehler bei Teilstringsuche und gesetztem Filter bei der neuen Selektionsmethode beseitigt.
       001 25.10.00 FFBELPRU: Bei SerNum-Verwaltung und Verkaufsbelegschreiben neue FAKT.INI-Schalter
                              MateriallisteKeineSNVerwaltung: Wert 0/1, Default 0.
                              In Verbindung mit dem Seriennummernmodul werden Seriennummer, die
                              in der "Bestehend aus" oder Materialliste der Position eines Lieferscheins,
                              einer Rechnung oder Gutschrift stehen, automatisch in der Seriennummerndatenbank
                              gespeichert (dort Kennzeichen 'L').
                              Wird dieser Schalter auf 1 gesetzt, so werden diese Eintr„ge nicht mehr
                              erzeugt.
       002 26.10.00 NETLIB:   Neuer Schalter in der FAKT.INI:
                              PreferredServer: "SERVERNAME". Default ""
                              Dieser Schalter findet nur in der IFW-Windowsversion Verwendung.
                              Tragen Sie in einer Multi-Server-Umgebung den Server ein, auf dem
                              das IFW l„uft. Damit wird fr eine korrekte Seriennummernerkennung
                              und fr korrekte Resourcenzugriffe auf den Server gesorgt. Die maximale
                              Zeichenanzahl ist 47.
       003 26.10.00 FFERLBU:  Kostenstellen im Verkauf werden jetzt auch mit dem Modul "IFW Kostenstellenzuordnung im Einkauf"
                              untersttzt. D.h. beim Erzeugen eines Buchungsstapels (FIBU Schnittstelle) finden die
                              Kostenstellen fr den Einkauf (Feld VKKst in der Warengruppe) verwendung.
                              Bisher nur in Verbindung mit dem Modul "IFW FIBU Kostenstellen"
       004 30.10.00 FFART:    In Verbindung mit dem Artikeldispo-Modul wird bei Maschinenzeiten im KW-Zeitstrahl
                              die Auslastung in % angegeben. Die Kapazit„t pro Woche wird im Feld "minBestel" angegeben.
                    FFPROD:   Kennzeichen 'P' im Feld "Artikelart" im Artikelstamm.
                              Ein Artikel kann in diesem Feld mit 'M' als einer Maschinenzeit deklariert werden (Zus„tzlich
                              Kennzeichen 'A' fr Arbeitsgang im Feld "MaLst"). Bei der Funktion
                              "Alle Istwerte in Produktionsauftrag eintragen" wird dabei der Istwert im Produktionsauftrag
                              automatisch gesetzt (ohne BDE-Modul).
                              Das Kennzeichen 'P' entspricht dem Kennzeichen 'M', nur daá bei der Funktion der Istwert
                              nicht automatisch gesetzt wird.
                    FFPROD:   Die Taste F3 fr Neupositionierung in der Liste der Produktionspositionen ist nicht mehr verfgbar.
       005 31.10.00 DFRECOVE: df_recover_cpy() EDWRITE_NOGROUP99 beim Speichern eingebaut, wegen Aenderungsdatumsfortschreibung.
       006 02.11.00 FAKTMAIN: seit PreferdServer 002 wurden alle Screen Variablen nach dem INI lesen geloescht -> z.B. Eurokurs weg.
                              readIni() wieder in videoinit aktiviert -> mehrfaches Einlesen der INI Datei.
       007 03.11.00 PRGLOAD:  Seit dem Cachen von Systemmakros, wurde bei Suchmakros mit Programmaufruf in der Schleife Resourcen
                              nicht mehr freigegeben.
                              Im IFWPrg.setUp() werden die Resourcen mit Drop() freigegeben -> daruch Fehler behoben.
       008 06.11.00 FAKTMAIN: Neue FAKT.INI Variable:
                              [FIBU] BelegEuroAlternativWaehrung
                              LWEURO.INI wird fr [FIBU] LeitWaehrungText Vorgabe verwendet.
       009 07.11.00 DFLIB:    checkEuroTransMiCode() erweitert um Erkennung von SubMasken (ExtWindows).
                              Somit wird auch bei Untermasken die Eurokonvertierungsinformation erkannt.
       010 08.11.00 PRNLIB2:  include_formular() include MAINFILE.xxx Eintraege lassen das #Include bei nicht bestehen der
                              Datei nicht mehr stehen (tauchte im Hunk Fuss auf).
                              Mit einem ';' hinter dem #include wird der Return hinter dem Include geschluckt.
       011 09.11.00 FFBDE:    Variable 38: StopMenge eingefuehrt (bisher Menge und damit ggf. Kollision bei KuO, Feld Anzahl im Logbuch)
                              BDE.PRC  5330 5332 5335 modifiziert auf StopMenge
       012 10.11.00 FFBDE:    Links von TMBase und Briefe nach Projekte aktiviert
                              Funktion "Bewegen" bei Nachricht versenden
       013 13.11.00 STDPRJ:   Bei IFW-Freigaben mit COMPUTERNAME wird keine hardwareabhaengige Pruefung der Stationsadresse vorgenommen.
                              Nach einem IFW-Update tauchen in der Stationsliste ggf. einmalig ein neuer Verbindungseintrag fuer
                              eine Station auf.
                              Einfuehrung von Remote-User Lizenzen. Die Remoteverbindungen werden an einem '.' bei der Stationsadresse in
                              der Verbindungsliste erkannt. Die Remote-Useranzahl ist in der Seriennummernfreigabe mit verschluesselt.
                              Auf dem IFW-Startfenster "Systeminformation" wird die Anzahl Remote-Benutzerlizenzen mit einem 'R'
                              hinter den IFW-Lizenzen oben rechts angezeigt: M20R10 -> 20 Benutzerlizenzen; DAVON 10 Remotelizenzen.
       014 14.11.00 STDPRJ    Neue Benutzeranzahlpruefung aktiviert: Es wird in der Verbindungsliste alle 15 Minuten im Feld
                              "letzter Zugriff" (bisher letzter logout) die Uhrzeit und das Datum einer Verbindung gespeichert.
                              Ist das Benutzerlimit erreicht, wird anhand dieser Angaben geprueft, ob die Station noch Online ist.
                              Ist die Angabe aelter als eine Stunde, so wird die Verbindung zu dieser Station entfernt.
                    PRJPRM:   Unter Desk|Programm-Information wird in der Zeile "aktueller Client" die Anzahl Lizenzen und die
                              aktuelle Benutzeranzahl angezeigt. Die angabe wird erst nach erfolgreichem Login angezeigt. Die
                              Anzeige 20/5 steht z.B. fuer 20 Benutzer maximal, 5 Benutzer aktiv.
                              Sind Remote-Benutzerlizenzen vorhanden, so wird die Angabe mit einem 'R' gefolgt von den
                              maximalen und belegten Remotelizenzen angezeigt, also:
                              "20/5 R10/2" -> 20 Benutzer maximal, 5 aktiv; DAVON 10 Remote-Benutzerlizenzen, 2 aktiv.
           15.11.00 DFED2LIB: install() (Menuepunkt "Neu Installieren") bringt keine unoetigen Fehlermeldungen mehr
       015 15.11.00 FFFIBU2:  makeNebenBuchung() "eroeffnungsBuchung" eingefuehrt: Bei Buchungen auf die Periode 0
                              wird keine Steuerabsplittung in den Nebenbuchungen durchgefuehrt, egal ob Steuer eingetragen ist.
                              Ist Skonto eingetragen, so wird dieser Anteil ebenfalls nicht gesondert abgefuehrt. Der Skontobetrag
                              wird genauso verbucht wie der Buchungsbetrag selbst.
           20.11.00 FFFIBU2:  Bei Buchungen auf Periode 0 (Eroeffnung) ist auch ein Datum groesser der Periode 31.01.xxxx moeglich.
       016 24.11.00 FFFIBU2:  Kennzeichen '|' in Journal zur Uebersteuerung von Skonto ohne OP Bezug
                              Kennzeichen 'E' in Stapel fuer Eroeffnungsbuchung
                              Kennzeichen 'E' und 'Z' im Stapel fuer Eroeffnungsbuchung Bezahlung. Buchung von Skonto/Kulanz/Verzug
                              (Kulanz, Verug mit Schluesselwort "Kulanz:" und "Verzug:" in der zweiten Textzeile),
                              Funktion OP eroeffnen aktiviert.
                              Funktion Verb eroeffnen aktiviert.
                              Uebertragen werden alle OP/Verb mit einem $ und Saldo !=0 oder einem '$' Zwangseroeffnungskennzeichen '*'.
                              '$' Sperrt die OP/Verb gegen Aenderung und Bebuchung von der FIBU aus.
       017 28.11.00 DFEDLIB:  Bei der Meldung "Sie haben kein Zugriffsrecht auf die Maske der Datei. (TASTE)" konnte es zu einer
                              Endlosschleife kommen. Problem beseitigt.
                    FFFIBU2:  Bei aktivierten DATEV-Schalter werden Kontennummernkreise und ihr Kontentyp 'D' 'K' und 'S' beim Speichern
                              des Konto geprueft.
                              Das Bebuchen von Personenkonten ist nur noch mit OP-Bezug moeglich (bei gesetzten DATEV-Schalter). 
                              Genauer:
                              Steht im Block "Zahlungsausgang (Einkauf)" im Feld "Kto an" ein Personenkonto, so muss im
                              Feld "Verbind." ein Eintrag vorhanden sein.
                              Steht im Block "Zahlungseingang (Verkauf)" im Feld "an Kto" ein Personenkonto, so muss im
                              Feld "OP" ein Eintrag vorhanden sein.
                              Die Pruefung erfolgt nur beim manuellen Speichern einer Buchungsmaske.
                    PRJPRM:   In der Eroeffnungsmaske "Systeminformation" wird in der Zeile "Konfigurationsdatei:" zusaetzlich
                              die Leitwaehrung in runden Klammern ausgegeben (z.B. (EUR)).
                    FFDATEV:  Datevdisketten werden ab sofort beim Leitwaehrung EUR mit dem Waehrungsschluessel "o01" 
                              fuer Euro versehen. Beim Einlesen ist in der Datevmaske DVE000 ein Feld Waehrungske. (110) vorhanden,
                              in dem das Waehrungskennzeichen eingelesen wird.
       018 29.11.00 DFEXTFNC: DTA Disketten schreiben bei beim Leitwaehrung EUR Euroformat
       019 30.11.00 CALCMAI:  cpy_maibuff_() Zwangsloeschung des "Schwanzes" beim normalem Feld
                              convert_mai_input() Feldinhalt wird komplett geloescht, bevor der neue Feldinhalt einkopiert wird.
                    WINIFW:   Beim Runterfahren von Windows schliesst sich das IFW automatisch.
       020 01.12.00 STDPRJ_:  Bei defData-Zuweisung (merken der Cursorposition in einer Datenbank), gehen jetzt auch Datenbaenke
                              mit Zugrifssnummer >0x7F (unsigned char Problem). Z.B. die Waehrungsdatenbank verlor immer die Position.
                    FFEINK:   Neuer Schalter "WareneingangKontenuebernahme" in der Sektion FIBU
       021 08.12.00 FFSTATIS: artums_writeartikel() "Artikelmengenumsatz" VK mit Preiseinheiten korrigiert
                    PRGLOAD:  NeueKommandos LWCheckOp und LWCheckVb:
                              Ueberpruefung nach der Euro-Konvertierung. Prueft die Leitwaehrungsfelder in der OP oder Verbindlichkeitenmask.
                              Sind sie zu runden oder differenzen auszugleichen, werden sie in der Maske geaendert und in V1 der Wert 1
                              zurueckgeliefert, sonst der Wert 0.
                    FFVERK:   Summe OffPos beim selektieren und Menuepunkt: Die Summe ist jetzt immer ohne Verzug. Sie sollte mit der
                              FIBU gleich sein. Die Summe im Feld FIBU-Saldo (31) ist jetzt auch ohne Verzug und bei Kennzeichen '$' 0.
                    FFEINK:   Summe Verb. beim Selektieren und Menuepunkt: Die Summe ist jetzt immer abzueglich des Verbucht-Betrages.
                              Sie sollte mit der FIBU gleich sein. Die Summe im Feld FIBU-Saldo (31) ist jetzt auch ohne Verzug und
                              bei Kennzeichen '$' 0.
                    FFFIBU:   Vor Einbuchen des Stapels in die Fibu wird ab sofort eine Pruefung des Stapels vorgenommen.
                              Die Pruefung ist die selbe wie die vor dem Schreiben einer DATEV-Diskette.
                    WINIFW:   Der IFW-Prozess wird ab sofort immer beim Programmstart gestartet. 
                              Es wurde bisher nur beim Vorhandensein eines Benutzer-Loginname als Parameters sofort gestartet.
       022 11.12.00 WINIFW:   Es kann jetzt ein Hintergrundbild angegeben werden. In der IFWC.INI in der Sektion [Settings] BackgroundImage=
                    FAKTEDIT: Beim Speichern eines Belegs wird in edit_datazwsp_speichern() bei den Positionen vor dem Speichern
                              sicherheithalber nochmal eine Kopie der Belegnummer in die Listenposition vorgenommen (ROB SA, Probleme beim
                              Prod. Splitten, Positionen landeten im letzten Beleg vorm Splitten?)
       023 13.12.00 FAKTINV:  Auch ohne erweitertem Inventurmodul steht die Funktion "Inventuradten loeschen" zur Verfuegung
       024 14.12.00 FFVERK:   In Verbindung mit der FIBU laesst sich das Kursfeld der Rechnungsstellung auf einem OP nicht mehr veraendern.
                    FFEINK:   Der Bezahltkurs wir mit der FIBU nicht mehr beim Abrufen des Kurses gesetzt.
                    PRN...:   Neue Druckvariable [Vp1 bis [Vp4. Damit lassen sich Informationen nach dem Druck im
                              Ausgabeformular F4 Speichern. Dabei Speichert Vp1 im Feld .98C65, Vp2 in .98C66, Vp3 in .98C12 und
                              Vp4 in .98C13 die Daten ab. Mit diesen Variablen ist es moeglich z.B. bei jedem Ausdruck eine
                              fortlaufende Nummer zu vergeben.
                    FFSTDVK:  auftrag_abschliessen() Sollten negative Mengen in einer Auftragsposition enthalten sein, so wird er
                              erst abgeschlossen, wenn die negative Menge als ausgeliefert erreicht ist.
                              Dies gilt auch fuer Lieferscheine abschliessen, Produktionen abschliessen und Bestellungen abschliessen.
                              Bei Wareneingang von Bestellung werden bei negativen Mengen die Waren bis zum erreichen der negatieven Menge uebernommen.
       025 15.12.00 FFVERK:   In den OP's gibt es ein neues Verzugsfeld (C238). Ab sofort schreibt das Mahnwesen die Verzugskosten in dieses Feld.
                              Es ist nicht mehr Bestandteil des Saldos, so dass insbesonderst in Verbindung mit der FIBU kein Verzugskostenausgleich
                              zum OP mehr stattfinden muss.
                              Das neue Feld wird beim Mahnen unter folgenden Bedingungen verwendet:
                              Der Bezahltbetrag ist 0.00 oder das alte Verzugsfeld (C8) ist 0.00
                    FFVERK:   In Verbindung mit der FIBU gibt es im OP ein Fremdwaehrungskorrekturfeld (C106).
                              Damit ist es moeglich den Fremdwaehrungssaldo manuell zu korrigieren.
       026 19.12.00 FFPPS2:   calcPPSZeittabelle() jetzt auch fuer Produktionen einsetztbar.
                              Prozenttabelle fuer Chargengroesse "25 100%; 50 20%; 200 15%; 500 10%; 5%" Typ 'T' aktiviert (SZ prozentual Runtergerechnet).
       027 20.12.00 FFFIRUMS: Der Jahresabschluss kann ab 20.12 des aktuellen Jahres gestartet werden.
                              Der Monatsabschluss unter dem Jahr 6 Tage vor Monatsende.
                              Wird eine Rechnung oder Gutschrift ausserhalb des Statistikjahrs geschrieben, kommt eine Warnmeldung
                              wegen fehlender Onlinestatistik.
       028 03.01.01 FAKTSUB:  Mit dem Taschenrechner kann mit Strg Pfeil Links und Rechts die Zahl mit dem Eurofaktor multipliziert oder Dividiert werden.
                    INPLIB:   Die Kurseingabemaske reagiert jetzt bei einem Fremdwaehrungsfeld auf einer Maske mit Kursfeldern abhaengig vom
                              vorgegebenen Kurs auf der Maske: Ist das Kursfeld leer oder die Leitwaehrung als Kurs vorgegeben, so
                              wird das Fremdwaehrungsfeld wie ein Leitwaehrungsfeld behandelt. Ansonsten wird die Fremdwaehrung
                              als Kurs vorgegeben und das Eingabeverfahren invertiert (invertiert: Die Fremdwaehrung wird als Rueckgabewert
                              in die Maske uebernommen, nicht die Leitwaehrung).
                    FFART:    Bei Betonbranche wird auf der Artikelmaske bei Rohdichte ==0 eine Rohdichte von
                              1000kg/cbm zur Berechnung der EK-Werte (Vorkalkmaske F1) verwendet. Bisher wurde durch den Wert 0.0
                              bei ME ungleich "to,ltr,l,kg" ungueltige Floatwerte in der Vorkalkmaske berechnet.
                    FAKTEDIT: Bei OP und Verbindlichkeiten aendern wird vor dem Speichern zusaetzlich eine Benutzerkollisions-
                              pruefung vorgenommen. In bestimmten Faellen konnte vorkommen, dass beim Bebuchen eines Op's und gleichzeitiger
                              Veraenderung an einem anderen Arbeitsplatz die Buchungsdaten verloren gingen. Die Kollision wird
                              mit der Meldung  "Der Beleg wurde inzwischen ge„ndert, Speichern nicht m”glich! (Zurck)" angezeigt.
       029 04.01.01 DFLIB2:   get_listtypmai() geaendert, so dass Felder mit der Codenummer MAIC_LISTE Vorrang hat vor anderen Listfeldern auf der Maske.
                              Durch das Artikeldokumentenverwaltungsmodul wurde die Funktion "Artikelliste neu kalkulieren" ausser Funktion
                              gesetzt, da das Listenfeld der Dokumentenverwaltung auf der Maske vorrang vor dem Materiallistenfeld hatte.
                              Problem beseitigt.
                    FFEINK:   loadEkErlKto() Meldung "get_codemai 92 == NULL" bei Artikel auf Bestellungposition abrufen beseitigt (entstand in verbindung
                              mit Datev Modul ohne Kostenstellen und dem neuen Schalter WareneingangKontenuebernahme)
       030 15.01.01 FFWEG:    Von Wareneingang Verbindlichkeit oder von Warenruecksendung Gutschrift anlegen, falsche Kollisionsmeldung von
                              028 beseitigt (Problem beim weiterschreibmodus, sicherheithalber backbuff bei weiterschreiben abegschaltet,
                              optional ueber aufruf von edit_datasingle_() Uebergabe moeglich)
       031 17.01.01 CONLIB:   KEY_CLIPBOARD_COPY eingebaut. Es lassen sich jetzt die Textfelder komplett kopieren, wenn kein Block selektiert wird.
                              Ausserdem werden inaktive Felder (violetter Balken) ebenfalls kopiert. HotKey unter Windows Strg-C
                    WINLIB:   Bei Datumskurzeingabe mit der Jahreszahl 0, wird auf 2000 ergaenzt, nicht mehr auf das aktuelle Jahr
                    WINIFW:   KEY_CLIPBOARD_PASTE eingebaut. Die Daten werden beim IFW-Client als Block uebertragen, nicht mehr als Tastaturdaten. 
                              Damit erfolgt das Einfuegen "am Stueck" und nicht mehr als schnelle Eingabe von Zeichen.
                    WINIFW:   Woerter auf dem Bildschirm lassen sich ancklicken. Ist es ein Wort mit einem Punkt und 2,3 oder 4 Zeichen nach
                              dem Punkt wird versucht das Wort mit einem evt. verknuepften Programm aufzurufen.
           02.02.01 PPS:      Nach 2 Wochen PPS Programmierung:
                              PPS mit Kapazitaetsanzeige erstmals einsetztbar, am 01.02.01 bei ROB aktiviert
       032 05.02.01 PRGLOAD:  ProdSetSollProdTermin() korregiert, insbesondere material_in_bauzettel_() modus 2
                              Auch die Sollwerte der Arbeitsgangpositionen wurden in Verbindung mit dem BDE-System nicht bearbeitet.
                              Problem beseitigt. Freigabe des Kommandos in den News
                    FFERLBU:  Kostenstellen im Einkauf und Findung der Erloeskonten im Einkauf:
                              Bei Angabe einer Kostenstelle im Einkauf und gleichzeitigem Erfassen eines EG oder Auslandsbeleg, werden
                              nichtmehr faelschlicherweise die Inlandserloeskonten angezogen.
       033 06.02.01 PRGLOAD:  ProdSetSollProdTermin() korregiert, bei Artikeltyp 'P' wurden keine Sollwerte geaendert.
       034 06.02.01 WINIFW:   Remoteclient 1.2 aktiviert: Copy/Paste, Beep, PRNEXECUTE
                              Host autologout bei Hostconnect
                    DFPRN:    Druckeranschlusstyp AR: aktiviert "Autoremote". Fuer REMOTE: ist jetzt auch RE: verwendbar.
           07.02.01 DFPRN     drucker_HTML_EXPORT_anlegen() legt ab sofort AR:c:\temp\ifw.htm an.
       035 19.02.01 PRNLIB:   Neue Druckoption [Vt:f"abc.asc"]. Erweitert den Dateiname um den Pfad, in dem das Programm IFW gestartet wurde. 
                              Z.B. "abc.asc" -> "C:\IFW\abc.asc".
                    WINLIB    Schutzverletzung bei WINIFW ALT_F4 beenden:
                              In print_windowtitle() bei TheWinConsolePtr==NULL Sperre (return;) eingebaut.
           21.02.01 TEXTEDI2: tediDateianhang() bei ClientOnline abgschaltet
                    DIRLIB:   dir() bei ClientOnline Tasten fuer Verzeichnis wechseln abgeschaltet.
       036 22.02.01 DFLIB:    df_looprec zeigt keine Deadlock-Fehlermeldung -78 mehr an
                    FAKTMAIN: FileLockMiliSec und FileLockRetrys war vom INI-File her ueber kreuz zugewiesen
                    BRECLIB:  close_record() gibt bei aktivem TTS jetzt immer -BE_OPNOTALLOWED zurueck.
                              Dies wurde bisher ab Btrieve 7.0 nicht gemacht -> afhaengen der Filezugriffe,
                              weil eine Datei auf dem Server mit TTS-Kennung haengen blieb, wenn im TTS lauf ein
                              close_record() vorkam.
                    FFARTBCH: beleg_materialbuchen() fuehrt jetzt bei einem Deadlock mit TTS automatisch bis zu 5 mal 
                              die Buchung durch.
                    BRECLIB:  _begin_trans() verwendet jetzt automatisch 1019 wenn BtrieveVersion >=7.0.
                              Damit wird bei Btrievdatein >=6.0 TTS im konkurierendem Modus verwendet ->
                              gleichzeitiger Zugriff mehrerer Clients mit TTS auf die Dateien und nicht mehr
                              totales blockieren einer Datei waehrend des TTS laufs -> super Performence.
                    WINIFW:   Bei IFW Versionen mit unterschiedlchen Toolbars stuerzt WINIFW beim Starten ab.
                              Die LoadBarState und SaveBarState Routinen von Windows blickt die unterschiedlichen IFWC.INI
                              Dateien nicht. Daher neue Sektion "IfwButtons10" und "IfwButtonsPPS10" eingefuehrt (EmuMFrm.cpp).
                              In Zukunft wird die Versionnummer erhoeht, wenn neue Toolbars entstehen.
                    FFERLBU:  Bei FIBU-Stapelerzeugung wurde bei EG-Wareneingaengen mit Konten in den Positionen nicht die
                              EG-Steuerschluessel ausgewiesen. In ErlKto::KtoPosAdd() wird jetzt immer der Steuerschluessel
                              mit getAuslandErlKto() abgerufen, damit Fehler beseitigt.
                    PINBOARD: Bei Meldunganzeige mit STRG-ENTER zum Bestaetigen, isAPPExitKey() fuer ALT-F4 unter Windows zugelassen.
       037 23.02.01 FFERLBU:  Bei der Erloeskontenfindung wird bei Auslandskonten bei nicht vorhanden sein das Konto leer gelassen.
                              Bisher wurde in diesem Fall auf die Inlandskonten zurueckgegriffen.
       038 26.02.01 TOBITFW:  Bei eingehenden eMails wird als Erstellungsdatum absofort das eMail-Eingangsdatum verwendet.
                              Bisher wurde immer das Einlesedatum des eMails in das IFW verwendet.
           27.02.01 BRAIN:    James wird vergesslich. Er prueft beim Laden seine gespeicherten Funktionen und reduziert beim
                              erreichen eines Grenzwerts sein Wissen.
                              Beim logout() wird James entladen. Somit bleibt beim User-Ummelden nicht mehr der zuerst geladene James
                              h„ngen (Bei einer Benutzerummeldung benutzte der neue User den James des vorherigen Users).
                    James:    In den Benutzersystemeinstellungen l„sst sich ab sofort James (F4/F10 automatische Benutzermenuekonfiguration)
                              unter "4 James, Hilfeneinstellungen, Programmaufruf" konfigurieren:
                              - James ist ganz abgeschaltet:
                                Als F4/F10 Menuestruktur wird die Standardstruktur angeboten
                              - James kann sich wenig merken   (50)
                              - James kann sich einiges merken (100)
                              - James kann sich viel merken    (500)
                                Bei jeder Menueauswahl merkt sich James die vom Benutzer verwendeten Menuepunkte. Mehrfach verwendete Menuepunkte werden
                                mit einer entsprechenden h”heren Wahrscheinlichkeit gespeichert was zu einem stehten ansteigen der Informationen fuehrt.
                                (Zeitverzug nach dem bet„tigen der Taste F4 und erscheinen des Menues). Wird eine bestimmte Grenze erreicht, so wird eine 
                                Reduktion der gespeicherten Daten vorgenommen. Mit der Schwelle 50/100/500 kann die Speichermenge der Infomationen 
                                eingestellt werden, bei denen dieser Vorgang ausgel”st wird (Standard 100). Der Vorgang wird unmittelbar nach dem ersten 
                                mal Laden von James vorgenommen ("Guten Tag xxx, hier ist ihr Butler James.").
                              - James vergisst selten verwendete Eintr„ge
                                Ist dieser Schalter aktiv, so werden Eintr„ge die nur einmalig oder vor l„ngerem verwendet wurden w„hrend des Reduktionslaufs
                                gel”scht. VORSICHT die Eintr„ge sind dann nicht mehr in ihrem pers”nlichen Auswahlmenue (F4/F10) und muessen erneut
                                ueber "Alle Eintr„ge" abgerufen werden.
                    STDPRJ:   Menuepunkt "Wortanfang selektieren" eingebaut. Damit ist auch unter WINIFW die Funktion aufrufbar.
           28.02.01 EmuMFrm:  Die Sektionsnamen der Windowseinstellungen in der Datei IFWC.INI werden ab sofort mit der Seriennummer der IFW-Version gespeichert.
       039 02.03.01 WINIFW:   Es ist jetzt eine Aufloesung von max 255x255 auf dem Desktop moeglich, nicht mehr nur 80x25.
                    CONLIB:   Beim Verschieben von Icons auf dem Desktop wird das Icon automatisch bei gedrueckter Maustaste und bewegen der Maus erfasst.
                              Bisher musste immer etwas gewartet werden, bevor die Maus bewegt werden durfte.
                    WINIFW:   Tooltips erscheinen jetzt immer sofort.
                              Das Hintergrundbild kann jetzt als Vollbild (stretch) eingestellt werden.
           08.03.01 PRNLIB:   Neues DVL Kommando ':M' [Vt:M""] verfuegbar. Damit wird in Vt der String MD5-Verschluesselt gespeichert (immer 32 Zeichen).
       040 09.03.01 FFBSTLST: Bei den Menuefunktionen Bestellvorschlaege werden zuvor evt. gesetzte Selektionskriterien auf den Feldern geloescht. Es konnte
                              vorkommen, dass bei gleichzeitiger Verwendung von Macros Selektionsbedingungen in der Maske zurueck blieben, die die selektionsmenge
                              beeinflussten.
                    DFLIB2:   setBrowseHelpNr() setzt den Hilf0xfeoffset mit 0x10000000. Insbesonderst die ToolTip-Hilfen wurden auf den Browser-Fenster falsch
                              zugeordnet (Eintrag ohne 0x10000000).
       041 12.03.01 WINIFW:   Icons auf dem Hintergrund aktiviert
           13.03.01 WINIFW:   Icons auch ueber IFW_WWW uebertragen
       042 14.03.01 WINIFW:   Vergroeserter Bildschirm (ReSize) auch ueber IFW_WWW uebertragbar Client 1.2-3
           19.03.01 WINIFW:   Beim Beenden des IFWs bei minimisierter Groesse stuerzte es beim Start ab. Fehler beseitigt. Beim Start wird zusaetzlich immer
                              von Minimisiert auf Normalgroesse umgeschaltet.
       043 19.03.01 WINIFW:   Shift-F1 als IFW-Funktion verfuegbar (In der Eingabemaske Datenbankauswahl bei F1 Feldern).
                              Bisher wurde die Windowstypische Hilfefunktion aktiviert.
           21.03.01 WINIFW:   ASP-Host Screensize wird beim Anmelden bei Client kleiner 1.2-03 erst mal auf 80x25 gestellt (nicht bei ganz altem Client).
                              Die Incons werden bei ClientOnline und kleiner 1.2-03 auf TextIcons umgeschaltet.
                              Windowshilfe Shift-F1 -> Shift-Alt-F1 nach Shift-Ctrl-Alt-F1 umgelegt.
       044 21.03.01 WINIFW:   Beim Einloggen wird die Version des Clients geprueft und ggf. eine Meldung ausgegeben, wenn nicht der aktuelle Client verwendet wird.
       045 26.03.01 WINIFW:   Die Routine atof() gibt ggf. verschiedene Werte zurueck, je nach laenderspezifischer Einstellung von Windows. Dies fuehrt auch
                              zur Nichterkennung der Sereiennummer (Meldung "Die Seriennummer ist falsch eingegeben!"). Es wird zusaetzlich eine Meldung
                              beim Programmstart ausgegeben, falls die Laendereinstellung von Windows unpassend ist
                              (Meldung "Die l„nderspezifische Einstellung scheint nicht korrekt zu sein! (Nur lesen)").
                              Die Seriennummerndatei wird jetzt im modus "Read Binary" gelesen, nicht mehr "Read Text".
           28.03.01 DFIMP:    Der Schalter @B kann im Kopfhunk einer Importvorlage angegeben werden.
                              Damit wird der Maskeninhalt nach Ausfuerung des Hunks KOPF und nach jedem Speichern eines Datesatzes
                              als Vorgabe zum Einlesen des naechsten Datensatzes verwendet (die Daten werden mitgeschleppt). Damit
                              ist es moeglich, z.B. Kopfinformationen die nur am Beginn der einzulesenden Daten stehen in jeden
                              zu speichernden Datensatzes eines Importslauf zu uebertragen.
           29.03.01 DFIMP:    Steht das Kommando "End();" in einer Zeile der Importvorlage, so wird automatisch die
                              Importvorlage selbst als Makro-Programm vor dem Abspeichern des Datensatzes ausgefuehrt.
                              Dabei wird es vor evt. anderen zur Importvorlage vorhandenen Makro-Programmen ausgefuert.
                              Ein Rueckgabewert ungleich 0 fuehrt zu einer Nichtspeicherung des Datensatzes.
       046 02.04.01 FFVERK:   Neues Modul "eMail-Kundenanforderungen" implementiert.
           05.04.01 WINIFW:   Die Sonderzeichen aeiou mit z.B. in Frankreich ueblichen Sondersymbolen aktiviert.
                    POPUPMNU: James (F4) zeigt gelernte Menuepunkt, auf die keine Zugriffsrechte mehr bestehen, nicht mehr an.
       047 09.04.01 TOBITFW:  In der Benutzermaske gibt es ein neues Feld "LOG UsrID:". In diesem Feld kann explizit die DAVID-Logbuchdatei (Tobit DAVID/FaxWare)
                              angegeben werden, die fuer den im IFW eingelogte User gescannt werden soll. Geben Sie dort nur den Dateiname
                              ohne Pfad und Extender an. Ist dort nichts eingegeben, so wird wie bisher anhand des eingelogten Novell-Users
                              der Logbuchdateiname ermittelt und gescannt. Sollten mehrere Logbuecher gescannt werden, so koennen Sie hier mit ';' getrennt angegeben werden.
                              Bei mehreren gesetzten Pfaden (Maske System|Programmeinstellungen|04 Firmenangaben fuer Ausdrucke Feld "Faxlog-Pfad:" mit ';' getrennte Angaben)
                              werden entsprechend nur die korrespondierenden Pfade gescannt.
                    PINBOARD: Wurde eine eingehende Nachricht angezeigt (Strg-Enter zum Bestaetigen), dann wurde unnoetig viel Rechenleistung belegt
                              (Tastatureingabe wurde staendig gepollt). Problem beseitigt.
       048 10.04.01 FFSTDVK:  get_firma_() Bei Uebernahme eines Ansprechpartners auf einen Belge konnte bei gleichem Personennamen und gleichem Firmennamen vorkommen, dass
                              nicht der ausgewaehlte Ansprechpartner/Firma auf den Beleg uebernommen wurde, sondern der erste mit dem Namen aus der Liste. Problem beseitigt.
                    DFEXTFNC: Druckvorlagen [MParent Kommando umgebaut, so dass auch Temporaerkarteien korrekt erkannt werden.
           11.04.01 FAKTMAIN: Es ist jetzt moeglich mandantenabhaengig die FAKT.INI Datei einzulesen. Nach dem Anmelden des Users wird
                              zuerst die FAKT.INI Datei eingelesen und dann versucht die Datei FAKTxxx.INI mit der Mandantennummer xxx einzulesen.
                              Dabei werden nur die Eintraege aus der mandantenabhaengigen INI Datei gelesen, die dort angegeben sind. Alle anderen Eintraege
                              werden als Vorgabe aus der FAKT.INI Datei gelesen.
       049 12.04.01 FAKTMAIN: Neuer INI Schalter LieferscheinstapelNummernPruefen in der Sektion System
                              ;LieferscheinstapelNummernPruefen: Wert 0/1. Default 1.
                              ;In Verbindung des Moduls "Lieferscheinstapelverarbeitung" in der Betonbranche
                              ;l„át sich mit dem Wert 0 die Prfung der lckenlosen Lieferscheinnummern abschalten.
                              ;Es wird dann automatisch ohne Meldung die Verarbeitung fortgesetzt.
                    FAKTEDIT: Bei Stapelverarbeitung von Belegen (Modus AUTOSPEICHERN) wird das Systemmakro
                              xxxxxx.$18 ausgeloest. Die Funktion ist wie die Systemmakros .$16 (aendern) und .$17 (neu)
                              Ein Rueckgabewert ungleich 0 fuert zum Nichtspeichern des Belegs.
       050 20.04.01 COMSOCK:  Der WINIFW ASP-Host macht bei einem Disconnect oder Verbindungsabriss einen Restart.
                              Beim Beenden einer Fernsession wird immer rein Restart durchgefuehrt.
                    WINIFW:   Bei Vorgabe eines Ports mit /pnnnn wird in der INI-Datei automatisch die Sektion :nnnn angelegt und benutzt.
                              D.h. es wird automatisch fuer jede Portangabe eine eigene Windowseinstellung und Position gespeichert.
           23.04.01 STDPRJ:   bei Install Console.test^=TEST_HELP|TEST_MEMMANAGER|TEST_ERROR entfernt.
           26.04.01 FFBETON:  Lieferscheinstapelverarbeitung ab Rev. 2.1-13/050 (26.04.2001)
                              --------------------------------------------------------------
                              Ausfhren des Systemmakros 023000.$18 vorm Speichern des Lieferscheinbelegs. In ihm wird
                              die Baustellengltigkeit geprft. Bei Meldung wird die Verarbeitung abgebrochen. Beim Abbruch 
                              wird die Frage  "Bearbeitungsvorgang Abbrechen? (Abbruch/Weiter)" nur noch im Modus
                              "Jeden Lieferschein anzeigen" gestellt. In den anderen Modis wird automatisch immer
                              Abbruch ausgefhrt. Im Fall eines Abbruchs wird die Verarbeitung nicht mehr verlassen, sondern
                              in die Lieferscheinstapelliste zurckgekehrt, in der der Eintrag deselektiert und die Verarbeitung
                              fortgesetzt werden kann.
       051 04.05.01 DFEXTFNC: Unter Windows NT und 2000 brachte beim Drucken an einen Windowsdrucker StartDocPrinter() den
                              Fehler 124 (falsches Strukturlevel) zurueck. Struckturlevel von 2 auf 1 umgestellt, Fehlermeldung beseitigt.
                              (Window NT und 2000 ist zu Windows 95/85/ME in diesem Punkt nicht abwaertskompatibel).
           07.05.01 WINIFW:   Beim Drucken in eine Windowsqueue wird im Namen der Text an der LETZTEN vorkommendenden Zeichenfolge " (" abgeschnitten,
                              nicht mehr an der Ersten.
                              Im Text wird der Druckeranschluss mit " (Anschluss)" angehaengt. Diese Angabe wird zum Ansprechen der
                              Druckerwarteschlange wieder gekuerzt. Sollte der Druckename selbst diese Zeichenfolge besitzen (z.B. "Laserdurcker (2) (LPT1:)")
                              dann wurde der Name bisher nicht richtig erkannt.
                    WINIFW:   Bei Windows NT und 2000 wurde bei der Fontauswahl die Fontbreite korregiert. Die bisherige Berechnung fuehrte zu
                              einer ueberbreiten Fontanzeige beim ersten Starten des IFW's.
                    FAKTMAIN: Neuer INI Schalter LieferscheinstapelPreisePruefen in der Sektion System
                              ;LieferscheinstapelPreisePruefen: Wert 0/1. Default 1.
                              ;In Verbindung des Moduls "Lieferscheinstapelverarbeitung" in der Betonbranche
                              ;l„át sich mit dem Wert 0 die Prfung der Preise von Sortenartikel in der Baustelle
                              ;eines Kunden abschalten.
                              ;Es wird dann automatisch ohne Meldung die Verarbeitung fortgesetzt.
       052 08.05.01 MSCON:    Bei der OnDraw Routine werden '\0'-Zeichen jetzt automatsich als ' '-Zeichen ausgegeben.
                              Diverse Fonts fuehrten bei der Ausgabe das Zeichen '\0' in das Zeichen 255 ueber, das ggf. als
                              Symbol oder Buchstaben dargestellt wurde. Problem beseitigt.
                    FFPROD2:  Schutzverletzung bei Produktion abgleichen mit Produktionen in denen bereits Istwerte eingetragen sind beseitigt.
                    STDPRJ_:  Das Datenbankkennzeichen fuer Archiv und Aenderungsarchiv wird jetzt ab abrufen von Links (F1) auf einer Maske
                              immer automatisch vererbt. Damit wird bei Abrufen von Daten aus dem Archiv das Wort (ARCHIV) in der Uebersicht
                              automatisch richtig angezeigt.
           09.05.01 PRNLIB3:  Neue Druckvorlagenkommandos:
                              [VnSetFokusNr,V10]
                              [VnSetMask]        ->nur mit gesetztem Fokus moeglich
                              [VnLoadMask]       ->nur mit gesetztem Fokus moeglich; [L und [M zusammen
                              - Mit VnSetFokusNr wird der aktuelle Tabelleneintrag auf den angegebene Indexeintrag gesetzt.
                                Bisher musste dazu die Zeile [VnSetFokus,Vn(V10)(-1)] (setze den Fokus auf den Fokustext des Eintrags V10)
                                verwendet werden.
                              - VnSetMask setzt einen Link auf den aktuellen Datensatz (Maske) der aktuelle Datenbank in den aktuellen Tabelleneintrag.
                              - VnLoadMask ruft den zuvor mit VnSetMask gesetzten Link aus dem aktuellen Tabelleneintrag ab. Es 
                                laedt die Maske und setzt automatisch die aktuelle Maske der Druckvolage auf die geladene Maske
                                (wie [L und [M nacheinander). Ausserdem wird die urspruenglich Lademaske (die mit [m0] erreichbar ist) 
                                des Hunks auf die geladene Mask verstellt! Darum sollte das Kommando grundsaetzlich nur in einem Sub-Hunk aufgerufen werden.
           10.05.01 WINIFW:   Die Buchstaben "hoch 2" und "mue" sind eingebbar.
                    FFPROD2:  Beim Absplitten von mehreren selektierten Produktionen wird nach dem Splittvorgang bei den abgeplitteten Produktionen
                              die Verweise fuer die Abhaengigkeit der Produktionen angepasst. Dabei wird die Frage
                              "Produktionsverweise in den abgesplitteten Produktionen anpassen? (Ja/Nein)" gestellt. Bei Nein erfolgt
                              keine Anpassung. Bei Ja werden innerhalb der abgesplitteten Produktionen die Verweise so auf die abgesplitteten Produktionen
                              so angepasst, wie sie bei den originalen Produktionen untereinander bestehen.
       053 11.05.01 STDMSK:   Beim Abrufen des Druckeranschlusses in der Druckerliste werden nur noch bei Veraenderung des Eintrags die verfuegbaren
                              Drucker gescannt. Bei umfangreichen Netzwerken kann das Scannen der Drucker erhebliche Zeit benoetigen, so dass das 
                              reibungslose Bedienen der Maske gestoert war. Desweiteren wurden die Resourcedateien der Druckerliste und Ausgabeformulare
                              modifiziert, so dass dort laengere Druckeranschlussbezeichnungen und Zieldateinamen angegeben werden koennen.
           14.05.01 FFBETON:  Berechnung der Baustellenstatistik modifiziert.
           16.05.01 FFSTDVK:  Korrektur der Funktion "Rabatt auf Titelsumme" in den Ausgangsbelegen:
                              Bei Bildung von Titeln in Ausgangsbelegen mit den Positionstypen 'B' 'U' 'U' '=' und Verwendung
                              von einem Rabatt auf die so entstehenden Titelsumme in der '='-Possition, konnte eine Betragsabweichung bei
                              bestimmten Positionsbetraegen gegenueber der Belegsumme entstehen. Dies wurde mit der Meldung
                              "Summe der '=' und Haupt-Pos. ist ungleich der Belegsumme! (Weiter/Zurck)" angezeigt. Die Differenz
                              entstand aus dem Problem von prozentualen Abschlaegen von einem grossen Betrag gegenueber vielen kleinen
                              Betraegen. Problem durch permanente Einzelbetragskorrektur beseitigt.
       054 21.05.01 FFERLBU:  In Verbindung mit Frachterl”sen in der Beton-Branche wurde bisher die Menge einer Position nicht bercksichtigt. D.h.
                              es wurde als Frachterl”s wurden immer der Betrag fr eine Einheit ausgewiesen! Fehler beseitigt.
                    FFEINK:   Bei Fremdleistung von Produktion bestellen fehlendes "LiTerm" nicht mehr Melden (gab get_namemai == NULL Error wenn keine
                              bestaetigten Bestellungen installiert waren).
       055 23.05.01 FFDATEV:  Neues Kommando ExportFIBUStapel( Ausgabeformular);
                    DFEDLIB :  Nach ausfuehren von F10 wird immer dfe_aopen() durchgefuert -> verhindert Error -219 (Kartei geschlossen) im Browser
                              falls ein PRG-Kommando die Datenbank am Ende Schliesst.
                    DFPRN:    dfPrintFormular() fuehrt jetzt immer set_print( 0,NULL,NULL) am Ende aus (Drucker schliessen), auch wenn ein Fehler
                              oder Abbruch waehrend der Ausgabe stattfand.
                    PRJPRM:   GlobalInfo::Drop() hat die Config.rec nicht freigegeben -> config.rec usercnt erhoehte sich staendig.
                    FFFIBUDV: OffPos2Journal::MakeMask() hat die Rechng.rec nicht freigegeben -> rechng.rec usercnt erhoehte sich staendig bei
                              Stapelerzeugung Verkauf.
       056 19.06.01 FAKTEDIT: Zusaetzlicher Schutz beim Veraendern von Belegen. Ist wird vor dem Speichern geprueft, ob der Beleg zum
                              Zeitpunkt des Ladens mit dem in der Datenbank zum Zeitpunkt des Speicherns uebereinstimmt. Sollte er inzwischen von einem 
                              anderen Anwender in der Datenbank veraendert worden sein, so wird die Meldung
                              "Der Beleg wurde inzwischen ge„ndert, Speichern nicht m”glich! (Zurck)"
                              oder
                              "Der Beleg wurde inzwischen ge„ndert! Der Vorgang wird abgebrochen (Abbruch)"
                              ausgegeben.
                    DFLOADZW: Wird bei der IFW Windowsversion die Belegart vom gleichen User auf mehreren Rechnern verwendet, so erfolgt vor der Meldung
                              "Die Belegart wird von Ihnen bereits auf einer anderen Station bearbeitet!"
                              nicht mehr die Meldung
                              "Error #13 on clrtemp TEMPDAT\xxxxxx.rec (#13)".
                    WINIFW:   Ist die Datei "Doku\\Handbuch\\Handbuch.chm" vorhanden (IFW-Handbuch in kompilierten HTML), dann wird diese
                              verwendet anstatt der Windowshilfe "Handbuch.hlp"
                    CALCMAI:  sprintdm() bringt bei Werten groesser als 1000000000000000.0f "***"
       057 25.06.01 PINBOARD: Im Nachrichten und Terminmodul wird bei "erscheint ab" mit KW-Eingabe die Nachricht am Montag angezeigt, nicht mehr am Dienstag.
                              Werden mehrere Nachrichten an einen Benutzer versendet, so werden sie, falls er ausgelogt war, beim einloggen alle nacheinander
                              Angezeigt. Es kann jetzt nicht mehr vorkommen dass sich Nachrichten ohne Erscheinttermin intern stapeln, so dass bei Versand 
                              einer neuen Nachricht stattdessen eine dieser alten Nachrichten angezeigt wird.
       058 28.06.01 WINIFW:   ComSock umstrukturiert mit virtuellen Funktionen ConsoleComSockedFunc
                    WINIFW:   Tastatureingabe umgebaut: Die Cursortasten reagieren jetzt auf den Key_DOWN event, nicht mehr den KEY_UP event.
                              Dadurch wirk die Reaktion des Cursorbalkens auf Tastendruecke schneller als bisher. Bisher bewegte er sich
                              erst beim loslassen der Taste -> IFWWIN-Version wirkt langsamer als die DOS-Version.
       059 28.06.01 POPUPMNU: "Meine Liste" erweitert um "Meine Listen (weitere)"
       060 03.07.01 WINIFW:   Fuer IFW-Proxy aufbereitet, mit option /ePort laesst sich automatisch der Portmodus starten
           05.07.01 FAKTFNC:  Bei leeren Datenbaenken war die HTML-Hilfen nicht aufrufbar, es wurde immer die alte Hilfe angeziegt.
                              Das Flag PRINT_ONLYMASK beim Aufruf der HTML-Hilfen gesetzt, dadurch ist der Aufruf der HTML Hilfe
                              auch bei leerer Datenbank moegliche
           06.07.01 RECHTAW:  Der Menuepunkt "Hilfesystem/Dokumentation" immer Freigeschaltet (auch ohne Rechte)
       061 09.07.01 FAKTMAIN: Mit der Datei "STOPIFW.INI" laesst sich der Start des IFWs verhinden. Ausserdem kann das IFW
                              durch diese Datei Zwangsbeendet werden. Es wird nur das bestehen dieser Datei im IFW-Verzeichnis
                              geprueft. Der Inhalt spielt keine Rolle.
       062 18.07.01 WINLIB2:  editNwOpenAsk() Ein Mausklick ausserhalb eines Feldes in einer Systemeinstellungs-Eingabemaske
                              fuehrt zum Verlassen der Maske. Speziell bei der Maske DATEV-Parameter wurde die Eingabemaske
                              verlassen und der Menueaufbau auf dem Desktop zerstoert.
                    FFBDE2:   Personal-BDE Stechen: Korrektur von vergessenen Kommenzeiten, wenn noch nicth Gehen oder eine Pause gestochen ist:
                              Wenn im BDE-Logbuch der Kommen-Eingang (Typ 31) in der Zeit korrigiert wird, und die Person noch nicht gehen gestochen hat,
                              wird automatisch die Kommenzeit im Personalstamm nachkorrigiert. Es muss jetzt in diesem Fall nicht mehr die Zeit "letz.Komm.:"
                              im Personalstamm manuell korrigiert werden.
                              Fuer einer erfolgreiche Korrektur muss die Meldung "Kommenzeit korrigieren? (Ja/Nicht Speichern)" mit 'J' beantwortet werden.
                              Ist die Kommenzeit hier nicht mehr korrigierbar (z.B. schon gehen gestochen) kommt die Meldung
                              "Diese Kommenzeit ist hier nicht mehr korrigierbar (Abbruch)".
                    FFPREIS:  Bei der Funktion "automatische Sonderpreise" wurden bisher Preisgruppen oder Warengruppenbezogene Rabatte nicht beruecksichtigt.
                              Dies fuehrte dazu, dass die Meldung "Artikelpreis (bisher xxxx) bernehmen? (šbernehmen/Weiter)" faelschlicherweise eingeblendet wurde.
                              Ausserdem fuehrten nicht gerundete Artikelpreise im Artikelstamm (tritt mit der Euro-Umstellung verstaerkt auf) zu zusaetzlichen Meldungen.
                              Die Sonderpreispruefung fuehrt jetzt eine komplette Preisfindung und Rundung der Betraege aus, so dass nur noch tatsaechlich 
                              abweichende Betraege zu der Meldung fuehren.
           30.07.01 FFBDE:    Da BDE-System quitiert jetzt automatisch nach 1 Sekunde jede Fehlermeldung die auf dem Bilschirm erscheint.
                              Bisher brachte eine Meldung das BDE-Stechen zum Stillstand. Insbesonderst bei Meldungen die in Verbindung mit
                              der Datensicherung Nachts auftreten wird die Funktion des Terminals nicht gestoert.
       063 13.08.01 DFLIB2:   Beim Umschalten der Listen mit Strg-Pfeil Links und Rechts bleiben die Fenstereinstellungen erhalten.
                              In der WINIFW werden die grossen Masken (Ursprungspunkt x<6 && y<4) zentriert um das Listenfenster angezeigt.
           15.08.01 FFART:    Externe Lager sind jetzt auch als interne Lager verwendbar. Hauptschalter "ext. Lager gehen nicht in Gebrauch" in Para01.
                              Dabei werden die Waren in externen Lagern nicht mehr "in Gerbrauch" genommen und reduzieren damit nicht mehr
                              den Lagerbestand.
                              Im Artikelstamm wird mit F1 auf den Warenbedarfsfeldern die Bedarfsuebersichtsmaske geoeffnet und auf das
                              entsprechende Feld gesprungen. Dort kann mit F1 die gewuenschte Information abgerufen werden.
                    FORECAST: Forecastmodul verfuegbar
                    Masken:   Bei Seriendruck von Belegen ueber den Kunden oder Lieferantenstamm wurde das Waehrungskennzeichen mitkopiert ->
                              Dadurch ggf. Ausdruck des Belegs mit dem Falschen Waehrungkuerzel. Problem beseitigt (Kunden.Msk/Liefer.Msk geaendert).
                    FFBDE2:   Personal-BDE Stechen: Korrektur von vergessenen Kommenzeiten:
                              Um die Moeglichkeit zur Aenderung des Kommeneintrags zu gewaehrleisten, wurde die Meldung
                              "Diese Kommenzeit ist hier nicht mehr korrigierbar (Abbruch)" um
                              "Diese Kommenzeit ist hier nicht mehr korrigierbar (Abbruch/Speichern)" erweitert. In diesem Fall ist die Gesamtzeit
                              wie bisher am Geheneintrag zu korrigieren.
       064 17.08.01 FFCPSHOP: Kopienpreis von hundertstel Pfennige auf 1000el Pfennig erweitert
       065 27.08.01 FFERLBU:  Bei Stornouebertragung mit Erloesplittung wurden Versand und ggf. rabattaufgloeste
                              Betraege positiov berechnet. Dies fuerte zur Meldung "Betrag von OP ungleich des Belegs".
                              Programmzeilen: if( stornoBuchung) //010827mr
                    FAKTSUB:  Beim Ausbuchen von Ueberweisungen wird ohne FIBU das Verbucht-Betragsfeld auf den Gesamtbezahltbetrag der Verbindlichkeit gesetzt.
           05.09.01 FAKTMAIN: Menuepunkt "Von Warenruecksendung Bestellung schreiben" realisiert.
       066 06.09.01 FFEINK:   Modul "Artikel Herstellerreferenz im Einkauf" aktiviert.
           17.09.01 DfPdf:    Der Debugger meldet diverse nicht freigegebene Speicherbereiche. Mal in den Pdf-Daten Speicherbereiche freigegeben.
       067 19.09.01 WINSERP:  Komplette Klasse zum ansprechen der Seriellen schnittstellen unter Windows eingebaut
                    PRNPAR:   Neues Kommando @#SendComm; eingebaut. Damit lassen sich daten auf die serielle Schnittstelle ausgeben.
                              Syntax:
                              @#SendComm Vt;
                                -> Gibt die Daten auf com2 9600 n 8 1 aus.
                              @#SendComm Vt, "com1 9600 n 8 1";
                                -> hier koennen die Parameter im zweiten String nach dem Komma angegeben werden.
                                   Es kann auch @#SendComm Vt, Vt1; verwendert werden.
       068 21.09.01 WINIFW:   In der Server.ini fuer den ASP-Host gibt es zwei neue Eintraege:
                              HostLiveSignalSec=0
                                Hier laesst sich eine Zeit in Sekunden eintragen, in der der Host im ExternModus ein Signal
                                an den IP-Connector absenden soll. Damit wird eine IP-Waehlverbindung offen gehalten. Das Signal
                                wird nur bei inaktivem Host gesendet.
                              HostTimeToLiveSec=0
                                Hier laesst sich die Zeit in Sekunden eintragen, die der Host im Externen Modus bleibt, wenn keine
                                Verbindung besteht. Er schaltet sich also automatisch nach einer gewissen inaktiven Zeit ab (ggf. wird
                                dadurch eine Waehlverbindung abgebaut).
                    FFVERK:   IFW ohne FIBU-Modul:
                              Bei OPs mit Fremdwaehrung werden die Bezahltbetraege der Leitwaehrung ungerundet addiert und als Summe im 
                              Feld Bezahlt eingetragen. Dadurch wird ein ggf. entstehender Pfennigunterschied bei Bezahlung mit 
                              gesplitteten Betraegen (Skonto, Kulanz) vermieden.
       069 24.09.01 DFFNC:    Bei der Lizenzpruefung wird bei leerem WatchDog Feld die Verbindung freigegeben (bisher nicht) .
                    DFLIB:    Die verkleinerte Fenstergroessen im Bestellwesen (Artikelstamm Bestellvorschlag, von Liste Bestellung schreiben)
                              werden nicht mehr auf die Hauptmasken uebertragen (nach dem Aufruf war der Artikelstamm und die Bestellliste zu
                              schmal dargestellt).
                    STDMSK:   Beim Anmelden einer Importvorlage mit Feldvorgaben gab es ggf. eine Schutzverletzung (setUpMaskProfileString).
                              Problem beseitigt.
       070 27.09.01 FFDISPO:  Bei der Artikeldispouebersicht (Alt-F7) wurden bei der in der Uebersicht angezeigten Summe die Belege mit 
                              Status 'E' ggf. falsch aufsummiert.
                    WINIFW:   Unter Windows 2000 ist mit dem aktuellen Novellclient ab sofort die Abfrage des Servers und das Drucken
                              in die Novellqueues moeglich.
       071 28.09.01 FFBELPRU: Zusaetzliches Felder in der Bestellung und in den Bestellpositionen zur Angabe eines Meldeusers.
                              Damit ist in Verbindung mit dem Nachtrichtenmodul moeglich eine automatische Systemnachricht direkt an einen dort
                              angegebnen User bei eingang der Ware zu verschicken. Bisher ist dies nur ueber einen in einem Auftrag 
                              angegeben Meldeuser moeglich. Dir Rangfolge des Versands ist folgendermasse:
                              1. Meldeuser aus der Bestellposition.
                              2. Meldeuser aus der Bestellung.
                              3. Meldeuser aus dem Auftrag der in der Wareneingangsposition angegeben ist.
                              4. Meldeuser aus dem Auftrag der in der Bestellposition zu der Wareneingangsposition angegeben ist.
                              Im Fall 1 und 2 erfolgt eine Meldung pro Artikeltext, der in der Wareneingangsposition angegeben ist.
                              Im Fall 3 und 4 erfolgt eine Meldung pro Auftragsnummer.
                    PRNLIB2:  Druckoption @Cmm,cc; um @Cmm,cc,c2; erweitert. Damit ist es moeglich zwei Felder aus einer Maske
                              wegen Aenderung zum Listenneustart zu ueberwachen.
                    PRNLIB2:  Neues Preprozessorkommando #ifver( 2.1-13/071)
                              Damit eingegrenzte Druckvorlagenteile werden nur verwendet, wenn das verwendete IFW-Programm mindestens
                              den angegebenen Revisionsstand entspricht.
                    PRNLIB3:  Die Globale Variable [.VERSION] steht zur Verfuegung. Sie gibt die aktuelle Programmversion
                              z.B. 2.1-13/071 aus.
                    FAKTPRJ:  meine Mailingliste aktiviert Adr000 160
      072 08.10.01  FFFOCAST: Beim Forecastmodul Eintraege in Artkellisten beruecksichtigt, die nicht im Artikelstamm enthalten sind.
                              (Bisher Error -4)
      073 11.10.01  PRGLOAD:  In den F10 Makros das Kommando TransferSelectionToMarkedFileAND korrigiert. Es wurde OR faelschlicherweise ausgefuehrt.
                              Insbesonderst das Modul "Kundenklassen" ist davon betroffen. Problem beseitigt.
          18.10.01  PRGLOAD:  Bei SetItem() wird jetzt auch printMI() ausgefuehrt -> refresh bie offener Maske
      074 22.10.01  FAKTMAIN: Neuer INI Schalter Herstellerreferenz in der Sektion [Belege]
                              ;Herstellerreferenz: Wert 0/2. Default 2.
                              ;In Verbindung des Moduls "Artikel Herstellerreferenz im Einkauf" 
                              ;l„át sich mit dem Wert 0 die Prfung der im Artikelstamm hinterlegten Artikelreferrenzen
                              ;zu einem Artikel komplett abschalten. Mit dem Wert 1 wird eine Pruefung vorgenommen, aber
                              ;die Meldung kann mit "Ok" uebergangen werden. Bei Wert 2 wird eine Pruefung vorgenommen
                              ;und bei einer Meldung das Speichern der Daten gesperrt.
      075 23.10.01  DFLIB:    In Verbindung mit der Mandantensynchronisierung bleiben Groesseneinstellungen der Fenster bei synchronisierte Dateien
                              erhalten.
          24.10.01  FFPROD2:  Neuer INI Schalter ProdErsatzSplitten in der Sektion [System]
                              ;ProdErsatzSplitten; Wert 0/1. Default 1
                              ;Bei der Funktion "Produktionen Lagermaterial pruefen" wird beim Wert 1 bei der Beruecksichtigung
                              ;der Ersatzartikel auch eine Verteilung der benoetigter Menge auf mehrere Ersatzartikel vorgenommen.
                              ;Dabei koennen je nach Verfuegbarkeit eine ganze Reihe von Ersatzartikeln zum Einsatz kommen.
                              ;Mit dem Wert 0 wird ein Ersatzartikel nur dann eingesetzt, wenn die Verfuegbarkeit so gross ist
                              ;wie die benoetigte Menge. Somit wird sicher gestellt, dass nur EINE Ersatzware in einer Produktion
                              ;zur Anwendung kommt und somit keine Mischbestueckung erfolgt.
                    FFPROD3:  Bei der hirachischen Produktionsscheinerstelloung werden lfd. Positionsnummern aus der Artikelliste die
                              laenger als 3 stellen sind auf der linken Seite abgeschnitten, nicht mehr auf der Rechten.  
                    WINLIB:   Bei Fenstern ohne Titel wird bei print_windowtitle() und print_windowtext_() nicht mehr auf das 
                              Desktop geschrieben.
          25.10.01  PRGLOAD:  Spungmarker (Lables) fuer den Befehlt Goto() wegen jetzt komplett verglichen, nicht mehr nur der
                              Teilstring des im Makro eingetragenen Lbls ( z.B. Goto( "Test13") fuehre zum Sprungmarke Test1: ).
                    PRGLOAD:  Endlosschleifen bei Makros werden mit Error PRG_DEADLOCK -415 angezeigt (bisher hat sich das IFW aufgehaengt).
      076 26.10.01  FFARTBCH: Lagerproduktionen buchen jetzt auch von externen Lagern ab.
      077 30.10.01  FFBDE2:   BDE-Gateway unter IFWWIN lauffähig gemacht (serielle Schnittstelle erweitert).
          02.11.01  FFBETON:  Beim Waagentyp 0 Woehwa GCU-45 den Protokolldruck der Lieferscheinnummer um Datum und Uhrzeit erweitert.
                    FFPROD3:  Sind in der Artikelliste die lfd. Positionnummern 5 Stellig angebbar, so wird bei der hirachischen
                              Produktionsscheinerstellung die globale Ebene aus der Artikelstammmaske nicht mehr verwendet.
                              Es wird statt dessen die lfd. Positionsnummer immer auf 5 Stellen mit Nullen von links her aufgefuellt und
                              an erster Stelle die laufende Nummer der Aufloesung (wie bisher) verwendet.
          03.11.01  DVL:      Bei Belegh_0 wird mit Positionsart O im Artikelstamm keine Liste gedruckt bei Hunk U und R
      078 06.11.01  PRGLOAD:  Fehler Deadlock PRG_DEADLOCK -415 bei Makros wurde faelschlicherweise bei Suchschleifen angezeigt.
   1.2-06 06.11.01  WINIFW:   Weitereichen ueber IFW Proxy korrigiert, try next mit IP 0 fuer alte (letzte) IP benutzen
      079 09.11.01  FAKTPRJ:  Moeglichkeit der Archivierung beim Warengruppenstamm abgeschaltet.
                    FFBDE:    Erste IP BDE-Verbindung aktiviert
          12.11.01  WINIFW:   Das Zeichen 'Paragraph' ist im Fliesstext eingebbar.
      080 13.11.01  FFBDE:    IP BDE-Verbindung optimiert, bei Poll-Aktionen wird die Antwort asyncron verarbeitet (keine Wartezeit auf Antwort 
                              beim Pollen des IP-BDEs)
          14.11.01  PRGLOAD:  Nach dem Markrokommando ImportFile() wird eine evt. mit SetFile() gesetzte Datei geschlossen.
                    DFIMP:    Der Modus "loeschen nach erfolgreichem Einlesen" wird jetzt auch bei Dateiangabe ohne ?? im Namen das loeschen der
                              Datei durchgefuehrt.
                              Bei nicht geoefneter Maske erfolgt beim Nachladen eines Datensatzes waehrend des Import (Kommando @Dinn;) keine
                              Ausgabe auf das Desktop.
      081 16.11.01  FFARTBCH: In Verbindung mit dem PPS-System wird in den Produktionen die Revisionsnummmer mitverwaltet. Bei Abschluss und
                              Einlagerung der Produktion erfolgt eine automatische Speicherung der Revisionsnummer in der Seriennummerndatenbank
                    PRGLOAD:  Makros: Fehler -219 (Datei geschlossen) bei Schleifen mit gesetztem Mark-File beseitigt.
                    DFPRN:    Mit Strg_c laesst sich in der Uebersicht die Daten im Excel-Format in das Clipboard schreiben (CSV mit Tab getrennt).
                              Es wird dabei DVLGEN03 verwendet (meine Liste). Sollte Die Uservorlage nicht bestehen, wird automatisch die die
                              Generierung aufgerufen. Fehlt die Vorlage ganz, wird die Meldung "Unter \"Meine Liste bearbeiten\" fehlt der EXCEL-Export."
                              ausgegeben. Der Puffer ist maximal 511999 Byte gross.
      082 21.11.01  FAKTEDIT: Bei edit_datasingle_() wird DF_RESMHD5 eingesetzt. Das Problem beim Archiv aufrufen (df_drop error) bei Op oder Verbindlichkeit
                              veraendern/Zahlungsein- und ausgang beseitigt.
                    PRNPAR.MSK: Initwert von zweiter Seite Schacht Einstellung auf keine Umschaltung geaendert (K:\STANDARD)
                    FFPROD3:  Das Feld Standardlager wird bei der Lagerproduktionsanlage von Komplettartikel in die Produktion uebertragen.
                              Sollte in der Artikelliste das Feld Lager vorhanden sein und dort ein Eintrag ausgefuellt sein, so hat dieser vorrang.
          22.11.01  FFBDE:    Funktionen zur automatischen Verbindungsaufnahme ueber IP:
                              - Extra Menuepunkt BDE IP-Taskmanager
                              - Der BDE-Manager wartet bis zu einer Minute (Parameter BDEWartenAufIPSekunden in der FAKT.INI) auf eine IP-Verbindung 
                                von einem Client
                              - Der WWW-Client hat einen neuen Parameter in der SERVER.INI: 
                                ClientAutoReconnectSec=0
                                Wird hier eine Zeit in Sekunden angegeben, so versucht der Client bei einem Verbindungsabbruch automatisch nach Ablauf der
                                Zeit eine Verbindung neu herzustellen.
                              - Der BDE-Manager wird im ASP-Hostmodus betrieben. Bei aktivem BDE-Manager (Menuepunkt betaetigt) wird bei einem
                                Disconnect des Clients kein Reset am Host-Prozess ausgefuehrt.
                              - Die IP-Verbindung ist an der Port-Angabe 9 zu erkennen (1: Com1, 2: Com2, 9: IP WWW-Client)
                              - Eine IP-Verbindung kann den Status 'offline' annehmen (bisher: aktiv, pending, off). Der Status 'offline' tritt ein
                                wenn die IP-Verbindung vom Client abgebaut wird. Solch eine Verbindung wird vom BDE-Manager als schlafend betrachtet.
                                Wird die IP-Verbindung wieder hergestellt, so erfolgt eine automatische Synchronisierung des BDE-Geraets am Client, als
                                waere die Verbindung nie unterbrochen gewesen. Der Reconnectcounter (Spalte ReCon) wird um eins erhoeht, alle Errorcounter
                                werden geloescht.
                    COMSOCK:  Die Fehlermeldung wenn keine Verbindung vom Client zum Server aufgenommen werden kann wurde auf
                              "Eine Verbindung zu %s:%s konnte nicht hergestellt werden.\n"
                              "Entweder ist keine Internet- oder Wählverbindung vorhanden "
                              "oder der Server nicht anrufbereit.\n"
                              "(Verbindungsfehler %d)"
                              geaendert.
                    WINIFW:   Sind Masken relativ am oberen oder unteren Rand zu ihren Listefenstern ursruenglich plaziert, so wird die Position
                              beim Verscheieben des Listfensters relativ mitgefuehrt.
      083 23.11.01  PROGLOAD: Das Kommando AddMultiFileFilterArchiv geaendert:
                              - Befindet sich die Ausgangsdatei im Standardverzeichnis, dann wird die die Datenbank
                                aus dem Archiv aufgerufen (wie bisher)
                              - Befindet sich die Ausgangsdatei im Archiv, dann wird die die Datenbank aus dem 
                                Standardverzeichnis aufgerufen (neu)
                              Die Anzeige beim Kommando DisplayMultiFile des Datenbankkuerzels in der ersten Spalte der
                              Liste (z.B. RE oder LS) ist um den Buchstaben 'a' erweitert, wenn der Datensatz aus dem Archiv kommt (z.B. aRE).
                              Dazu sind auch die neuen Resourcedateien bwarvk_0.msk und bwblvk_0.msk im Verzeichnis MASKEN notwendig.
                    DFEXTFNC: Erweiterung des Druckkommandos [D in der erweiterten Form [Dfeld,startwert,back,filenr,index1,index2] mit der Option Mxx 
                              bei  'filenr' (Multizugriff auf Dateien aus dem Standarverzeichnis und dem Archiv):
                              - Befindet sich die Ausgangsdatei im Standardverzeichnis, dann wird die die Datenbank
                                aus dem Ausgangsverzeichnis und dem Archiv aufgerufen (wie bisher)
                              - Befindet sich die Ausgangsdatei im Archiv, dann wird die die Datenbank aus dem 
                                aus dem Ausgangsverzeichnis und dem Standardverzeichnis aufgerufen (neu). Bisher wurde nur das Archiv aufgerufen.
                              Das Kommando [Dxx] wurde erweitert um [Dxx;M]. Damit wird beim Zugriff nicht nur das aktuelle Verzeichnis verwendet,
                              sondern gleichzeitig das Archiv vom Standardverzeichnis aus, oder das Standardverzeichnis vom Archiv aus.
                    FFBDE:    Das BDE-Terminalmonitorfenster oeffnet sich unter WINIFW automatisch falls es geschlossen ist bei jeder ganzen Minute.
                    FFVERK:   Bei OPs das MWST-Feld auf nicht runden gestellt. Rundung in OffPos_func bei nicht Bruttorechnung gewaehrleistet.
      084 27.11.01  FFBSTLST: Funktion DispoToOrderList (dispoToBstLst()) um Modis erweitert, die es erlauben den
                              minimalen Lagerbestand, die Mindestbestellmenge und die Verpackungseinheiten zu beruecksichtigen.
                              Diese Modis sind nur ohne dem Modus 8 "Forcastzahlen verwenden" verwendbar.
                              Modus 16 0x10: Feld minimaler Lagerbestand beruecksichtigen
                                Waren werden schon dann in die Bestelliste geschrieben, wenn der Dispobestand unter den
                                minimalen Lagerbestand fallen (Feld minLgBest: im Artikelstamm).
                              Modus 32 0x20: Feld minimale Bestellmenge beruecksichtigen
                                Werden Waren in die Bestelliste geschrieben, so ist die Mindestmenge die minimale Bestellmenge (Feld minBestel: im Artikelstamm)
                              Modus 64 0x40: Feld VPE Verpackungseinheiten beruecksichtigen
                                Werden Waren in die Bestelliste geschrieben, so ist die Stueckelung immer in ganze Verpackungseinheiten. Die
                                Verpackungseinheit muss eine ganze Zahl groesser 1 sein (Feld Verp.EH VPE: im Artikelstamm).
                              Fehler beim Modus 4 0x04: Bestelliste bercksichtigen und berarbeiten beseitigt. U.U. wurden ueberzaehlige Eintraege nicht korrekt
                              geloescht.
   1.2-07 29.11.01  WINIFW:   Der IFW_WWW Client kann in den Windows-Spooler ueber Druckerangabe WIN:.
                              Geben Sie dazu in der IFW Druckerliste den Drucker mit dem Praefix WIN: gefolgt vom Druckername an,
                              also AR:WIN:Druckername oder RE:WIN:Druckername ein. Der Druckername muss der Druckername des Client-Arbeitsplatzes sein
                              und kann NICHT im IFW ueber F1 abgerufen werden (F1 greift auf die Druckerliste des HOST-Arbeitsplazes zu). Bei laengeren
                              Druckernamen koennen Sie einfach im Windows unter Drucker den Namen mit Copy (Strg-C) ausschneiden und im IFW-Client hinter RE:WIN: mit
                              Paste (Strg-V) einfuegen.
      085 06.12.01  WINIFW:   Sind Druckvorlagen oder Makrodateien in einem Novellnetz in Verbindung mit dem Novellclient unter Windows als Sharable (deutsch Freigabe)
                              gekennzeichnet so wurden sie ggf. nicht angezeigt oder erkannt (z.B. Vorlage xy nicht gefunden). Problem beseitigt.
      086 07.12.01  FFBDE:    Auftretende Zeicheneingaben bei der Personalnummerneingaben im 6000er BDE-Stechmodus ueber eine IP-Strecke beseitigt.
                              IP BDE-Logbucheintraege beim HOST aktiviert (beim Empfang war die Laengenangabe um 8 Byte zu lang).
      087 13.12.01  FFFIBU21: Bei Periodenabschluss im Jahr 2000 und einer bestimmten Nummernkonstellation der Buchungsnummer, wurde die Neunummerierung
                              der Buchungssaetze (00.00001 und lfd.) nicht korrekt durchgefuehrt.
                              Trat bei einem Periodenabschluss bei der Kontenpruefung ein Abbruch des laufes auf, so wurde ggf. der Nummernkreis nicht
                              beim Begin 1 fortgefuehrt, sondern bei der bischer am hoechsten abgeschlossenen Nummer. Der Nummernblock der Buchungen wurde somit verschoben.
                              Problem beseitigt.
      088 14.12.01  FFERLBU:  Bei der Buchungsstapelerzeugung wird bei der Warengruppensplittung im Einkauf die Kostenstellen aus dem Warengruppenstamm angezogen,
                              wenn in der Position nichts angegeben ist. Bisher wurde die Kostenstelle nur bei der Wareneingangserstellung direkt in die Position uebertrtagen
                              und verwendet.
      089 08.01.02  POSNUM:   Flag bOnlyFw bei neu_positionieren eingebaut: Damit ist bei Belegen die schon Folgevorgaenge enthalten es moeglich, mit
                              F3 die Waehrung anzupassen (Bisher wegen Neupossitionieren gesperrt). Die Neupossitionierung findet dabei nicht statt.
          10.01.02  FFPROD2:  Bei der Produktionspruefung wurden Produktionstermine vor dem aktuellen Statistikjahr (ausserhalb des Dispo-Zeitstrahls) nicht
                              korrekt beruecksichtingt. Ausserdem wurde bei mehrmaligem Aufruf der Pruefung ohne Verlassen der Liste bereits selektierte
                              Positionen nicht deselektiert. Problem beseitigt.
          11.01.02  DFED3LIB: Systemmakro .$19 einbebaut: Erweiterungsfenster speichern (konkret fuer Lagerkurzerfassung)
      090 15.01.02  FFEINK:
                    FFVERK:   Bei OP-Sammelausbuchen und VB-Sammelausbuchen werden wieder die Summe bezahlt (abz. Skonto) beim selektieren
                              der OPs angezeigt.
                    FAKTMAIN: Neuer INI Schalter LieferscheinUeberRechnungImmerAbschliessen in der Sektion [Belege]
                              ;LieferscheinUeberRechnungImmerAbschliessen: Wert 0/1, Default 0.
                              ;Werden von Lieferscheinen Rechnungen geschrieben, dann wird versucht
                              ;die betroffene Lieferscheine (bei Sammelrechnung koennen es mehrere sein)
                              ;abzuschliessen (Status 'E'). Dabei wird geprueft ob alle Positionen auf
                              ;dem Lieferschein vollstaendig abgerechnet sind (Feld ReAnz oder Spalte Abrch
                              ;in den Rechnungspositionen groessergleich der Menge). Wird dieser Schalter auf
                              ;1 gesetzt, so wird der Lieferschein immer auf 'E' gesetzt, unabhaengig von der
                              ;Menge im Feld ReAnz in den Positionen.
          28.01.02 IFW_WWW:   Beim IFW_WWW-Client m_dwClientTimeOutSec eingefuehrt
                              Der Parameter wird in der SERVER.INI eingestellt:
                              ClientTimeOutSec=0
                              Wird hier eine Zeit in Sekunden angegeben, so beendet der Client nach Ablauf
                              der angegebenen Zeit seit dem letzten Datenempfang die Verbindung.
                              Im About Dialog wird jetzt beim Client auch die Revisionsnummer angezeigt.
      091 04.02.02 PRNLIB2:   include_formular() erweitert, so dass Vorlagen bis maximal 64k (inclusive includes) eingelesen werden koennen.
                              Bei Vorlagen (mit Includes) groesser 32k wurde intern der Speicher zerstoert.
                              Insbesonderst in Verbindung mit dem Einsatz der neuen (groesseren) Uebersetzungstabelle BELEGT_0.DVL kann das
                              IFW nach Drucken Schutzverletzungen aufweissen.
      092 08.02.02 FAKTMAIN:  Die Erkennung des Aufrufverzeichnisses BIN bei der Windowsversion so geaendert,
                              dass auch ein BIN Verzeichniss in einem Root-Map (z.b. R:\BIN) erkannt wird.
          14.02.02 FFBELPRU:  Bei Meldung Bestellte "Ware zu Auftrag ... ist eingetroffen" wird die Auftragsnummer in das Auftragsfeld der Maske geschrieben.
                   DFLIB:     In Verbindung mit der Mandantensynchronisierung bleibt der Datensatzfokus bei synchronisierte Dateien erhalten
                              (der Balken blieb u.U. in der Liste einer Datenbank nicht auf dem zuletzt ausgewaehltem Eintrag).
      093 15.02.02 FFFIBUDV:  Bei der Stapelerzeugung mit der Datev-Schnitstelle werden jetzt Automatikkonten (Kennz. A im Kontenstamm) auch dann erkannt, wenn
                              die Kontenmaske die Felder 68 und 69 (Steuerschluessel, auto.Steuerbuchung) nicht enthaelt.
      094 15.02.02 PINBOARD:  set_pingadgets() von DF_TMBASE auf DF_TMBASE+DF_RESMHD3 umgestellt.
                              Das Ausfuehren von Makros von einer Nachricht heraus mit automatischem fortschreiben des Alarms ist jetzt vollstaendig einsetzbar
                              Waehrend dem Drucken (!User.IsNetMessageOn()) findet kein interner Alarm, kein Scan der FAKT.SNC Datei (externer Alarm...)
                              und kein Scan der FaxLogDatei mehr statt.

1.2-08 095 22.02.02 WINIFW: Der IFW_WWW Client benutzt eine Verschluesselung, Clientversion 2 aktiviert.

          06.03.02 FFFOCAST:  Beim Forcast wird im Offlinebetrieb beim Speichern mit "Neu Kalkulieren" die gesamte Materialliste geprueft, nicht mehr nur
                              die erste Postition. Desweiteren wird beim Speichern eines Listeneintrags durch einen Benutzer (Editmodus) das Forecastarray
                              geloescht, so dass die Aenderung des Eintrags beim Speichern mit "Neu Kalkulieren" immer erkannt wird.
                              Bisher gingen im Offlinebetrieb Aenderungen der Liste verloren, so dass Sie nicht beim Neukalkulieren erkannt wurden. Problem beseitigt.
      096 07.03.02 FAKTMAIN:  Neuer INI Schalter LaendereinstellungPruefen in der Sektion [System]
                              ;LaendereinstellungPruefen: Wert 0/1. Default 0.
                              ;Wird dieser Wert auf 1 gesetzt, so wird nach jedem Datenbankaufruf geprueft
                              ;ob sich die Laendereinstellung verstellt hat. Unter Microsoft Windows wirkt
                              ;sich die Laendereinstellung auf die rudimentaere Umwandlung von Zahlen
                              ;in Fliesskommawerte aus (die Dezimaltrennung Punkt und Komma wird umdefiniert).
                              ;Eine Funktion des IFW ist nur mit dem internen Trennzeichen Punkt als Dezimaltrenner
                              ;gewaehrleistet. Diverse Releasestaende der Datenbankmaschine Pervasive schalten
                              ;zu Laufzeiten die Laendereinstellung um. Die wir mit der Meldung  
                              ;"Die l„nderspezifische Einstellung scheint nicht korrekt zu sein" angezeigt.
                              ;Mit aktivieren dieses Schalters wird dafuer gesorgt dass nach einem Datenbankaufruf
                              ;die Laendereinstellung korrekt eingestellt ist.
                              ;Diese Einstellung sollte nur im Notfall vorgenommen werden, da eine korrekten Ummrechnung
                              ;in diesem Fall nicht 100% sichergestellt ist. Intern wird eine zusaetzliche konsistenzpruefung
                              ;vorgenommen, die bei einem Fehlschlag den IFW-Prozess mit exit( 99) beendet (das IFW Fenster
                              ;schliesst sich dabei ohne Meldung).
                              -Bei Von Bestelliste Bestellung schreiben wird das Feld ProdNr nicht mehr uebertragen.
                               Es kollidierte mit der Funktion von Produktion Fremdleistung bestellen.
                              -Unter Bestellung schreiben wurde bei ALT-F4 der IFW-Prozess nicht ordnungsgemaess beendet.
      097 13.03.02 FFART:     Wurde beim Wareneingang eine Fremdwaehrung aufgefuehrt und der Wareneingang mit einer abweichenden
                              Preiseinheit zum Artikelstamm eingebucht, so wurde der Fremdwaehrungs EK in der Artikelmaske nicht
                              auf die abweichende Preiseinheit umgerechnet. Dies fuehrt dazu dass bei einer erneuten Bestellung
                              mit der gleichen Fremdwaehrung der im Artikelstamm stehende inkorrekte Fremdwaehrungsbetrag benutzt wird.
                              Problem beseitigt.
      098 18.03.02 WINIFW:    Anzeige des Fenstertitels im Windows modifiziert (u.a. IFW laeuft entfernt)
          19.03.02 FFBELPRU:  Auftragsueberwachung beim Lieferscheinschreiben aktiviert. Damit wird der Status 'E' bei den Auftraegen
                              beim Speichern von Lieferscheinen ueberwacht. Dies wird insbesonderst beim manuellen setzen des Kennzeichen
                              'E' beim Lieferschein benoetigt. Bisher wurde keine Ueberwachung vorgenommen, da Lieferscheine in der Regel
                              ueber Rechnungen ihren Status 'E' erhalten.
                              Neuer INI Schalter LieferscheinAuftragspruefung in der Sektion [Belege]
                              ;LieferscheinAuftragspruefung: Wert 0/1. Default 1.
                              ;Wird dieser Wert auf 0 gesetzt, so wird die Auftragsueberwachung beim Lieferscheinschreiben
                              ;deaktiviert. Damit wird der Status 'E' bei den Auftraegen beim Speichern von Lieferscheinen nicht mehr ueberwacht.
                              ;Die Ueberwachung sollte nicht abgeschaltet werden, wenn der Status 'E' in den Lieferscheinen
                              ;manuellen gesetzt wird. Wird vom Lieferschein eine Rechnung geschrieben, so wird spaetestens beim Rechnung speichern
                              ;die Ueberwachung des Status 'E' beim Auftrags vorgenommen.
          25.03.02 FFFOCAST:  Beim Forcast wird fuer die durchschnittlichen minimale und maximale Lagerbestaende bei einer Angabe einer
                              Reichweite in KW die aktuelle KW nicht mehr mitberechnet. Bisher wurde z.B. bei Reichweite 3 Wochen und 
                              aktueller KW10 die Menge aus KW10+KW11+KW12 berechnet. Jetzt wird sie aus KW11+KW12+KW13 berechnet.
      099 04.04.02 DFED2LIB:  Die Schnelle Datenbanksuche wird jetzt auch in den Externen Karteien verwendet.
                              Wird bei der Suchselektion mit '+' auf ein Autoexitfeld mit der Maus geklickt (typ. der Bereich des Listfensters)
                              so wurde eine Endlosschleife aktiviert. Problem beseitigt.
          05.04.02 SYSLIB:    Die Umlaute ae oe ue werden jetzt auch in der Windowversion bei der Umwandlung Mit Strg-F richtig erkannt.
                   WINIFW:    WINIFW jetzt auch unter Windows XP einsetzbar. Windows API-Problem beseitigt.
      100 16.04.02 DFED3LIB:  Bei Browsern in einer Maske wird immer das Zoombit WINGG_MAXSIZE fuer maximale Fenstergroesse gesetzt.
                   BRECLIB2:  Die Massenfunktion Autoincrement ist jetzt auch auf Fliesskommafelder anwendbar.
          18.04.02 DFED3LIB:  Bei Reparaturen im Archiv konnte in der Untermaske "Materialaufstellung/Berechnung" die Liste des Materials nicht
                              Eingesehen werden. Bei Erweiterungsfenster wurde das Verzeichnis nicht mit vererbt.
                              Problem beseitigt.
                              Damit muessen jetzt bei Dateien in anderen Verzeichnissen die Untermasken nnnnnnFx auch in den Verzeichnissen liegen.
          19.04.02 FFFOCAST:  Bei ineinander verschachtelten Baugruppen wurde die Forecastmenge nicht korrekt berechnet. Es wurde
                              dafuer eine sehr lange Schleifenberechnung aktiviert (Problem mit veerbten Datenbankinstanzen in der Rekursion).
                              Problem beseitigt.
          19.04.02 IfwStart:  Neuer IFW-Programmstarter verfuegbar: IfsStart.exe
                              Am Arbeitsplatz wird statt BIN\IFWC.EXE oder BIN\IFWC_KN.EXE das Programm IFWSTART.EXE zum starten des IFWs als
                              Icon angemeldet. Es ruft dann automatisch das entspechende IFW-Programm aus dem BIN-Verzeichnis auf.
                              Dabei gelten folgende Prioritaeten:
                              1. Es wird versucht das Programm BIN\IfwKN???.exe zu starten. Dabei wird ??? durch eine Zahl
                                 von 999 bis 000 ersetzt. Da neuere IFW-Versionen mit ihrer Revisionsnummer im Verzeichnis BIN 
                                 gespeichert werden, wird somit immer die neueste IFW-Version gestartet.
                              2. Es wird versucht das Programm BIN\Ifwc_KN.EXE zu starten.
                              3. Es wird versucht das Programm BIN\Ifwc???.exe zu starten. Dabei wird ??? durch eine Zahl
                                 von 999 bis 000 ersetzt. Da neuere IFW-Versionen mit ihrer Revisionsnummer im Verzeichnis BIN 
                                 gespeichert werden, wird somit immer die neueste IFW-Version gestartet.
                              4. Es wird versucht das Programm BIN\Ifwc.EXE zu starten.
                              5. Es wird versucht das Programm Ifwcom.com mit den Parametern "/3 /r" zu starten.
                              6. Es wird versucht das Programm Ifw.com mit den Parametern " /3 /r" zu starten.
      101 19.04.02 CONEMU:    Problem bei Abrufen von Verzeichnissen mit ALT-D in einem Fliesstext beseitigt. Nach einspielen von 
                              SP5 des MS-Compilers wurde die Libary-Funktion _chdrive() fehlerhaft modifiziert. Problem beseitigt
                              durch work around.
          22.04.02 DFEDINFO:  Bei Strg-F9 werden temporaere Datenbanken (Usernummer 000 im Dateiname) bei der Auswahl nicht mehr mit einbezogen.
      102 24.04.02 DFED2LIB:  F10-Makros sind jetzt auch bei der Bearbeitung der Maske immer moeglich.
                              Neues Systemprogramme aktiviert:
                              .$62:Spezialprogramm wenn Daten auf eine Maske abgerufen werden (F1 Return)
                                   Dabei ist das MarkFile gleich Quelldatei, die Feldnummer in V1 und die Quelldateinummer in V2.
          25.04.02 DFEXTFNC:  Beim Drucken mit dem [D Kommando und Multizugriff mit Mxx auf eine Kartei mussten bisher beide Indexpfade angegeben
                              werden. Jetzt ist eine ausgabe mit einem Indexpfad moeglich.
                              Beim Zugriff von Rechnungen auf die OP-Liste ist jetzt auch bei den IFW-Installationen mit den unsymetrischen Belegnummern
                              (Rechnung 8-Stellig, Gutschrift 7-Stellig) der Zugriff ueber [D moeglich.
      103 29.04.02 FFPRODx:   Neuer INI Schalter ProdErsatzNullLoeschen
                              ;ProdErsatzNullLoeschen; Wert 0/1. Default 0
                              ;Bei "Produktionen Lagermaterial pruefen" und Verwendung von Erstatzware wird bei Einsatz von
                              ;Ersatzware die Ursprungposition geloescht, wenn sie Menge 0 erreicht (wird komplett ersetzt).
                              ;ProdErsatzNullLoeschen=0
                              Neuer INI Schalter ProdAbgleichAenderungManagement
                              ;ProdAbgleichAenderungManagement; Wert 0/1. Default 0
                              ;Bei "Produktionen Lagermaterial pruefen" und Verwendung von Erstatzware und Verwendung von Erstatzware
                              ;wird bei Einsatz von Ersatzware in diesen Positionen das Kennzeichen 'X' fuer die Sperre der Position
                              ;beim Abgleich gesetzt.
                              ;Bei "Produktionsauftrag Abgleichen" werden alle Positionen ohne 'X' aus der Produktionsstueckliste geloescht.
                              ;Dann wird die Artikelstammliste neu eingespielt. Ist eine Positionsnummer aus der Artikelstammliste bereits
                              ;in der Produktionsstueckliste mit einem 'X' vorhanden, so wird sie nicht uebernommen und 
                              ;die 'X' Position bleibt. Beim Abgleich wird bei doppelter Positionsnummer in der Artikelstammliste
                              ;eine Fehlermeldung ausgegeben.
                              ;ProdAbgleichAenderungManagement=0
      103 02.05.02 FFARTBCH:  Die Positionsnummerierungen ueber 99 mit Buchstaben z.B. A0.00 wird jetzt beim Speichern richtig erkannt.
                              Bisher wurde das Speichern durch die Meldung "Die Positionnummerierung ist nicht in Ordnung!" gesperrt.
                              Neuer INI Schalter ExterneWareneingangspruefung in der Sektion [System]
                              ;ExterneWareneingangspruefung; Wert 0/2. Default 0
                              ;Mit diesem Schalter wird beim IFW-Modul QM-Wareneingangspruefung die Bestimmung des Lagers in der Wareneingangsposition
                              ;gesteuert.
                              ;0: Die Steuerung erfolgt anhand der Bewertung wie in der Modulbeschreibung beschrieben.
                              ;1: Das Buchungslager ist bei hinterlegter QM-Pruefung immer leer (egal welche Bewertung).
                              ;2: Das Buchungslager ist bei hinterlegter QM-Pruefung immer WP (egal welche Bewertung).
                   DFIMP:     Bei Importvorlagen ist es jetzt moeglich auch Sonderzeichen wie | oder [ als Trennzeichen bei flexibler
                              Einleselaenge zu verwenden. Diese werden mit dem fuerenden Zeichen '\' versehen.
                              Beispiel fuer | als Trennzeichen: [C32<]\|[C2<]
                   PRNLIB2:   Bei der Dateiausgabe sind jetzt auch drei ??? als Platzhalter anwendbar.
                   DFIMP:     Beim Einlesen von Dateien sind jetzt auch drei ??? als Platzhalter anwendbar.
                              Beim Einlesen mit dem Modus IMPORT_DELETE_FILE und Dateinamen ohne Platzhalter '?' wird die Datei vorm Einlesen
                              erst umbenannt. Der temporaere Name entpricht dem Dateiname mit der Endung .$ii. Sollte die temporaere
                              Datei bereits bestehen, so wird nur diese zuerst verarbeitet. Nur bei fehlerfreiem Einlesen wird die temporaere
                              Datei geloescht. Besteht die Datei noch nicht, wird versucht die Originaldatei umzubenennen und als
                              temporaere Datei einzulesen und nach erfolgreichem Verarbeiten zu loeschen.
      104 06.05.02 DFIMP:     Neues Kommando in den Importvorlagen @N aktiviert. Wird dieses Kommando angegeben, so findet keine Speicherung des
                              Datensatztes statt. Insbesonderst mit dem bedingten Aufruf z.B. @H1; ist eine Speicherung einzelner Datensaetze verhinderbar.
                   PRNLIB:    Bei TextersatzAusgabe in der Druckvorlage wird bei [t...] und [e...] Bereichen kein Textersatz beim Parsen des in den
                              Klammern stehenden Teils mehr vorgenommen.
                   PINBOARD:  Nachrichten mit Programmakro die als Schedulereintrag verwendet werden erzeugen keinen Alarmton mehr wenn das Makro
                              gestartet wird.
                              Es wird versucht alle abgeelaufenen Schedulereintraege zu aktivieren, insbesonderst nach dem Programmstart.
                              Es duerfen keine Schedulereintraege mehr verwendet werden, die die Uhrzeit nicht fortschreiben.
      105 13.05.02 DFIMP:     Neue Option F [Cxx;F<] fuer Datei einlesen eingebaut. Der Dateiname wird aus Vt geladen.
                              Die Option ist nur mit einem Flex-Feld verfuegbar.
                              Ist das Lesen erfolgreich, so werden die Daten im Feld mit dem FelxTyp MEMT_FILE gespeichert und die Bedingung
                              fuer [t auf wahr gesetzt. Die Groesse der Datei wird in V1 gespeichert.
                              In Verbindung mit der Option IMPORT_DELETE_FILE wird die Datei nach erfolgreichem Speichern geloescht.
                   PRNLIB:    Die Ausgabe von Daten mit der Option [Cxx;D<] auf druckenBin() umgestellt.
                              Neue Option F [Cxx;F<] zur Ausgabe von binaeren Filedaten eingebaut.
                              Bei der Ausgabe von Binaerdaten mit dem Flag PRN_CODE werden jetzt alle Konvertierungen bei der Zeichenausgabe
                              unterdrueckt.
                   DIRLIB:    In der findfirst/findnext Routine ff_name[13] auf ff_name[260] erhoeht. Damit sind lange Dateinamen einlesbar.
                              Beim Aufrufen eines Verzeichnisses werden jetzt bis zu 16 Zeichen des Dateinamen (bisher 8) angezeigt.
                   PRGLOAD:   Beim Kommando SetFile werden jetzt auch die Dynamischen Objekte geprueft. D.h. nach einmaligen manuellen Aufruf
                              einer externen Kartei kann auf Sie mit EXTDAT\\NAME mit SetFile zugegriffen werden.
      106 15.05.02 DFIMP:     Das Loeschen der Vn Variable von close_dvl() nach clr_dvlvar() verlagert. Damit wird das Array erst bei
                              Neuaufruf einer Vorlage geloescht. Damit ist die Option @V auch bei Vn wirksam.
                   DFEXTFNC:  Beim Drucken ueber den IFW_WWW wird beim Oeffnen des internen IFW-Printerspooler geprueft ob er bereits offen ist.
                   BRECLIB2:  Die Suchfunktion Zeichenweise-Und mit mehreren Zeichen korrigiert (MAI_CMP_STRAND).
      107 05.06.02 DFEXTFNC:  Wenn beim Datentraegeraustauschen fuer die Banken ein Fehler mit der Meldung 
                              "Die Datei ist nicht verwendungsf„hig! (Abbruch)" erscheint, wird die Datei zusaetzlich geloescht.
                              Angegebene Dateiname werden jetzt laenger als 15 Zeichen verarbeitet.
                              Bei StationWatchDog::writeWatchDogDfo() Lock=1 gegen Lock=B_SL getauscht
                              Bei DfSyncBuff::write() Lock=1 gegen Lock=B_SL getauscht
                              Bei der Dateisynchronisation (Mandantensync) wird jetzt ein Kennzeichen im Datenbankobjekt mitgefuehrt (m_bRecOrgReadBuffLoaded). Damit
                              wird unnoetiges Speichern der Synchrondatenbaenke unterbunden.
          06.06.02 WINIFW:    Bei inkeyWait() wird jetzt auch in der Windowsversion die Wartezeit beruecksichtigt. D.h. bei einem TTS-Lauf mit einer 
                              Fehlermeldung auf dem Bildschirm wird nach 20 Sekunden die Meldung automatisch geschlossen und in der Oberen Zeile "Wait..." eingeblendet.
                              Es wird jetzt beim beleg_materialbuchen() ein Flag gesetzt damit in zusammenhang mit dem TTS-System
                              kein Konflikt gemeldet wird. Wird der Fall Brieve-Error 80 (Benutzerkollision) waehrend des TTS-Laufs gemeldet (was eigentlich nicht moeglich ist, aber trotzdem
                              vorkommt) so wird wie bei einem DeadLock der Buchungsvorgang wiederholt Logbucheintrag "TTS: conflict detected, beleg_materialbuchen() retry cnt:%d err:%d".
                              Sollte bei einem Konflikt bei beleg_materialbuchen() es trotz mehrfacher Versuche nicht gelingen den Beleg zu verbuchen, wird zusaetzlich die Meldung
                              error( "Unrecoverable deadlock on beleg_materialbuchen() (%d try)" oder
                              error( "Unrecoverable conflict on beleg_materialbuchen() (%d try)" ausgegeben.
      108 18.06.02 DFIMP:     Bei der Zuweisung [Cxx:="ABC"] wird jetzt der Wert konvertiert wie eine Eingabe (bisher wurde er fix in das Feld geschrieben).
                              Es ist jetzt auch die Zuweisung [Cxx:+Vtx] oder [Cxx:+"ABC"] zum Anhaengen von Texten moeglich. Dabei muss das Feld ein
                              Textfeld oder ein Fliesstextfeld sein.
          19.06.02 WINIFW     Bei Import einer Datei ohne Dateiname erfolgt keine Schutzverletzung mehr.
          20.06.02 DFPRN      Beim Drucken (dfprint_()) koennen jetzt mehrere Vermerkkennzeichen gesetzt werden.
                   FAKTMAIN:  Neuer INI Schalter BestellaenderungKennzeichen in der Sektion [Belege]
                              ;BestellaenderungKennzeichen: Wert ""/"G". Default "".
                              ;Hier kann ein Grossbuchstabe als Kennzeichen angegeben werden, der fuer die
                              ;Verwaltung von Aenderungen in Positionen von Bestellungen und Rahmenbestellungen
                              ;(Abrufbestellungen) verwendet wird. Dabei muss in dem Ausgabeformular, das
                              ;den Beleg ausdruckt oder als Email oder Fax versendet, dieses Kennzeichen gesetzt werden.
                              ;Wird dann der Beleg nach dem Setzten des Kennzeichen (Ausdruck und Weitergabe an den 
                              ;Lieferant) zum Veraendern aufgerufen, so wird in den Belegpositionen vermerkt
                              ;welche Positionsdaten veraendert wurden (z.B. Neuanlage, Menge, Preis, Termin, ...).
                              ;Das Kennzeichen wird dabei in der Bestellung geloescht. Mit Hilfe dieser Daten
                              ;kann zum Lieferant eine Bestellaenderung versand werden, die genaue Informationen
                              ;nur ueber geaenderte Positionen enthaelt. In diesem Zusammenhang sollten zu stornierende
                              ;Positionen nicht geloescht werden, sondern z.B. mit der Menge 0 versehen werden.
                              ;Verwendendes sie als Kennzeichen den Buchstabe "G" (empfohlen).
                              Neuer INI Schalter AuftragsaenderungKennzeichen in der Sektion [Belege]
                              ;AuftragsaenderungKennzeichen: Wert ""/"G". Default "".
                              ;Hier kann ein Grossbuchstabe als Kennzeichen angegeben werden, der fuer die
                              ;Verwaltung von Aenderungen in Positionen von Auftraege und Rahmenauftraege
                              ;(Abrufauftraege) verwendet wird. Dabei muss in dem Ausgabeformular, das
                              ;den Beleg ausdruckt oder als Email oder Fax versendet, dieses Kennzeichen gesetzt werden.
                              ;Wird dann der Beleg nach dem Setzten des Kennzeichen (Ausdruck und Weitergabe an den 
                              ;Kunden) zum Veraendern aufgerufen, so wird in den Belegpositionen vermerkt
                              ;welche Positionsdaten veraendert wurden (z.B. Neuanlage, Menge, Preis, Termin, ...).
                              ;Das Kennzeichen wird dabei in der Bestellung geloescht. Mit Hilfe dieser Daten
                              ;kann zum Kunde eine Auftragsaenderung versand werden, die genaue Informationen
                              ;nur ueber geaenderte Positionen enthaelt. In diesem Zusammenhang sollten zu stornierende
                              ;Positionen nicht geloescht werden, sondern z.B. mit der Menge 0 versehen werden.
                              ;Verwendendes sie als Kennzeichen den Buchstabe "G" (empfohlen).
                   WINIFW:    Beim Beenden des WINIFW bei geoeffneter Suchmaske wird der Prozess jetzt ordnungsgemaess beendet.
          24.06.02 PRJPRM:    In der Systeminformation (IFW-Eroeffnungsbildschirm) wird jetzt das aktuelle Arbeitsverzeichnis angezeigt.
                   FFART:     Bei Produktionsbuchung Maschinentyp P bei "in Gebrauch" und der Bedarfszahlenuebersicht beruecksichtigt (jetzt wie Typ M).
                   DFPRN:     Es ist jetzt moeglich mit der Ausgabeformularoption 'A' (Feld Ausgabeopt.) 
                              bei einer Zieldatei die Daten anzuhaengen.
                   PRGLOAD:   Die Kommandos PrintFile und PrintFileID um die Option 64 erweitert. Damit laesst sich bei einer Zieldatei
                              die Daten anhaengen.
          25.06.02 PRNLIB:    Werden Adreesen mit Vadrset gedruckt, so werden evt. im Laenderkennzeichen angehaengte Zahlen (z.B. GB3) fuer den
                              Ausdruck entfernt (also es wird statt GB3 nur GB gedruckt).
      109 28.06.02 DFIMP:     Die Erkennung ob ein Speichermakro in einer Importvorlage vorhanden ist wurde von "\rEnd();\r" auf "\rEnd(" geaendert.
                              Damit ist es moeglich auch Rueckgabewerte im End(); Kommando zur Speichersteuerung zu verwenden.
                   DFIMP:     Mit der Option @U im Kopf-Hunk einer Importvorlage werden beim Einlesen die Daten vom Ansi zum Oem Zeichensatz konvertiert.
                              Dies erfolgt nicht beim Einlesen von Datenbereichen (Binaerdaten).
      110 10.07.02 PRNLIB:    Bei TextersatzAusgabe in der Druckvorlage wird bei [D...], [L...] und [N...] Bereichen kein Textersatz beim Parsen des in den
                              Klammern stehenden Teils mehr vorgenommen. Desweiteren wird auch keine Textersatz bei Fehlermeldungen vorgenommen.
          11.07.01 BDE:       Den BDE Manager so erweitert, dass die INTUS 1600 Terminals einsetzbar sind.
          12.07.01 BDE:       Es ist die Option o bei der Formatierung der Texte im BDE-Script BDE.PRC einsetzbar:
                              [1o2 ] Text 1 ab dem 2. Zeichen ausgeben.
                              INTUS BDEs fuer Kommen/Gehen Einsatzbereits, BDE.PRC angepasst. Im BDE.PRC sind jetzt alternativprogrammzeielen mit einem kleinen
                              a als ERSTES Zeichen in einer Zeile einsetzbar. Diese kommen beim INTUS-BDE zum Einsatz, falls vorhanden.
          15.07.02 WINIFW:    Beim Beenden des WINIFW bei geoeffneter interner Hilfemaske wird der Prozess jetzt ordnungsgemaess beendet.
      111 17.07.02 DFLOADZW:  Bei Sammelpositionen wird jetzt die Positionsnummer mit PosNum durchnummeriert (Routine posnum_dfliste()).
                   DFWEG:     Bei Kommisionierscheinen mit Sammelpositionen wird am Anfang fuer jede Produktion eine Kopfposition mit dem Produktionslink geschrieben.
                   FAKTMAIN:  LagerBuchenData.creator() eingefuehrt und beim IFW-Porzesstart ausgefuehrt.
                              Bei warenbedarf_neu_erstellen() LagerBuchenData zwangsweise auf "keine Pruefmeldung Artikelstatistik Vert:..." gestellt.
                              Der Kommisionierschein bucht die Ware korrekt im Artikelstamm in den Sammelfeldern interne/externe Lager.
          19.07.02 FFFIRUMS:  Beim Monatsabschluss wird jetzt der Auftragseingang beim Kunde immer neu berechnet.
                              Der Auftragseingang beim Kunde ist zusaetzlich online. Bisher wurde nur bei vorhandenem Satistikmodul Auftragseingang
                              mit AE-Datum in der Auftragspositione der Wert offline ueber den Monatsabschluss berechnet.
      112 25.07.02 FFBELPRU:  Bei der Verarbeitung von EDITFACT Bestellungen werden bei Abruf von Positionen mit Return ohne Selektion keine bereits verarbeiteten
                              Positionen mit dem Kennzeichen 'V' mehr mit uebernommen. Insbesonderst bei Bestellaenderungen fuehrte dies bisher zur Meldung 
                              "Ein selektierter Eintrag ist bereits verarbeitet! (Abbruch)".
                              Es koennen jetzt Kommissioniernummern die vom Kunde versandt werden mit in die Auftragsbearbeitung uebernommen werden. Dabei wird
                              die Nummer in der 1. Zeile des Fliesstextes der Position in der Form "Kommission xxx" gespeichert.
          26.07.02 FFBDE:     Neuer INI Schalter BDEBenutzeLPT2 in der Sektion [System]
                              ;BDEBenutzeLPT2: Wert 0/1. Default 0.
                              ;Das IFW-Modul BDE Taskmanager benutzt diesen Wert fuer die ausgabe von Siganalen an
                              ;die LPT Schnittstelle (nicht Untertuetzt bei WINIFW).
                              ;Mit dem Wert 0 (default) wird die LPT1 Schnittstelle auf 0x378 verwendet.
                              ;Mit dem Wert 1 wird ide LPT2 Schnittstelle auf 0x278 verwendet.
                   PRGLOAD:   Kommando PrintFile und PrintFileID um die Option 128 erweitert.
                              Damit wird nur der aktuelle Datensatz ausgedruckt.
                   FFART:     Bei Inventurzahlen einbuchen wird das Feld letzte Warenbewegung im Artikelstamm nicht mehr gesetzt (neuer Rechenpfad 18).
                              Beim Verbuchen eines Belegs im Artikelstamm wird Feld letzte Warenbewegung nur noch dann auf das Belegdatum
                              gesetzt, wenn das Belegdatum groesser als das Datum im Feld ist. Liegt das Belegdatum in der Zukunft, wir das aktuelle
                              Datum verwendet.
                   PRJRPM:    Bei Anzeige der Systeminformation info() werden jetzt auch 2 Haendlertexte fuer die Fensterhoehe beruecksichtigt.
                   CONLIB:    Wird beim Verschieben einer Nachricht (gelber Rahmen) das IFW mit ALT-F4 beendet, so wird jetzt auch der IFW-Prozess korrekt beendet.
          29.07.02 DFED3LIB:  Seit Release 100 wird das Verzeichnis von Untermasken vom Hauptobjekt vererbt. Ist das Hauptobjekt im Verzeichnis TEMPDAT
                              so wurde jetzt die Untermaske im Verzeichnis INFODAT gesucht. Vererbung so korrigiert, dass Hauptobjekte aus dem
                              Verzeichnis TEMPDAT automatisch auf das Mandantenspezifische BASISDAT-Verzeichnis fuer die Untermasken verweist.
      113 02.08.02 FFWEG:     Bei Kommissionierscheine wird jetzt bei Sammelpositionen die Lager in den betroffenen Produktionen korrekt nach
                              Spezifikation umgetragen.
      114 05.08.02 FFBELPRU:  Bei der EDIFACT-Verarbeitung wird jetzt bei Preis 0 in der Kundenbestellung der Preis aus dem Artikelstamm ohne Meldung uebernommen.
                              Wird bei der Bestellung ein Preis angegeben der genau dem im IFW hinterlegten entspricht, erfolgt die Verarbeitung ohne Meldung.
                              Wird bei der Bestellung ein Preis angegeben der von dem im IFW hinterlegten abweicht, erfolgt eine Meldung und Anzeige des Belegs.
      115 09.08.02 FFBELPRU:  Bei der EDIFACT-Verarbeitung wird jetzt bei der Positionsnummerierung neuer Belege immer bei 1 begonnen
                   REQUEST:   Bei viewprint() wird doIdle fuer den Bildschirmrefresh unter WINIFW aufgerufen.
          13.08.02 DFLIB:     Beim Schleifenrequester mit Zaehler doIdle fuer den Bildschirmrefresh unter WINIFW aufgerufen.
                              Bei Shift_Ende Zaehler von 4 Stellen auf 5 Stellen erhoeht.
          14.08.02 DFIMP:     Die Funktionen IMPORT_CLRDATA, IMPORT_RENAME_FILE und IMPORT_NOWRITE implementiert.
                   PRGLOAD:   Kommando ImportFile erweitert: 
                              Modus 16 (IMPORT_CLRDATA)
                                Es koennen beim Import Datenbereiche in der Datenbank zuvor geloescht werden. Damit
                                ist es moeglich Datenbereiche komplett neu einzulesen und die bereits gepeicherten Daten
                                in dem Bereich automatisch zuvor zu loeschen.
                                Dazu muss in der Datei ein Feld das einen Datenbereichsschluessel darstellt vorhanden sein. Das
                                Feld muss mit einem Indexpfad versehen sein. Beim Import der neuen Daten muss das Feld
                                mit dem entsprechenden Schluesse versehen werden.
                                In der Importvorlage muss das Feld ueber die Option @Cxx; mit xx als Feldnummer angegeben werden.
                                Das Feld xx muss durch den Import mit dem entsprechenden Schluesseltext versehen werde.
                                Wird beim Import ein Datensatz gespeichert, dann wird geprueft ob der angegeben Schluessel das erste mal
                                gepeichert wird. Ist es das Erstemal, dann werden zuerst alle in der Datenbank enthaltenen Datensaetze mit dem 
                                Schluessel geloescht und dann der Satz gepeichert. Wurde bei einem Importlauf der Schluessel schon einmal
                                gepeichert, so erfolgt keine Loeschung mehr.
                              Modus 32 (IMPORT_RENAME_FILE) 
                                Die Datei wird vor dem Import Umbenannt, aber nach dem Importlauf nicht geloescht (Die Datei bleibt mit dem
                                temporaeren Namen erhalten).
                                Damit ist es moeglich per Makro zuerst ein Loeschlauf vorzunehmen und mit einem zweiten Lauf
                                den Import durchzufuehren.
                              Modus 64 (IMPORT_NOWRITE)
                                Es werden keine Daten beim Import gespeichert. Eine evt. aktive Loeschung mit Modus 16 (IMPORT_CLRDATA)
                                wird aber durchgefuehrt.
                                Damit ist es moeglich per Makro zuerst ein Loeschlauf vorzunehmen und mit einem zweiten Lauf
                                den Import durchzufuehren.
          15.08.02 FFBUCHEN:  Bei dfAenderungsBuchen wird bei einer vererbten Instanz der Buchungsdatei die Buchungsdatei nicht mehr
                              automatisch geschlossen sondern das Signal "Schliessen wenn die Hauptinstanz geschlossen wird" gesetzt.
                              Dadurch werden unnoetige Offnen/Schliessen Vorgaenge bei onlinegebuchten Vorgaenge insbesonderst beim
                              Import vermieden.
                   FFBDE:
                   FFBDE2:
                   FFPROD:    Es koennen jetz Logbucheintraege in das BDE-Log importiert werden. Dabei wird in den Produktionen
                              Online die Funktionen 21 Start (Person Startzeitpunkt eintragen, F loeschen), 22 Stop (Person Stopzeitpunkt eintragen, kein F)
                              25 Stop&Fertig (Person Stopzeitpunkt eintragen, F) und neuer Event 27 Zwischenzeit (nur Istzeit addieren) verarbeitet.
                              Sollte die Produktion nicht aktiv sein oder nicht existieren, so wird beim Import keine Meldung ausgegeben, sonder
                              der BDE-Logbucheintrag vom Typ auf 9x verstellt. Im Bemerkungstext des Logbucheintrags wird auch eine entsprechende Meldung eingetragen.
                   FFPROD2:   Beim Abschliessen einer Produkton zu 'E' wird das Kennzeichen 'U' geloescht (BDE-Anlage Exportkennzeichen).
      116 29.08.02 FFARTBUCH: Beim Verbuchen von Artikel mit Lagerangaben gab es in der Routine getBuchQuellLagerNum() ein Compilerproblem mit dem String32 Objekt. Der hatte bei einer Inlineabfrage mit ?: und cast operator char*
                              bei der Rueckgabe mit NULL eine neue Instanz der Variable erzeugt -> Zeiger auf den String-Puffer
                              in die Pampa mit unvorhersehbaren Folgen (Ggf. wird die Menge inGebrauch, ext.Lager oder int.Lager falsch im Artikelstamm gefuehrt). Problem beseitigt.
          02.09.02 PRNLIB3:   Neue Feldzugriffe fr die Druckvorlagen:
                              Mit den Kommandos kann ein Zugriff auf Daten aus dem Ausdrucksfeld eines Datensatzes erfolgen.
                              .DRUVersion       ->Versionsnummer ausgeben
                              .DRUPrintCounter  ->Ausdruck-Kennzeichnenzaehler des Datensatzes ausgeben (wird nur bei "Kennzeichnen" weitergezaehlt").
                              .DRUPrintDate     ->Ausgeber und Zeitpunkt ausgeben: UUU TT.MM.JJJJ SS:MM:SS
                              .DRUPrintPCounter ->Ausdruck-Kennzeichnenzaehler Kennzeichen '.' des Datensatzes ausgeben (wird nur bei "Kennzeichnen" weitergezaehlt").
                              .DRUPrintPDate    ->Ausgeber und Zeitpunkt Kennzeichen '.' ausgeben: UUU TT.MM.JJJJ SS:MM:SS
                   DFLIB2:    set_vermerk() setzt keine '.'-Zeichen mehr als Vermerk.
                   MAI#DEF.H: Neue Feldnummer MAIC_DRUDATA 148 aktiviert. Damit kann in einem Datensatz der Ausdruck mit "Kennzeichnen" registriert werden. Wird beim
                              Ausgeben von Daten ein Kennzeichen gesetzt so wird die Frage 
                              "Ausdruck ok und Datens„tze kennzeichnen ? (Kennzeichnen/Weiter)": "Datens„tze kennzeichnen ? (Kennzeichnen/Weiter)" gestellt. Wird dann der
                              Datensatz gekennzeichnet, so werden die Daten in diesem Feld fortgeschrieben. Sie koennen mit den oben genannten Kommandos in einer Druckvorlage
                              abgerufen werden.
                              Das Kennzeichen '.' nimmt eine Sonderolle ein:
                              Es wird nicht in das Kennzeichenfeld des Datensatzes geschrieben. Es schreibt aber die Parameter unter DRUPrintPCounter und DRUPrintPDate fort.
                              Da bei einem Ausdruck mehrere Kenzzeichen angegeben werden koennen (z.B. "D."), koennen sie das Kennzeichen '.' bei verschiedenen Ausgaben 
                              angeben und so eine besondere Registratur und Fortschreibung eines Zaehlers (.DRUPrintPCounter) bei mehreren Kennzeichensymbolen erreichen. 
          05.09.02 STRLIB     str_getnext() nach str_getnext_() umbenannt. Es kann mit str_getnext ein Problem geben wenn Schluesselfeldnummern fuer Uebertragungsschleifen
                              hochgezaehlt werden: Beispiel: 0000„
                              Bei der qmBewertungUebertragen_() wurde eine Endlosschleife erzeugt, als die Lieferantennummer 0000„ vorkam.
                              str_getnext() durch str_acsgetnext() ersetzt. Dort wird nach der Alternate Collating Sequence das naechste Zeichen gesucht.
          12.09.02 PRNLIB2:   Beim Drucken beim Oeffnen einer Zieldateien den Modus _SH_DENYRW aktiviert. Damit wird besonderst beim Modus Append das Mischen der Daten bei
                              Ausgabe von mehreren Stationen aus unterbunden.
      117 16.09.02 PRGLOAD2:  Neue Makrokommandos:
                              RenameFile( Quelldatei, Zeildatei, Modus);
                               Benennt eine Datei in ein anderen Namen um.
                               Quelle und Ziel muss im gleichen Verzeichnis sein!
                               Als Quelle koennen Jokerzeichen * und ? verwendet werden.
                               Modus 1: Fehler melden
                               Modus 2: Quelldatei nach erfolgreicher Operation loeschen.
                              CopyFile( Quelldatei, Zeildatei, Modus);
                               Kopiert eine Datei zur Zieldatei.
                               Als Quelle koennen Jokerzeichen * und ? verwendet werden.
                               Modus 1: Fehler melden
                               Modus 2: Quelldatei nach erfolgreicher Operation loeschen.
                              AppendFile( Quelldatei, Zeildatei, Modus);
                               Haengt eine Datei an der Zieldatei an.
                               Als Quelle koennen Jokerzeichen * und ? verwendet werden.
                               Modus 1: Fehler melden
                               Modus 2: Quelldatei nach erfolgreicher Operation loeschen.
          18.09.02 FFWEG:     Beim "Rueckgaenig machen" von Kommissionierscheinen (rueckbuchen) wird das Quelllager des Kommissionierscheins in der Produktion eingetragen.
                              Die PG Kennung bei Kommissionierscheine wird jetzt nicht mehr gemeldet. Sie wird automatisch in den Positionen auf den Eintrag im Kopf gesetzt.
                   FFART:     Die global definierten Lager "WE","AP","AS" und "AF" sind jetzt immer interne Lager. Sie sind nur mit dem IFW-Modul "Hochregallageranbindung" aktiv.
      118 20.09.02 DFLIB:     Bei df_aopen() Lock geloescht und nach open wieder gesetzt.
                              Beim Kommisionierschein wird das Feld KnLg> (Lager#z)in der Produktion auf das Ziellager gesetzt.
          21.09.02 PRGLOAD2:  Neue Makrokommandos:
                              ClrAklLager( LagerName);
                               Damit werden die Artikel in einem externes Lager komplett geloescht.
                               Es sind nur die Lager "AF", "AP" und "AS" loeschbar.
                   FFLAGER:   Bei externen Lager werden jetzt Positionen auch beim Kennzeichen WM_ONLINEBUCHEN online gebucht.
                   FFLAGBCH:  Akl-Logbuchfunktionen Lagerbuchung allgemein "01" und Wareneingang "W1", "W2" und "W3" implementiert.
          25.09.02 WINLIB:    Bei Zeitfeldern werden die Eingaben von 4-stelligen oder 6-stelligen Zahlen anderst interpretiert:
                              4-stellige Zahlen ergeben Stunden mit den ersten 2 Stellen und Minuten mit den naechsten 2 Stellen:
                               Beispiel 1223 -> 12:23:00
                              6-stellige Zahlen ergeben Stunden mit den ersten 2 Stellen und Minuten mit den naechsten 2 Stellen und
                              Sekunden mit den letzten 2 Stellen.
                               Beispiel 122354 -> 12:23:54
                              Zahleneingaben mit Leerzeichen getrennt werden in Stunden Minuten Sekunden aufgeteilt.
                               Beispiel 12 2 41 -> 12:02:41
                              Zahleneingaben mit Komma werden als Industriestunden umgerechnet.
                               Beispiel 12,75 -> 12:45:00
                              Zahlenangaben nicht mit 4 oder 6 Stellen werden in Stunden Modulo 24 umgewandelt.
                               Beispiel 12,75 -> 12:45:00
                              Stundenangaben werden mit Modulo 24 uebernommen. Minuten und Sekundenangaben mit Modulo 60.
                               Beispiel 145 -> 01:00:00
          25.09.02 DFPRN:     Beim Ausdrucken kann mit dem Platzhalter %SN% im Zieldateinamen die Stationsnummer 4-stellig eingesetzt werden.
                              Beim Ausdrucken kann mit dem Platzhalter %UN% im Zieldateinamen die Benutzernummer 3-stellig eingesetzt werden.
      119 25.09.02 FFLAGBCH:  Die Verarbeitung der AKL-Telegramme erweitert
                              Lagerbuchungen mit Quell und Ziellager koennen jetzt auch mit leeren Ziellagern buchen.
                   FFWEG:     Beim Wareneingang wird das Lager WE bei ExterneWareneingangspruefung=2 immer gesetzt.
          27.09.02 PINBOARD:  Beim Speichern von Nachrichten mit Job-Verweis wird das Kennzeichen 'R' in den Job uebertragen.
                   FFWEG:     Bei Warenruecksendungen wird in die Positionen die Wareningangsnummer uebertragen, falls die
                              Felder in der Warenruecksendeposition enthalten sind.
                              Die AKL-Menge in den Wareningangs- und Ruecksendepositionen wird beim Kopieren geloescht.
      120 30.09.02 BRECORD.H: REC_INXCNT von 12 auf 16 erhoeht. Es sind jetzt maximal 16 statt bisher 12 Suchpfade moeglich.
                              Achtung: fuer das neue Feature duerfen auch nur der neue DBED 2.1-120 und INSTMASK 4.120 verwendet werden!
                   FFPROD2:   Beim Splitten und Speichern werden jetzt die Felder Ursprungsproduktion und Vorherige Produktion verwaltet.
                              Beim Splitten und Speichern wird jetzt das Feld IstSplittmenge in der Ausgangsproduktion vewaltet.
                   STDMSK:    Sind beim Anmelden eines Makros keine Feldvorgaben vorhanden, so wird automatisch die erste Zeile als
                              Bezeichnung uebernommen (Sie muss mit einem ';' beginnen).
                   FFPROD:    Bei Onlinebuchen der Produktionspositionen wird der Belegkopf DFF_CHILDAUTOCLOSE versehen und nicht sofort geschlossen (Performance)
          02.10.02 FFART:     calcBedLagerZahlen() beruecksichtigt jetzt auch DiffRest xBedZ[19]
      121 04.10.02 FAKTMAIN:  Beim Starten vom IFW wird automatisch das Verzeichnis Temp auf dem Laufwerk C erstellt, falls es nicht vorhanden ist.
                   PRNLIBx:   Neue Option @P fuer Ausgabe der Zahlenfelder mit Dezimalpunkt statt Dezimalkomma.
                   PRNLIB2:   Die Optionen @B und @P im INIT oder SETUP Hunk wird in alle Hunks uebertragen.
                   DFED3LIB:  Bei Meine Liste mittels Maske gehen jetzt auch Datumsfelder (der Tag wird genommen) und Zahlenarrays (maximal 64 Spalten)
                   PRNLIBx:   LINESIZE von 199 auf 1199 erhoeht (Puffer fuer die Hunk-Verarbeitung)
                   AKL:       Bei Lieferscheine, Reparaturen, Produktionen, Wareneingaenge und Warenruecksendungen werden die AklMengen beim kopieren geloescht.
          07.10.02 TOBITFW:   Beim Verarbeiten von eingehenden Emailbestellungen werden jetzt auch Headerzeilen mit 100vvv als zu importierende Emails erkannt (bisher nur Vvvv).
                   FFBELPRU:  FAKT_EMAILAUFTRAG ueberwacht und uebertraegt jetzt die Lieferadresse mit. Das Kommisionierfeld wird als "Ihre Bestellung" uebernommen.
                   FAKT.H     Die artikelstammbezogene Freigabeliste (FAKT_HYPERARTSTAMM) gibt jetzt auch bei Produktionen und in der Artikelliste Meldungen aus.
                   FFLAGBCH:  Das AKL-Logbuch kann jetzt auch lfd. Produktionspositionen buchen.
      122 08.10.02 DFED2LIB:  Bei Selektion und "meine Liste ueber Maske erstellen" wird keine Rechenoperation auf der Maske ausgefuehrt
                   FFREPARA:  Repearaturruecksendungen haben jetzt in der Positione ein Feld "Eigengeraet Ja/Nein". Damit kann wenn von einer Reparatur eine
                              Ruecksendung geschrieben wird erkannt werden ob das Geraet einem Kunden gehoert.
                              Reparaturen koennen jetzt Eigengeraet (interne Reparatur) und Fremdgereat (externe Reparatur) getrennt im Artikelstamm ausweisen.
                              AKL: In Reparaturen koennen jetzt AKL-Mengen gefuehrt werden. Diese werden auch entsprechend im Artikelstamm ausgewiesen.
          09.10.02 DFPRN:     Bei Copy in der Uebersicht wird der Excel-Export mit der Option X aufgerufen. Damit wird dort die Umwandlung ders Dezimalkommas unterdrueckt.
          10.10.02 COMBASE:   Sende- und Empfangspuffer fuer den WWW-Client auf 150k erhoeht.
                              Maximale Groesse der Daten des Clipboard beim WWW-Client auf 60k erhoeht (COM_CLIPBOARDDATA)s
                   STDMSK:    Beim Abfragen der Windowsdrucker wird jetzt zusaetzlich der Modus PRINTER_ENUM_NETWORK und PRINTER_ENUM_REMOTE verwendet.
                   FFWEG:     Kommisionierschein erweitert:
                              - Bei Sammelkommissionierscheine werden jetzt die Positionsnummern der Produktionspositionen nicht mehr in die Kommissionierscheinpositionen uebertragen.
                                Nur Kommissionierscheinpositionen mit leerem Produktionspositionsfeld werden beim Buchen auch als Sammelpositionen verarbeitet
                                (Kennzeichnung aller Produktionspositionen aller betroffenen Produktionen, die die gleiche Artikelnummer enthalten, mit dem Lager der Kommissionierscheinposition).
                              - vLg Feld in der Position betretbar.
                              - vLg wird nur vom Kopf uebernommen wenn es in der Position leer ist.
                              - vLg Lager in der Uebersicht als Spalte sichtbar.
                              - alle Lg Felder muessen beim Speichern des Kommissionierscheins etwas enthalten.
                              - Beim Buchen werden die unterschiedlichen vLg Werte beruecksichtigt.
                              - Von Prod -> KommSchein: Lager der Produktionsposition wird als vLg positionsbezogen uebernommen.
                              - Artikel auf KommSchein abrufen: Standardlager aus Artikelstamm wird eingetragen, wenn im Artikelstamm ein Standardlager angegeben ist.
                              - Bei zusammengefassten Positionen von mehreren Produktionen wird das Lager der letzten Produktionsposition einer Artikelnummer eingetragen.
                              - Bei Rueckbuchungen einer Kommissionierung (Rueckgaengig machen) und mehrfach vorkommender Artikelnummer in einem Kommissionierschein als Sammelposition,
                                wird das Quellager der ersten vorkommenden Position einer Artikelnummer in den Produktionspositionen der Artikelnummer eingetragen.
                              - Bei Rueckbuchung einer Kommisionierung wird im Kopf der Produktion das Quellager aus dem Kopf des Kommissionierscheins eingetragen.
          12.10.02 FFLAGBCH:  AKL: Das AKL-Log kann jetzt auch SN Buchungen vornehmen.
                              AKL: Das AKL-Log kann jetzt auch Reparaturlaeger bebuchen.
      123 15.10.02 BRECLIB2:  Die Vergleichoperation 'U' (Zeichenweise und) hat unter Umstaenden den ersten Satz in der Liste faelschlicherweise selektiert.
                   FFPROD2:   Die Feldmeldung get_codemai==NULL beim Produktion splitten korrigiert.
                   DFED3LIB:  Bei Untermasken kann mit Alt-F10 auch eine Auswahldatei angelegt werden.
                   FFWEG:     Beim Wareneingang wird das Lager WE bei ExterneWareneingangspruefung=2 als Vorgabe gesetzt und kann veraendert werden.
                   PRGLOAD:   Das Makrokommando SetFileMaiFilter bezieht sich jetzt auf das aktuell gesetzte File (SetFile...), nicht mehr auf das Hauptfile beim Makrostart.
                   PRNLIB:    Bei Druckvorlagen und dem Input-Kommando ;IText kann jetzt als Text auch eine Vt Variable eingesetzt werden.
                              Die Anzahl Vt-Variablen von 11 auf 32 erhoeht
                              Vt10 und groesser laesst sich jetzt korrekt anwenden.
                   DFIMP:     Neue Option IMPORT_SELECT: alle importierten Datensaetze werden hinzuselektiert.
                   PRGLOAD:   Kommando ImportFile erweitert: 
                              Modus 128 (IMPORT_SELECT)
                                Es werden alle importierten und geschrieben Datensaetze hinzuselektiert.
                                Bei zusaetzlich angegebener Option 64 (IMPORT_NOWRITE) werden keine Datensaetze
                                geschrieben, aber die Selektion trotzdem durchgefuehrt.
                   FFPROD2:   Bei  Produktion abschliessen (in Lager buchen) wird jetzt das Makroprogramm
                              BauZet.$63 aktiviert. Bei einem Rueckgabewert !=0 (End()) erfolgt keine Speicherung.
      124 16.10.02 PRGLOAD:   Neuer Parameter bei SetBrowseItem() und AppendBrowseItem():
                              Es kann jetzt das Feld zum Nachladen im Browse separat angegeben werden. Damit kann in nachgeladenen
                              Spalten auch auf Indizes von ArrayFeldern zugeriffen werden.
                   PRGLOAD:   Die Kommandos TransferSelection... uebertragen nicht wenn kein Satz in der Quelle selektiert ist
                              (bisher wurde in diesem Fall der Aktuelle Satz uebertragen).
                   PRNLIB3:   Neue Druckvorlagenkommandos:
                              [.AnzahlSelektierte]
                                Gibt die Anzahl selektierter Datensaetze in der Aktuellen Datei aus.
                              [.IstSelektiert]
                                Gibt aus ob der aktuelle Datensatz selektiert ist.
                   PINBOARD:  Tritt ein Fehler beim Scheduler auf, so wird die Meldung nach 1 Sekunde Beendet und der Satz des Schedulers
                              trotzdem gespeichert. Am Besten zu Beginn des Makros ein Programmteil zum setzten der Wiederholzeit im
                              Fehlerfall einbauen.
                   BRECLIB:   clear_searchmai_() modifiziert: Kommt ein Feld mehrfach im Indexpfad vor, so wird es, falls es ein Wurzelfeld ist
                              (erstes Feld im Indexpfad das gesucht wird), nicht mehr geleoscht.
      125 21.10.02 FFLAGBCH:  Im AKL Logbuch die Funktion 12 "Lagermenge setzen bei neueingabe" implementiert.
                   FFREPARA:  Beim Kopieren einer Reparatur werden die AKL-Mengen geloescht.
      126 30.10.02 FFSTAKND:  Neuer INI Schalter AbrufstatistikInMonaten in der Sektion [Belege]
                              ;AbrufstatistikInMonaten: Wert 0/1. Default 1
                              ;Mit diesem Schalter kann die Berechnung des Abrufbestands und des Obligos 
                              ;(Rahmenauftraege, Rahmenbestellungen) veraendert werden. 
                              ;Mit dem Wert 1 werden die Betraege beim Kunden, Vertreter, Lieferant und in der 
                              ;Firmenstatistik mit dem angegebenen Liefertermin in den entsprechenden Monatswerten
                              ;gefuehrt. Ist kein Liefertermin angegeben oder liegt der Termin ausserhalb des
                              ;aktuellen oder folgenden Jahres, so werden die Werte im Feld "ohne Liefertermin"
                              ;gefuehrt.
                              ;Mit dem Wert 0 werden die Betraege der Rahmenvertraege immer im Feld "ohne Liefertermin"
                              ;gefuehrt, unabhaengig von der Angabe eines Liefertermins.
                              ;Hinweis:
                              ;Nach Veraenderung des Schalters muessen die Auftrags- und Obligobestaende mit den
                              ;Menuepunkten "Kundenbetraege neu erstellen" und "Lieferantenbetraege neu erstellen"
                              ;neu initialisiert werden.
                              ;Zu Beachten:
                              ;Die Auftrags- und Bestellbestaende (nicht Rahmenauftrag/Rahemenbestellung) werden immer
                              ;in den dem Liefertermin entsprechenden Monaten gefuehrt, unabhaengig von
                              ;der Einstellung dieses Schalters.
                   FFLAGER:   Externe Lager werden von Belegen nur noch dirket bebucht, wenn der Artikel ein Artikel mit 
                              Lagerverwaltung ist. Bei Artikeln ohne Lagerverwaltung (z.B. Textartikel Typ T) wird im
                              externen Lager immer die Menge 0 verbucht.
                              Wird das Externe Lager manuell veraendert, so koennen Mengen zu Artikel ohne
                              Lagerverwaltung manuell eingetragen werden, die dann auch im Artikelstamm gebucht werden.
          06.11.02 FFWEG:     -Bei Kommissionierscheinen wird im Kopf der Produktionen das Kommisionier-Ziellager "KnLg"
                               auch bei Einzelkommisionierscheinen korrekt gesetzt.
                              -Bei Kommissionierscheinen wird die Meldung "In Position xxxx fehlen Lagerangaben!" bei
                               den Positionen "Produktion #xxxxxx" (Position ohne Artikelnummer mit 'E') nicht mehr angezeigt.
      127 07.11.02 FFBELPRU:  Neues Kennzeichen X beim Verabreiten von EDIFACT-Emailbestellungen:
                              Ist in der empfangenen Bestellposition das Kennzeichen X gesetzt, so erfolgt eine automatische
                              Erkennung der Neuanlage oder Aenderung einer Position (ohne Meldung).
                              Ohne dem Kennzeichen X wird bei einer Aenderung (Kennzeichen A), Neuanlage (kein Kennzeichen A)
                              oder Storno (Kennzeichen S) explizit geprueft ob der Datensatz vorhanden oder nicht vorhanden ist.
                              Im Fehlerfall wird dabei ohne Kennzeichen X eine Meldung ausgegeben.
          12.11.02 PRGLOAD:   Neues Makrokommando:
                              ProcessEdiOrder()
                               Verarbeitet selektierte Eintraege aus der Email-Auftragsempfangsliste in Auftraege.
                   FFDISPO:   Die Lieferscheinautomatik kann jetzt auch selektierte Auftraege fuer Lieferscheine verarbeiten.
                              Bisher waren nur Auftraege mit dem Kennzeichen 'Q' automatisch verarbeitbar. Es koennen nur Auftraege
                              mit Status 'A' aber ohne 'E' und ohne 'S' verarbeitet werden.
                   FFARTBUCH: Bei Buchungen mit einem Quell und einem Ziellager wurde das Quelllager seit Rev. 126 nicht korrekt verbucht.
                              Fehler beseitigt.
                   DFLIB:     Bei Anzeige von Zahlenarrays aus nachgeladenen Karteien wird der Arrayindex aus dem Statistik-
                              Monatswert ermittelt -> Im Personalstamm wird der Monatsstundenwert in der Uebersicht korrekt angezeigt.
                              (wurde ab Rev. 124 mit dem neuen Parameter bei SetBrowseItem() und AppendBrowseItem() veraendert)
      128 18.11.02 FFBELPRU:  Erweiterung der elektronischen Bestellannahme (EDIFACT-Emailbestellungen):
                              -Es koennen Bestellungen zu Rahmenauftraege verarbeitet werden.
                              -Abgeschlossene oder stornierte Auftraege werden beim Verarbeiten gemeldet.
                              -In den verabeiteten Saetzen in der eMail-Empfangsliste gibt es jetzt ein Ergebnisfeld. In
                               ihm steht in einem Fehlerfall der Fehlergrund:
                               OK Alle Angaben in Ordnung
                               01 Kundennummer nicht vorhanden
                               02 Kundenansprechnummer nicht vorhanden
                               03 Lieferadressenkuerzel nicht vorhanden
                               04 Neukunde
                               05 Position zum Loeschen nicht gefunden
                               06 Position zum Aendern nicht gefunden
                               07 Neuposition schon vorhanden
                               08 Sachnummer nicht gefunden
                               09 Artikel nicht gefunden
                               10 Waehrung passt nicht zum Kunde
                               11 Abweichender Preis aus Kundenbestellung
                               12 Abweichende Kundennummer beim Verändern
                               13 Rahmenauftrag nicht gefunden
                               14 Artikel in Rahmenauftrag nicht gefunden
                               15 Rahmenauftrag bereits abgeschlossen
                               16 Auftrag bereits abgeschlossen
                              -Die von elektronischen Bestellungen heraus angelegten Auftraege erhalten zur Unterscheidung
                               automatisch das Kennzeichen I (EDIFACT; Auftrag aus elekt.Bestellannah.)
                   PRGLOAD:   Neues Makrokommando:
                              DeliverSalesOrder()
                               Verarbeitet selektierte Eintraege aus den Auftraegen in Lieferscheine.
                   FFSTDVK:   auftrag_abschliessen() mit einem Parent-Datenbankobjekt ausgestattet 
          19.11.02 FFEINK:    Neues Systemprogramme aktiviert:
                              .$64: Einkauf Artikelbernahme in eine Einkaufbelegposition
      129 19.11.02 CALCMAI:   Erweiterung der Zwangsloeschung von Zeichen Hinter dem 0-Byte Eines Textes in einem Feld.
                              Insbesonderst bei der Zeichensuche in Vermerk-Feldern wird damit eine unter Umstaenden fehlerhafte
                              Selektion vermieden.
          21.11.02 FFPROD2:   Funktion "Produktionsauftrag Splitten (Fertigteile + Abschluss)" aktiviert.
                              Damit kann von einem Produktionsauftrag fertig produzierte Teile abgesplittet werden.
                              Der neu entsehende Produktionsauftrag wird sofort fertig gemeldet und im Lager verbucht.
                   PRGLOAD:   Neues Makrokommando:
                              SetAbort( Sprungziel);
                               Damit kann das Sprungziel "Sprungziel" aktiviert werden. Es wird angesprungen, wenn ein
                               Makrokommando den Wert "Abort" zurueckliefert. Dieser Wert wird typischerweise bei Eingabekommandos
                               zurueckgeliefert, wenn der Anwender die Taste ESC betaetigt.
                               Anmerkung:
                               Nach Ansprung des Sprungziels durch "Abort" wird das gesetzte Sprungziel geloescht und muss erneut 
                               mit SetAbort() aktiviert werden.
          22.11.02 PRGLOAD:   Bei PrintFile wird beim Abbruch einer Eingabe in einer Druckvorlage keine Fehlermeldung mehr
                              vom Programmmakro zurueckgeliefert.
          23.11.02 FAKTEDIT:  Systemmakro .$16 (aendern) und .$17 (neu) bei edit_single aktiviert. Damit ist es moeglich beim
                              Schreiben von Terminen, OP's und Verbindlichkeiten ein Systemmakro einzubinden.
                              Mit einem Rueckgabewert ungleich 0 kann eine Speicherung verhindert werden.
                   FFWEG:     Bei Sammelkommissionierscheinen werden die Produktionspositionen einer Artikelnummer jetzt auch 
                              bei Menge 0 der Kommissionierscheinposition auf das Ziellager geaendert.
      130 24.11.02 FFBELPRU:  Bei der Verarbeitung von elektronischen Bestellungen (Edifact) Fehler -201 bei vorgegebenen
                              Waehrungen beseitigt.
                   FFERLBU:   Bei der Stapelerzeugung mit Warengruppenaufloesung wurde das IFW-Modul "Frachtkostenaufteilung in
                              der Beton-Branche" erweitert:
                              Erweiterung der Buchungstapelerstellung von Verkaufsbelege zur Ausweisung von einer separaten Kostenstelle
                              fuer Frachtkostenanteile.
                              Ein neues Feld in der Maske "Frachterloeskonten".
                              In ihm wird die Kostenstelle eingetragen, die den separaten Frachterlösbuchungen zugeordnet wird.
                              Erweiterung des IFW-Stapelerzeugungsprogramms, das die Rechungen betragsschluessig aufteilt.
                              Ist keine Kostenstelle in der Mask "Frachterloeskonten" hinterlegt, so wird die Kostenstelle
                              der Materialbuchung verwendet (wie bisher).
                   FFOCAST:   Die Forecastberechnung erweitert:
                              -Wird durch die geplante Bestellung mit einer Charge eine Ziellagermenge kleiner 0 erreicht (der maximaler Lagerbestand
                               ist 0 oder kleiner eine Charge), so wird eine Charge mehr bestellt (der maximale Lagerbestand wird in diesem Fall ueberschritten).
                              -Es ist jetzt ein zweiter Berechnungmodus fuer Planzahlen vorhanden:
                               Die Forecastzeile werden als Planzahlen betrachtet. Mittels eines Grenzdatums, das die aktuelle KW beinhaltet, werden alle
                               Werte aus der Forecastzeile vor dem Grenzdatum verworfen. Bestehen Auftragserte in den einzelnen KWs, so werden diese
                               Werte nur dann zur Planung herangezogen, wenn sie gsroesser als die Forecastwerte sind. Auftragswerte vor dem Granzdatum
                               werden vollstaendig zur Planung herangezogen.
                               Es ist zu beachten dass die Auftrags- und Planzahlen nur bei den Verkaufsartikeln zur Verfuegung stehen. Unterbaugruppen
                               werden aus den Stuecklisten der Verkaufartikel heraus ohne Grenzdatum berechnet (Der Verkaufsartikel beruecksichtigt bereits den Planmodus).
                              -Der Planmodus wird mit dem Wort "FcPlan" statt "FoCast" angezeigt.
                              -Der Planmodus kann in den Systemeinstellungen unter "11 Artikelliste Einstellungen" aktiviert werden. Er wird dann automatisch die aktuelle
                               KW als Plandatum gesetzt.
      131 04.12.02 PRGLOAD:   Das Kommando DispoSelection erweitert:
                              DispoSelection( Modus, DatumBis);
                              Modus 1: Der eingegebene Mindestlagerbestand wird beruecksichtigt
                              Modus 2: Der Dispowert wird nur in der angegebenen KW geprueft, nicht in den Wochen davor
                              Modus 4: Der Dispowert wird in der angegebenen KW geprueft und zusaetzlich die Folgewochen des Jahres. Wird in den
                                       Folgewochen der Dispobestand wieder positiv, wo wird der Artikel doch nicht selektiert.
                              Modus 8: FORECAST: Es werden alle Artikel selektiert, die bis zum angegebenen Zeitpunkt laut Forecast-Bestellberechnung zu bestellen sind.
                                       Die Modis 1 2 und 4 spielen dabei keine Rolle.
                   FFART:     In der Forecastuebersicht wird ein > angezeigt, wenn noch Werte im Forecastbedarfsstrahl folgen.
                   FFBSTLST:  In den Bestellvorschlaegen gibt es ein Schalter "Forecast: Bestellbedarf bis KW pruefen":
                              Damit wird bis zur vorgegebenen KW geprueft, ob Ware nach Forecastbedarf bestellt werden muss.
      132 06.12.02 CALCMAI:   cpy_mai() kopiert jetzt Zahlenarrays auch dann korrekt, wenn im Namen kein [] angegeben ist.
                              cmp_mai() liefert jetzt beim Vergleich unterschiedlich aufgebauten Zahlenarrays den korrekten Wert
                   FFOCAST:   -Ein Berechnungsfehler am Jahresuebergang bei Jahren ohne 53. KW beseitigt.
                              -Ist maximale Lagerbestand kleiner als der minimale Lagerbestand, wird er auf den minimale Lagerbestand gesetzt.
                              -Die Bedarfszahlen von J-Listen werden im Artikelstamm nicht mehr zusaetzlich auf die Stucklistenmaterialien aufgeloest
                               (die Bedarfsmenge kommt hier aus den Materiallisten der Auftragspositionen).
                               J-Listenartikel sind damit grundsaetzlich nicht Planbar. Die Planzahlen muessen auf die verwendeten Einzelteile 
                               angewendet werden.
                              -Die Forecastuebersicht ist jetzt rekursiv aufrufbar.
      133 17.12.02 PRGLOAD:   Neues Makrokommando:
                              Password( PasswordMD5);
                              Password( PasswordMD5, Text);
                               Damit kann die Eingabe eines Passworts verlangt werden. Als PasswordMD5 muss ein String mit 32 Zeichen angegeben werden,
                               der das Einzugebende Password MD5 verschluesselt enthaelt.
                               Mit dem folgenden Makrokommando kann der Sting erzeugt und mit Copy und Past eingefuegt werden:
                                ExecutePrintText( "[Vt;IPasswort:][Vt:MVt][Vt;IPasswordMD5:]");
                               Die Angabe von Text ist optional. Damit kann die Ueberschrift des Eingabefensters geaendert werden. Der Default ist "Passwort".
                   FAKTMAIN:  Menue-Systemprogramm im Verzeichns SysPrg koennen vom Menue aus nicht mehr ausversehen durch ein Makro im Verzeichnis Programm ueberschrieben werden.
                   FFKDSTST:  WINIFW Schutzverletzung bei kundenspezifischer Artikelstatistik entfernt.
                   PRGLOAD:   Bei EditFile() wird bei Angabe einer alternativen Fensterueberschrift die Orginale beim verlassen wieder korrekt zurueckgestellt.
                   PRNLIB2:   
                   DFEXTFNC:  Wird beim Drucken selektierter Belege die Ausgabe in eine Datei mit Autonummerierung (?, ??, oder ??? im Dateiname) versendet, so wird
                              bei jedem Beleg eine eigene Datei erzeugt. Damit ist es auch moeglich Massenfaxe an eine File-API Schnittstelle zu versenden.
                              Es koennen jetzt auch 4 Fragezeichen im Dateiname eingesetzt werden (???? im Dateiname).
          08.01.03 MENU:      Bei Hotkeys wird jetzt auch vom Menue aus immer gleich die Funktion ausgeloest, nicht nur das Submenue-Fenster geoeffnet.
          09.01.03 FAKTMAIN:  g_wBDEWartenAufIPSekunden von WORD auf g_dwBDEWartenAufIPSekunden DWORD umgestellt. Damit sind laengere Zeiten als 8 Suunden (32000) moeglich.
                              Maximal jetzt 2000000000 Sekunden.
      134 10.01.03 PRNLIB2:   Beim Drucken in Dateien mit Autonummerierung, wird jetzt immer zuerst in eine temporaere Datei mit der Erweiterung .$io gedruckt.
                              Nach erfolgreicher Ausgabe wird sie in den angegebenen Dateiname umbenannt.
      135 14.01.03 FFBSTLST:  Bei Bestellung von Bestelliste wird die Produktionsnummer mit in die Bestellposition uebernommen.
                              Systemmakro .$65 und .$66 bei der Uebernahme von Daten mit F2 in die Bestelliste aktiviert. Damit ist eine Ueberpruefung
                              und Manipulation der Eintraege in die Bestelliste moeglich.
                   DFED3LIB:  Systemmakro .$67 beim Archiviern. Bei End==1 wird der Datensatz nicht archiviert (auch manuelle nicht).
                   FAKTMAIN:  Neue Schalter in der FAKT.INI "EinkaufProdAuftragImmerKennzeichnen"
      136 15.01.03 PRGLOAD:   Neues Makrokommando:
                              Gosub( "Programmname")
                              Gosub( , "Label")
                              Gosub( "Programmname", "Label")
                              -Ruft ein Programm auf und kehrt zu seiner Aufrufzeile zurueck.
                              -Wird kein Programmname angegeben, so wird das Label in der gleichen Programmdatei aufgerufen.
                              -Variablen sind als "Programmname" und "Label" erlaubt, man kann also auch indirekte Aufrufziele definieren.
                              -Mit einem Rueckgabewert von 1 wird der Programmlauf abgebrochen (ABORT).
      137 17.01.03 COMSOCK:   Den HOST des WWW Clients geaendert: Gibt es ein Datenstau beim Senden wird die Verbindung nicht mehr aufgelegt.
                              Es werden in diesem Fall weniger Bildschirmrefreshs gesendet.
                   IFW_WWW:   Wird ein ungueltigen Headerpaket empfange (u.a. sehr grosser falsche Paketgroesse), so wird es verworfen.
                              Bisher konnte durch falsche uebergrosse Paktegroesse der Datenempfang deaktiviert werden, so dass kein
                              Bildschirmrefresh mehr erfolgte, aber der Host immer noch die Eingabedaten (Tastaturkommandos) vom Client verarbeitete.
          20.01.03 DISPO:     Fuer die Artikeldispo und Forecastzahlen gibt es jetzt ein eigenes Dispojahr ab dem die Tabelle gefuehrt wird.
                              Das Feld ist unter "Programmeinstellungen, 22 Statistik - Status" enthalten. Das Datum muss mit
                              dem Menuepunkt "aktuelles Dispojahr setzen" im Statistikjahr gesetzt werden.
      138 21.01.03 DFEXTFNC:  Beim Drucken in Windowsdrucker wird keine Datei $WINSP$.PRN mehr geoeffnet.
                   PRNLIB4:   Bei Verwendung des Kommandos @Cxx; beim Drucken zum Trennen von Ausgabelisten beim Aendern eines Feldinhaltes wird
                              nur noch beim Listendruck der ersten Instanz (Hunk HAUPT oder SWITCH) die Pruefung auf eine Aenderung vorgenommen. Damit ist das Problem beim Druck von Eintraegen die
                              im Aenderungsfeld keinen Inhalt haben und gleichzeitiger Verwendung von [D-Schleifen beseitigt. Bei diese Konstellation
                              erfolgte eine Vorlagenneustart bei jedem Durchlauf in der [D-Schleife.
                   DFEDLIB:   Die Systemmakros .$05 und .$06 werden jetzt auch beim Speichern einer Bestellistenposition ueber F2 aus dem Artikelstamm heraus aufgerufen.
                   PRNLIB3:   Neue Druckvorlagenkommandos:
                              [.Zeile] 
                                Gibt die aktuelle Zeilemnnummer aus
                              [.Spalte]
                                Gibt die aktuelle Spaltennummer aus
                              [.CPI]
                                Gibt das zuletzt dem Drucker gesendete Zeichendichtenkommando aus (10, 12, 15 oder 17)
                   FFBDE2:    Eine Schutzverletzung beseitigt, wenn der BDE-Manager ohne freie COM-Schnittstelle aktiviert wird.
          23.01.03 IFW_WWW:   BDE-Kommunikation modifiziert: Unnoetige sich stapelnde Pollkommandos in einem Datenpaket werden jetzt verworfen und mehr an das BDE-Geraet versandt.
                   PRNLIB4:   Kommandos @Cxx; nochmal korrigiert. Es wurde bei Switch-Hunks nicht korrekt beruecksichtigt.
          28.01.03 FFBELPRU:  Beim Einlesen von EDIFACT-Bestellungen per Email, wird bei Angabe eines Rahmenauftrags der Preis und der Positionsrabatt aus dem Rahmenauftrag dem 
                              Artikel vorgegeben. Ist der Preis im Rahmenauftrag 0, so wird der Preis aus dem Artikelstamm vorgegeben.
                              Bei der Uebernahme eines Preises aus der Kundenbestellung, wird der Positionsrabatt auf 0 gesetzt.
      139 29.01.03 TOBITFW:   Das Einlesen von EMail-Dateien korrigiert. Es werden jetzt auch EMail-Dateien erkannt, wenn ein RootMap des Scann-Laufwerkbuchstabens in das
                              DAVID-Verzeichnis hinein gemacht wurde.
          31.01.03 FFFIRUMS:  Es wird jetzt beim Programmstart das aktuelle Dispojahr geprueft. Ist es zu alt (noch im Vorjahr und schon Juli), wird die Meldung
                              "Bitte aktuelles Dispojahr (Artikeldispo/Forecast) setzen! (Ok)" ausgegeben.
                   PRNLIB:    DVL-Kommandos erweitert:
                              @#FindInFile "Dateiname", "zu suchender Text"; Prfen ob in der Datei Dateiname der Text "zu suchender Text" enthalten ist (mit [t][e] verzweigen).
                              Der Dateiname wird bei diesem Kommandos ber den Original-Ausgabedateinahme zusammengebaut.
                              Gross- und Kleinschreibunng wird beim zu suchende Text beruecksichtigt.
          04.02.03 FAKTMAIN:  Beim IFW_WWW Client sollten jetzt keine Nachrichtenrudimente vom vorherigen Benutzer des Hosts mehr auftauchen.
          07.02.03 DFEDLIB:   Bei der F4 oder F10-Datenbank kann man nicht mehr mit F10 die (falschen) Makros aufrufen.
      140 12.02.03 MENU:      Fensterfehler bei Hotkeys des Hauptmenues beseitigt
                   WINIFW:    Neue Editorfunktionen unter Windows eingebaut. Die Ausgabe auf den Bilschirm mit Shift-Return wird auf einen
                              Windowseditor umgeleitet und im IFW angezeigt. Komplette Ueberarbeitung des IFW-Windowsmenue.
          13.02.03 DFIMP:     Rekursionstiefe bei @H...; wird geprueft: Maximal ist eine Tiefe von 26 Aufrufen moeglich. Bisher konnte ein Stack-Overflow beim Import auftreten.
          18.02.03 FFFIBU21:  WINIFW, Schutzverletzung bei Neuanlage der Fibu beseitigt.
                   FFVERK:    Bei Ausgangsbelegen wird jetzt bei vergabe von negativen Rabatten (Aufschlaege) eine Cent-Pruefung des Netto MwSt-Frei Anteils vorgenommen.
                              Tritt eine Abweichung von 1 bis 2 Cent auf, so wird der Betrag am groesseren Nettobetrag A oder B korrigiert.
      141 20.02.03 IFW_WWW:   Bei der Datenkommunikation wird jetzt die Datenverbindung periodisch Ueberwacht. Antwortet der Client bei Inaktivitaet nach
                              Ablauf von 15 Sekunden dem Host nicht mehr, so wird die Datenverbindung beendet. Diese Zeit laesst sich in der Datei
                              Server.ini mit dem Wert "SendTimeOutSec" veraendern.
                   WINIFW:    Wird das IFW bei geoeffneter Meldung "Datum nicht gltig.  (TASTE)" mit ALT-F4 geschlossen, wird der Prozess ordnungsgemaess beendet.
      142 20.02.03 PRGLOAD:   Schutzverletzung beim Verlassen des Makrokommandos EditFile() entfernt.
          21.02.03 MSCON:     Maximale Vergroesserung des Hintergrundbildes auf 4MB Pixel begrenzt (ansonsten flog GDI-CopyImage() raus).
                   WINIFW:    Die Fenstereinstellungen und der Font wird jetzt auch beim Verlassen mit ALT-X gespeichert.
                              Bei Strg-C in der Uebersicht wird nicht mehr A.ASC automatisch geoeffnet
                              Im Menue wird "Vertreterstamm" nicht mehr mit dem Hotkey Strg-V angezeigt.
                              Kann beim Einloggen als Stationsidentifikation keine IPX-Adresse ermittelt werden, wird der Computername verwendet.
      143 25.02.03 WINIFW:    Im Systemeditorfenster ToolTips eingebaut.
                              Der Systemeditor ist jetzt immer im OEM-Modus
          28.02.03 WINIFW:    Beim Auflisten eines Verzeichnisses wurde beim Dateidatum ein Monat zu wenig angezeigt (findfirst/findnext-Emulation korrigiert).
      144 06.03.03 PRGLOAD:   DeliverSalesOrder() gibt jetzt auch "Abort" zurueck.
                   PRGLOAD:   Neues Makrokommando:
                              OrderCosting( Modus, DatumBis)
                               Berechnet eine Nachkalkulation zu einem Auftrag (IFW-Modul notwendig).
                                 Es wird von den Auftraegen heraus gestartet. Es werden die selektierten Auftraege
                                 berechnet. Sind keine selektiert, wird der aktuelle Auftrag (auf dem der Cursor steht) berechnet.
                               Der Paramter Modus ist auf 0 zu setzen.
                               Das Datum ist das Datum, bis zu welchem die angefallenen Wareneingaenge und erfasste Stunden
                               beruecksichtigt werden.
          07.03.03 FFART:     Bei Stuecklisten wird beim kalkulatorischen EK die PE beruecksichtigt, falls das Endprodukt eine PE besitzt.
                              Dabei werden alle EKs mit der PE beruecksichtigt, auch in der erweiterten Kalkulationsmaske.
      145 12.03.03 FFPROD:    Neuer INI Schalter ProdBestellpruefungBeiWarenabgang in der Sektion [System]
                              ProdBestellpruefungBeiWarenabgang; Wert 0/1. Default 1
                              Wird eine Lagerproduktion abgeschlossen (Kennzeichen E), so wird die Verbaute Ware aus dem
                              Lager ausgebucht und das produzierte Teil eingebucht. Dabei koennen verbaute Waren ein Kennzeichen
                              M oder E zur automatischen Lagerueberwachung im Artikelstamm enthalten. So kann z.B. die Ware
                              automatisch beim Unterschreiten eines Mindestlagerbestands in die Bestelliste uebertragen werden. 
                              Diese Ueberwachung der Waren beim Abschluss einer Lagerproduktion kann mit dem Wert
                              ProdBestellpruefungBeiWarenabgang=0 abgeschaltet werden. Geprueft werden nur Positionen, die im
                              Produktionsschein den Posistionsstatus 'M' oder kein Kennzeichen im Positionsstatus besitzen.
                   PRNLIB:    Neue Druckvorlagenzuweisung [V10:dfDatum]
                              [V10:dfDatum] gibt die Forecastplanzahl des angegebenen Datums zurueck. Es ist der Wert,
                              der in der Forecasttafel eines Artikels (ALT-F8) in der untersten Zeile enthalten ist (PlnLgB).
                              Dazu ist das IFW-Modul Forecast notwendig.
                   FFBSTLST:  Bei Bestellvorschlaege entsteht keine Schutzverletzung mehr, wenn kein Forecastmodul vorhanden ist und die
                              alte Bestellvorschlagsmaske ohne Forecast-Schalter vorhanden ist.
                   PRNLIB2:   Beim Drucken in eine Windowsqueue wird jetzt keine temporaere Datei NOFILE.PRN mehr erzeugt.
          14.03.03 WINIFW:    Beim Beenden mit der Maus [x] oder Alt-F4 wird die korrekte Fensterposition korrekt bespeichert (bisher nur bei ALT-X oder Prgramm beenden).
                   FFPROD3:   In bestimmten Faellen konnte eine Fehlberechnung der Hirachiemengen bei hirachischer Produktionsanlage mit jeder Ebene in eine Produktion vorkommen.
                              Problem beseitigt.
      146 14.03.03 DFED2LIB:  Wird ein Datensatz mit Autoincrement auf Feld Nummer 32 neu gespeichert und ist die Nummer schon belegt,
                              so werden bis zu 3 Versuche unternommen, die naechst freie Nummer zu verwenden. Die Versuche
                              werden im Benutzerlogbuch mit der Meldung "New: autoincrement retry mc:%d '%s', cnt:%d" protokolliert.
                              Damit sollte eine evt. eintretende Nummerkollision beim Artikellagerlogbuch verhindert werden.
      147 17.03.03 PRGLOAD:   Kommando ImportFile erweitert: 
                              Modus 256
                                Die Datenbank wird im Modus "OnlineBuchen" beim Imports verarbeitet.
          18.03.03 DFIMP:     Eine neue Option beim Import:
                              [C32<%] -> damit wird das Feld C32 flexibel im CSV-Format eingelesen:
                              Beginnt die Quelle direkt mit einem "-Zeichen, wird bis zum Schliessendem "-Zeichen der Inhalt
                              in das Feld eingelesen. Es gelten darin keine weiteren Trennzeichen wie z.B. Zeilenumbruch, ";" oder ",".
                              Werden zwei aufeinaderfolgende "-Zeichen eingelesen, so werden sie in ein "-Zeichen umgewandelt und
                              der Inhalt bis zum schliessenden "-Zeichen weiter eingelesen.
                   WINIFW:    Bei den Tooltips auf ein Feld wird den Benutzern mit dem Status Druckvorlagensupervisor
                              die Feldnummer und falls vorhanden der Feldname angezeigt.
          19.03.03 DF.H       DFF_NODROP eingefuehrt. Damit lassen sich Datenbankobjekte schuetzen, so dass sie nicht zu Programmlaufzeiten aus dem Speicher entfernt werden.
                              Damit kann zum Beispiel die Jobliste geschuetzt werden, damit einmal selektierte, zu bearbeitende Jobs, waerend der Arbeit nicht desektiert werden.
                              Das Attribut wird bei "Geladene Masken" mit dem Kennzeichen P (Protected) angezeigt.
                              Es werden nur Dateiobjekte geschuetzt die als Root-Objekte geladen sind (Handle mit fuehrenden Nullen 00xx).
                   PRNLIB:    Neue Druckvorlagen Formatierungsoption:
                              [C32%] -> Gibt das Feld in CSV Format mit flexibler Laenge aus (das <-Zeichen ist nicht notwendig):
                                        Ist ein ;-Zeichen, Tabulator, Zeilenumbruch oder "-Zeichen enthalten, so wird der Inhalt
                                        Mit fuehrenden und schliessenden "-Zeichen versehen. Darin evt. Vorkommende "-Zeichen werden verdoppelt.
                                        Bei Fliesstexten werden die einschliessenden "-Zeichen immer ausgegeben, sobald der Fliesstext irgendwelchen Text enthaelt.
          20.03.03 MENU:      Bei Mausklick auf das Menu evt. auftretende falsche Fenster beseitigt.
                   PINBOARD:  Neue Uebersicht bei Nachrichten "meine Nachrichten Emailuebersicht" aktiviert.
      148 21.03.03 PRNLIB4:   Problem beim Drucken von Fliesstexten mit @x Formatierungskommandos beseitigt.
      149 25.03.03 FFPROD2:   Kennzeichen D im Artikelstamm aktiviert:
                              Bei alle Istwerte in Produktion eintragen, wird bei solche gekennzeichneten Materialien kein Istwert eingetragen.
                              Der Istwert muss per BDE-System oder per Hand eingetragen werden.
                   FFARTPR:   Werden Zwischenprodukte in Stuecklisten eingesetzt und sind die Zwischenprodukte mit einer PE versehen,
                              so wird die der EK in die Stueckliste der hoehren Ebene mit der falschen PE weitervererbt.
                              Folge: der Vorkalkulationswert wird zu hoch ausgewiesen.
                              Problem beseitigt.
      150 26.03.03 FFARTPR:   error -219 bei Online-Kalkulieren beseitigt
          28.03.03 FFAPOHY:   Beim Abschluss der Produktion und Pruefung der Freigabe von Bauteilen wird in den Meldungen
                              (z.B. "Der Bauteiletyp ist gesperrt! (Zurck)") die Position mit angegeben 
                              (z.B. "Pos xxx: Der Bauteiletyp ist gesperrt! (Zurck)").
      151 28.03.03 PINBOARD:  Bei mehreren eingehenden Nachrichten werden sie in einer Liste angezeigt (neu TMBASExx.MSK notwendig).
          02.04.03 PINBOARD:  Diverse err -44 bei der Nachrichtenverwaltung beseitigt.
      152 02.04.03 FFART:     Artikeltyp 'P' (wie M Maschinenzeit, nur keine Istwerteintragung) auf "ohne Lagermengenverwaltung" umgestellt.
      153 11.04.03 WINIFW:    Rechenlast bei Spaltensumme setzen beseitigt. 
                              Bei Hostbetrieb Endloschleife beim Spaltensummen-Setzen bei Verbindungsabbruch beseitigt.
                   WINIFW:    Beim Beenden einer ASP-Verbindung fuehrt der HOST ein Reset auf dem IP-Socked aus.
      154 14.04.03 FFAPOHY:   Beim Speichern von Artikellisten im Artikelstamm wird bei der Pruefung der Freigabe die Laufende Nummer
                              statt der Positionsnummer angezeigt. Durch Rev. 150 konnte in diesem Fall eine Fehlermeldung mit Schutzverletzung
                              ausgeloest werden.
                   TERMINPL:  Im Terminkalender kollision mit Nachrichtenbearbeitung beseitigt (wird beim Nachrichten
                              schreiben Strg-N der Terminkalender aufgerufen, gabs ein err -219 beim Speichern der Nachricht).
      155 15.04.03 COMSOCK:   Es ist jetzt moeglich beim Host eine Statistik der gesendeten und empfangenen Datenmenge in der Datei COMxxxx.log
                              mitschreiben zu lassen. Dazu muss am Host der Menuepunkt Ansicht|Verbindungsinformationen aktiv sein.
          16.04.03 COMCON:    Neue Variable in der Datei SERVER.INI fuer den ASP-Hostbetrieb:
                              ;SendLimitBytePerSec: Wert 0/64000. Default 0.
                              ;Limit zum Begrenzen der Daten die vom Host zum Client pro Sekunde gesendet werden in Bytes.
                              ;Mit dem Wert 0 ist die Begrenzung abgeschaltet.
                              ;Ein sinnvoller Wert ist z.B. 4000 (ca. 4K pro Sekunde).
                              ;Ein ISDN-Verbindung 64kBit hat maximal 8k pro Sekunde.
                              ;Wird insbesonderst bei Verbindungen mit begrenzter Bandbreite eingesetzt, wenn mehrere Sessions
                              ;gleichzeitig zugreifen und eine Mindestdurchsatz pro Session gewaehrleistet sein soll.
                              ;SendLimitBytePerSec=0
          17.04.03 COMSOCK:   get_milsec() auf DWORD umgestellt -> bei Rechnern mit langer laufzeit wurde keine Statistik mehr geschrieben.
      156 17.04.03 DFLIB2:    Beim Nachladen des Bearbeiters des Benutzers wird bei Mandantensystemen auf den Benutzerdatensatz des
                              Mandanten zugegriffen. Bisher wurde immer auf den Benutzereintrag des Hauptmandanten 000 zugegriffen (Email/Telefonnummernproblem).
                   FFARTBCH:  Falls bei einem Beleg das Kennzeichen A von Hand gesetzt wurde und ein Fehler beim Verbuchen auftritt, wird das A loescht.
                   BRECLIB:   Eine Ueberwachung beim Speichern eines Datensatzes aktiviert: 
                              Ist die gesamte Datensatzlaenge (mit flexiblem Teil) groesser als die Maximale Datensatzlaenge, wir der Fehler
                              -254 ausgegeben.
                   MEMPRM:    Beim bestimmen der Memoryheader der flexiblen Speicherbloecke get_memsize() wurde eine zusaetzliche Sicherheitsvorkehrung
                              aktiviert: Ist bei einem Fliesstext der Inhalt groesser angegeben als die maximale Kapazitaet, wird der Inhalt auf
                              die maximal moegliche Groesse begrenzt (bisher konnte Error -22 beim Lesen auftreten).
          24.04.03 BDEPORT:   Beim BDE die Wiederholversuche von unsigned char auf short umgestellt.
      157 28.04.03 FFKDSTAT:  Korrekturen an der Auftragsnachkalkulation vorgenommen:
                              -Bestehende Nachkalkulationsmasken werden auf jeden Fall neu geschrieben
                              -Bestehende Istwerte werden auf jeden Fall korriert (geloescht falls kein Wert gefunden wird)
                              -Vorgabewerte aus der vorherigen Maske werden bei Neuanlage geloescht
                              -Kostenstellennummern die sich nur in Gross- und Kleinschreibung unterscheiden, fuehren nicht zu mehrfacheintraegen (stracscmp)
          29.04.03 COMSOCK:   Diverse Zeitstempel (Ping/Onlinezeit) in der IP Kommunikation von long auf DWORD umgestellt. Dadurch sollte bei langer Laufzeit
                              eines Rechners (>24 Tage) ein Ueberlauf der Millisekunden korrekt verwaltet werden.
      158 07.05.03 FFPPS3:    Bei der Berechnung der Fertigungstellenkapazitaet pro Tag in der Planungstafel Feiertage in einer Woche
                              beruecksichtigt. Die Kapazitaetsvorgabe in der Fertigungstelle muss korrekt vorgegeben werden! Dabei
                              werden Feiertage automatisch beruecksichtigt.
                   FFPPS31:   Bei der Kapazitaetsvorgabe im PPS-System wird jetzt der Tageszeitraum und die Feiertage automatisch beruecksichtigt.
                              Die Angegebene anzahl Resourcen wird auf Tageskapaziatet umgerechnet (/5Tage) und dann Tagesgenau in die Wochenkapazitaet
                              der Fertigungstelle eingebucht.
                   WINIFW:    In der Aboutbox wird die Zeit seit wann der Rechner eingeschaltet ist angezeigt.
          08.05.03 FFPPS3:    Ist die PPS Planung bereits aktiv, kann sie waerend der Planung nicht nocheinmal (z.B. Alt-F8 auf den Fertigungstellen) aufgerufen werden.
      159 20.05.03 FFPROD2:   Die Lagermaterialpruefung in der Produktion ist jetzt auch ohne Artikeldispomodul verfuegbar.
      160 22.05.03 DFIMP:     Sonderzeichen (>127) werden beim Import als Suchstring korrekt erkannt.
                              Die Importoption ',' eingebaut:
                                Damit werden ',' beim Import von Zahlen geloescht. Somit koennen Zahlenformate mit . als Dezimaltrenner und , als Tasuenderformatiereung
                                eingelesen werden.
      161 02.06.03 FAKTMAIN:  Der Menuepunkt "Auftrag Tagesgeschaeft" wandelt jetzt bei aktivem Produktionsteil ebenfalls den auftrag in einen Lieferschein um. Er
                              verarbeitet dabei KEINE Variantenproduktionen. Der Menuepunkt darf nur in Verbindung mit Auftraegen ohne zugehoeriger Variantenproduktion
                              eingesetzt werden!
          05.06.03 DFED3LIB:  Vererbung der Datenbankrechte in Untermasken korrigiert.
      162 16.06.03 PRNLIB:    Neues Druckvorlagenkommando InsertFile:
                              @#InsertFile ""; Dateiinhalt binaer ausdrucken.
                                               Damit laesst sich z.B. ein binaerer Druckerstrom
                                               (z.B. eines Bildes) beim IFW-Druck direkt zum Drucker senden.
      163 17.06.03 TOBITFW:   Maximale Verarbeitungsgroesse von Emailbestellungen von 5kB auf 50kB erweitert.
      164 27.06.03 WWW:       Der WWW-Client kann beim Ausdruck lokal Dateien mit ???? verwalten und speichern. Dabei wird zuerst eine
                              Temporaere Datei mit Endeung NAME.$io erstellt und zum Schluss umbenannt. Sollte der Ausdruck abegbrochen oder der Client beendet
                              werden. wird die Datei geloescht.
                   WWW:       Der ASP-Host hat jetzt eine resetfeste Printerspoolerverwaltung zum Client. Zu den Jobeintraegen (*.prn Dateien im TEMPDAT) werden
                              jetzt *.prd Dateien mit Informationen zum Printjob gespeichert. Logt sich der Benutzer aus, wird ein aktiver Job der gereade 
                              uebertragen wird abgebrochen. Auf der Hostseite bleiben die Daten erhalten. Loggt sich ein Benutzer wieder ein werden alle *.prd Jobs 
                              des Benutzers aus dem TEMPDAT eingelesen und automatisch mit der Uebertragung begonnen.
                              Damit ist es moeglich Daten auch bei Unterbrechung sicher ueber den WWW-Client zu uebertragen.
          02.07.03 FFFIBU21:  Bei Sammelausbuchung von OPs pder VBs wird eine Kostenstellenangabe mitkopiert (Hinweis: Sie hat bei Bezahlungen keine Auswirkung).
      165 09.07.03 PINBOARD:  Kollision zwischen Terminkalender Nachricht schreiben und Empfang einer Nachricht beseitigt.
                   DFIMP:     Beim Import koennen jetzt Dateinamen mit 4-stelligen Nummern-Platzhalter ???? eingelesen werden.
          11.07.03 STDPRJ:    Beim Relogin mittels WWW-Client wird jetzt bei Mandantensystemen das korrekte TEMPDAT-Verzeichnis fuer den Printspooler gescannt.
                   FFEINK:    Modul erweiterterte Linestopperverwaltung aktiviert:
                              - Wird ein Linestopper gespeichert, traegt er seine Nummer in der Bestellposition ein.
                              - Wird eine Bestellposition gespeichert, wird im Linestopper die Bestellpositionsnummer nachgetragen
                                (geht nur bei vorhandenem Produktionsmodul mit Fremdleistungsfeldern im Produktionsschein).
      166 16.07.03 DFLIB:     Wird im Browser ein nachgeladenes Feld angezeigt, so ist es jetzt auch moeglich auf Felder aus Datensaetze 
                              dir mit einem Doppelfilter (z.B. Beleg/Positionslink) hinterlegt sind zuzugreifen. Bisher wurde in diesem Fall
                              immer die erste Position des Belegs dargestellt.
      167 17.07.03 DFLIB:     Wird im Browser ein nachgeladenes Feld angezeigt und kein Datensatz vorhanden,
                              wurde eine Fehler -4 Meldung ausgegeben. Meldung unterbunden.
      168 21.07.03 BRECLIB:   Indexpfade von 16 auf 32 erhoeht
                              KEYSPEC von 24 auf 54 erhoeht
                              Leere Indexpfade mit Feldnummer 255 an erster Stelle aktiviert
                              Stammdatenarchivflag und Feld aktiviert.
          22.07.03            Folgende Dateien sind nicht mehr nach ARCHIV archivierbar:
                              -SachNummern
                              -erweiterte Artikelpreis 
                              -Artikeldokumentation 
                              -Artikeltexte
                              -Ersatzartikel
                              -QM-Anweisung
                              -Fehlerdatenbank
                              -Bestellliste
          23.07.03            -Bei Archivdatenbank aufrufen sind jetzt nicht archivierbare Dateien gesperrt.
                              -Wird eine Stammdatenarchivdatenbank aufgerufen, so wird automatisch die Datenbank im BASISDAT verzweigt.
                              -Der Archivzugriff unterliegt folgenden Regeln:
                               Tabelle: von Stamm wird ein StammLink aufgerufen -> Ziel liegt im Stamm
                                     von | StammOhne | StammMit | StammArch | Beleg | BelegArch
                               ----------------------------------------------------------------
                               StammLink | Stamm     | Stamm    | StammArch | Stamm | StammArch
                               BelegLink | Beleg     | Beleg    | Beleg     | Beleg | BelegArch
                              -Beim Loeschen wird jetzt auch bei einem Datensatz gefragt "Datensatz loeschen"
                              -Mit Archiv wird statt geloescht archiviert.
                   FAKTMAIN:  Neue INI-Schalter "LoeschenArchiviert" in der Sektion System
                              ;LoeschenArchiviert: Wert 0/1, Default 1.
                              ;Mit dem IFW-Modul Archiv und Stammdatenarchiv wird beim loeschen eines Datensatzes satt dessen der
                              ;Datensatz in das Archiv verschoben. Will man ihn entgueltig loeschen, so muss man das Archiv ueber
                              ;den Menuepunkt Archivdatenbank aufrufen oeffnen und dort im Archiv loeschen.
                              ;Mit dem Schalter LoeschenArchiviert=0 kann man die Archivierung beim Loeschen abschalten. In diesem 
                              ;Fall werden die Datensaetze beim Loeschen immer sofort geloescht.
                              ;LoeschenArchiviert=1
                   DFPRN:     Wird ueber ein Drucker in der Druckerliste ausgedruckt, so wird er rearchiviert, falls er im Archiv war.
                   DFFNC:     Loggt sich ein Benutzer ein oder aus, so wird sein Eintrag in der Verbindungliste rearchiviert, falls er im Archiv war.
                   FFART:     Ein Artikel laesst sich nur archivieren, wenn die Bestands und Bedarfsfelder auf 0 stehen. Wird er durch eine
                              Belegbuchung aktiviert, so wird er Rearchiviert mit dem kennzeichen '/'. Solch ein Eintrag wird bei
                              manueller Speicherung durch ein Benutzer geprueft, und automatisch dadurch alle abhaengigen Listen rearchiviert.
                              Abhaengige Listen sind z.B. Artikelliste, Artikeldokumentenverweis, Sachnummer, erw. Preise, Ersatzartikel.
                   FFRECH:    Ein Kunde laesst sich nur archivieren, wenn das Guthaben oder der Forderungsstand so wie ggf. vorhanderner Auftragsbestand 0 ist.
                   FFEINK:    Ein Lieferant laesst sich nur archivieren, wenn das Guthaben oder der Verbindlichkeitenstand so wie ggf. vorhandernes Obligo 0 ist.
                   DFLIB:     Neuer Zugriffstyp MAI_TYPE_EXTDF_AKTIV. Ist wie MAI_TYPE_EXTDF_SHOW, nur wird er beim Datensatz kopieren/loeschen/archivieren mitverwaltet.
                              Z.B. kann damit im Artikelstamm unter "Texte>" abgelegte Artikeltexte beim Artikelbearbeiten automatisch mitverwaltet werden.
          24.07.03 PRGLOAD:   AppendBrowseItem kann jetzt auch Spalten mit gleicher Feldnummer mehrfach aufnehmen.
                   DFLIB:     In der Uebersicht koennen jetzt auch Zeilen aus Fliesstexten eingeblendet werden. In den Zusatzdaten steht die einzublendende Zeile.
                   DFED3LIB:  Unter WINIFW wird beim Archivaufruf versucht das Fenster leicht nach unten versetzt zu oeffnen.
                   DFEDLIB:   Wird mit F1 eine Liste abgerufen und in der Liste das Archiv mit Strg-F7 aufgerufen, wird immer versucht der Datensatz
                              mit dem Suchbegriff des F1-Aufrufes zu finden.
                              Ist Suchbergriff vorhanden, wird versucht die naechst aehnliche Position im Archiv aufzurufen.
                   PRGLOAD:   Bei ViewMessage() kann der Programmlauf mit ESC abgebrochen werden, wenn zuvor mit SetAbort() ein Ziel gesetzt wurde.
                   PRGLOAD:   Neues Makrokommando:
                              RefreshDekstop( Usernummer, Modus);
                              Sendet an einen Benutzer ein Refreshsignal fuer seine Nachrichten.
                              - Die Usernummer kann auch eine [V Variable sein
                              - Mit der Usernummer <0 wird automatisch an sich selbst ein Signag geschickt
                              - Mit Modus==0 werden Nachrichten aktiv angezeigt.
                              - Mit Modus==1 werden Nachrichten nur aktuallisiert aber nur im Hintergrund gerichtet.
                   PRGLOAD:   Neues Makrokommando:
                              SetSysPrgCallMode( Modus);
                              Damit laesst sich steuern in welcher Reihenfolge die Systemprogramme im Verzeichnis SysPrg
                              und die Programme aus dem Verzeichnis Programm aufgerufen werden. Waerend des Aufrufs
                              wird in beiden Verseichnissen nach dem aufzurufenden Programmname gesucht:
                              - Modus 0: Erst das Programm aus dem Verzeichnis Programm dann aus SysPrg (standard)
                              - Modus 1: Erst das Programm aus dem Verzeichnis SysPrg dann aus Programm
                              - Modus 2: Nur das Programm aus dem Verzeichnis Programm, SysPrg deaktiviert
                   DFEDLIB:   Besitzt eine Datenbank ein Archiv und wird ein Datensatz geloescht, so wird der Datensatz ins das Archiv verschoben.
                              -Ist ein Kennzeichenfeld vorhanden und das Feld nicht voll, erhaelt er das Kennzeichen '.'.
                              -Ein Benutzer kann das Flag '/' erhalten. Damit loescht er immer die Datensaetze direkt.
                              -Mit dem Systemschalter "LoeschenArchiviert" in der Datei FAKT.INI werden Datensaetze immer direkt geloescht.
                   PINBOARD:  Werden Nachrichten importiert, wird nicht mehr die Frage nach Versand an Benutzer xxx gestellt.
          25.07.03 FAKTPRJ:   Sind keine Datums und MwSt-Felder auf der Maske wird defaultmaessig der aktuelle MWSTA-Satz benutzt.
                   PINBOARD:  Beim Speichern von Nachricht zu Jobs wird jetzt im Job im Feld Auftraggeber der Absender der Nachricht 
                              eingetragen, falls im Feld Absender jemand eingetragen ist. Ansonsten der Besitzer.
                   FFLAGER:   Es ist jetzt kein externes Lager mehr loeschbar, wenn es nicht leer ist (keine Positionen drin).
                   DFEDLIB:   Mit Der Taste Strg-Del im Archiv mit Loeschrechten kann der Papierkorb geleert werden (Datensaetze mit einem '.' im Vermerkfeld).
          28.07.03 DFEDLIB:   -Im Archiv werden Datensaetze im Papierkorb mit einem P angezeigt.
                               Die Symbole haben folgende Bedeutung:
                                 - aktiver Datensatz
                               a - Archiviert
                               P - geloescht im Papierkorb, mit Strg-Entf leeren
                               / - automatisch vom System rearchivierter Satz. Wird er mit F2 manuell gespeichert, werden
                                   alle anhaengigen Datensaetze ebenfalls rearchiviert.
                              -Auch das 2-Dateienarchiv verfuegt ueber die Spalte "a" oder "P"
                              -Hat man Loeschrechte und Archivaufrufrechte, so darf man im Archiv (Strg-F7) den Papierkorb leeren.
      169 29.07.03 DFPRN:     Wird mit einem Makro mit dem Kommando PrintFile oder PrintFileID gedruckt und der Modus 16
                              (Drucke nur wenn Saetze selektiert sind) angegeben, dann wird kein leerer Eintrag in einer Druckqueue erzeugt.
          01.08.03 IFWC:      Der Windowstexteditor laesst sich jetzt auch mit noch nicht existierenden Dateien oeffnen.
                              Die Druckvorlagen-Testfunktion im Editor mit der Taste F2 speichert die Vorlage nur noch falls sie veraendert wurde.
                   FFKDSTAT:  Die Funktion kundenspezifische Artikestatistik erweitert: Es laesst sich jetzt die Zeile 1 und die Zeile 2 ueber
                              zusaetzliche Menuepunkte unabhaengig vom aktuellen Statistikjahr berechnen.
                   FFPROD2:   Die Produktionspruefung auf Lagermengen erweitert: Es werden jetzt die Produzierten Unterbaugruppen bei der Pruefung
                              mitberuecksichtigt. D.h. wird die benoetigte Unterbaugruppe (M/K Positione) bereits produziert und ist der Produktionsauftrag
                              bei der Pruefung mitselektiert, wird die produzierte Menge beruecksichtigt und das Halfertigerzeugnis als nicht fehlend erkannt.
          04.08.03 Edit_win:  Der Startfont fuer W2K Rechner korrigiert. Damit funktioniert +/- im Editor korrekt.
                   STDPRJ_:   Wird eine Externe Kartei ausserhalb des EXTDAT Verzeichnisses aufgerufen, dann werden die F4 oder F10 Dateien (_i,_m,_t) immer aus
                              dem INFODAT-Verzeichnis aufgerufe. Liegt die Datei im EXTDAT-Verzeichnis, so wird geprueft ob dort bereits die Info-Datei
                              besteht. Existiert sie dort schon, wird sie von dort aufgerufen. Wenn nicht wird sie im INFODAT-Verzeichnis erstellt.
                   DFPRN:     Beim Ausdrucken wird jetzt ein Logbucheintrag "Prn: Dateiname Vorlage Ziel" geschrieben.
                   PRGLOAD:   Neues Makrokommando:
                              SetFileExtern( Dateiname, Index1);
                              SetFileExtern( Dateiname, Index1, Index2);
                              Damit wird eine externe Datei geoeffnet. Als Dateiname kann ein beliebieger Pfad angegeben werden. An der angegebenen
                              Stelle muss eine .MSU Datei bestehen. Die Erweiterung .MSU darf nicht mit angegeben werden. Die Datei muss ein
                              Suchpfad mit Feldnummer Index1 besitzen. Die Angabe eines zweiten Sortierkriteriums Index2 ist optional.
                              Ist der Name der Datei ein Name aus dem BASISDAT-Verzeichnis, so wird die der Basisdatei innewohnende Funktion zugeordnet
                              (z.B. bekommt die Datei ARTIKL die Rechenfunktionen der Datei ARTIKL aus dem BASISDAT-Verzeichnis). Zugriffe aus der
                              so geoeffneten Datei fuehren zu Dateien die im gleichen Verzeichnispfad liegen, der angegeben wurde.
                              Dieses Kommando ist zur Ausgabe von Datein aus Dateien, z.B. aus einem anderen Mandant, vorgesehen.
                              ACHTUNG: Werden Dateien aus einem anderem Mandanten aufgerufen, duerfen keine verarbeitenden Funktionen (Import) verwendet
                              werden, wenn diese Funktionen Online-Buchungen zur Folge haben!
                   IFWC:      Wird eine nicht exsistierende Datei beim Windowseditor gespeichert, verstellt sich der aktuelle IFW-Pfad nicht mehr.
      170 05.08.03 FFFIRUMS:  Beim Monatsabschluss wird die Lagermenge und der Lagerwert in der Artikelstatistik und der Lagerwert in
                              der Warengruppenstatistik in den Monat des Bis-Datums gespeichert. Die Monate vom Von-Datum bis ein Monat vor dem Bis-Datum
                              bleiben unveraendert. Bisher wurde der Zeitraum auf 0 gesetzt. Dadurch gingen bisher bei Ruecksetzung des Statistikdatums evt.
                              vorhandene Lagermengen und Werte in den Monaten vom Von-Datum bis ein Monat vor dem Bis-Datum verloren.
          08.08.03 FFPROD2:   Bei  Produktion fertig melden wird jetzt das Makroprogramm
                              BauZet.$68 aktiviert. Bei einem Rueckgabewert !=0 (End()) erfolgt keine Speicherung.
                   POPUPMNU:  Mit dem Flag ~ beim User, wird in seinem Logbuch das Aufrufen von Systemprogrammen mit "Prg:" Eintraegen protokolliert.
      171 25.08.03 FFBELPRU:  Bei elektronischer Auftragsannahme wird jetzt auch eine abweichende Rechnungsadressnummer ueber ILN-Code unterstuetzt.
      172 29.08.03 BRECLIB:   open_record() erweitert: Tritt der Fehler -85 BE_RECPAGELOCKED beim Oeffnen auf, so wird 10 mal alle 0,5 Sekunden versucht die
                              Datei erneut zu oeffnen. Es wird in diesem Fall der Eintrag "Btr: retry open xxx err:-84" in das Benutzerlogbuch geschrieben.
                   DFEDLIB:   Fehlerhalfte Meldung "-858993460 Datens„tze durften nicht archiviert werden. (Weiter)" bei Versuch einen Eintrag in einer 
                              Datenbank ohne Archivfunktion zu archivieren beseitigt.
          01.09.03 WINIFW:    Listenfunktion auf virtuellen Text umgestellt. Somit sind groessere Datenmengen in der Liste verarbeitbar.
                   DFPRN:     Beim Ausdruck eines Ausgabeformulars mit dem Kommando PrintFile kommt die Meldung
                              "Ausgabeformular xxx nicht gefunden" falls es nicht vorhanden ist.
      173 02.09.03 FAKTMAIN:  Evt. eingegebene Slashs im FaxLogPfad werden beim Laden in Backslashs umgewandelt.
                   FAKTMAIN:  Neue Schalter in der FAKT.INI "EmailSpamFilter" in der Sktion [System]
                              ;EmailSpamFilter: Wert Beispiel "SPAM: ". Default "".
                              ;Mit dem IFW-Modul "Buerokommunikation-Terminkalender" koennen Emails automatisch eingelesen
                              ;werden. Wird hier eine Textfolge hinterlegt, so wird in der Betreffzeile nach dieser
                              ;Textzeile gesucht. Sollte sie gefunden werden, dann wird die Email nicht eingelesen.
                              ;EmailSpamFilter=""
          04.09.03 MASKE:     Um die Rechte in der Benutzerliste zu veraendern braucht man jetzt Supervisorlevel und muss mit Strg-F3 das Feld frei schalten.
          08.09.03 DFED2LIB:  Beim Kopieren eines Artikel (ohne Artikeltext) kommt keine -4 Fehlermeldung mehr.
                              Beim Speichern einer doppelten Artikelnummer mit Stammdatenarchiv wird die Artikelnummer nicht mehr doppelt angezeigt.
          09.09.03 DFLIB:     Fehler -4 beim Loeschen eines Artikels beseitigt.
                   FFPRD3:    Fehler bei der Erkennung von verfuegbaren Lagerbestaenden bei der hirachischen Produktionsaufloesung beseitigt.
          15.09.03 PRGLOAD:   Die Makrokommandos SetFile() und SetFileToArchiv() fuer das Stammdatenarchiv angepasst.
          16.09.03 FAKTMAIN:  Beim IFW-Personalmodul wird beim Loeschen in der buchungsaktiven Stundenerfassung kein Papierkorb mehr verwendet.
                   PRGLOAD:   Das Kommando AddMultiFileFilter und AddMultiFileFilterArchiv uebergeht Aufrufe der Produktionen automatisch, falls kein Produktionsmodul
                              im IFW installiert ist.
          19.09.03 POPUPMNU:  Schutzverletzung bei neuen Nachrichten und aktivem Programmaufrufslogbuch (Kennzeichen ~ beim Benutzer) waerend des Starts vom IFW beseitigt.
      174 22.09.03 FFARTBCH:  Beim Verbuchen eines Beleges wird jetzt zusaetzlich geprueft ob bei aktivem TTS-System ein Btrieve IO Error (-2) auftritt.
                              Tritt der Fall ein, so wird wie bei einem DeadLock-Error der Buchungsvorgang wiederholt. Logbucheintrag "TTS: io-error detected, beleg_materialbuchen() retry cnt:%d err:%d".
                              Gelingt trotz mehrfacher Versuche den Beleg zu verbuchen, wird zusaetzlich die Meldung
                              Unrecoverable io-error on beleg_materialbuchen() (%d try) ausgegeben.
                   FAKTEDIT:  Beim Speichern eines Beleges wird ebenfalls der Speichervorgang beim Btrievefehler deadlock, conflict und io-error vorgenommen.
                              Bei Wiederholungsversuche werden die Meldungen
                               "TTS: io-error detected, edit_datazwsp_speichern() retry cnt:%d err:%d"
                               "TTS: conflict detected, edit_datazwsp_speichern() retry cnt:%d err:%d"
                               "TTS: deadlock detected, edit_datazwsp_speichern() retry cnt:%d err:%d"
                              in das Benutzerlogbuch geschrieben.
                              Im Fehlerfall wird eine der Meldungen
                               "Unrecoverable io-error on edit_datazwsp_speichern() (%d try)"
                               "Unrecoverable deadlock on edit_datazwsp_speichern() (%d try)"
                               "Unrecoverable conflict on edit_datazwsp_speichern() (%d try)"
                              ausgegeben.
          24.09.03 DFPRN:     Ausdruck von mehr als 32000 selektierten Datensaetze korrigiert.
          29.09.03 FFBELPRU:  Das Makro wegpos.$09 bei der Wareneingangsmeldung "Ware zu Auftrag ist eingetroffen" wird jetzt auch bei Meldeusern in Bestellungen oder
                              Bestellpositionen aufgerufem (bisher nur bei Meldeuser nur im Auftrag).
                   PRNLIB5:   Die maximale Textgroesse beim Zahlenarray Vn beim Drucken auf 4k erhoeht. Die Maximale Groesse eine Arrayeintrags auf 4k erhoeht (ca. Dim 500).
      175 29.09.03 MEMPRM:    Zahlenarrays koennen jetzt auch im flexiblen Speicherbreich gespeichert werden.
          30.09.03 PRGLOAD:   Neue Option beim Makrokommando EditFile():
                              Modus 64: Beim Loeschen (Modus 2) wird nicht in den Papierkorb geloescht, sondern direkt.
                   DFEDLIB:   Loeschen von Eintraegen im Papierkorb auch bei ausgeschalteter Schnellsuche (FAKT.INI NoFastSearch=1) ermoeglicht.
                   FAKTPRJ:   Papierkorbfunktion bei Datenbaenke fuer Listen und Stapelverarbeitung (z.B. BDELog) abgeschaltet.
          01.10.03 DFLIB:     Schutzverletzung beim Beenden des IFWs in Verbindung mit der Mandantensysnchronisieren beseitigt.
                   WINIFW:    Windows-Listendarstellung fuer selektierte Eintraege aktiviert. Mit ALT-F10 aufrufbar und mit Fensterbutton.
          07.10.03 FAKTMAIN:  Modulschalter FAKT_PRODINFO aktiviert
                   DFED3LIB:  Feldfunktion MAI_TYPE_EXTDF_EXTEDIT eingebaut.
                              damit laesst sich eine Untermaske aus einer anderen Datenbank Editieren und Speichern. Das Feld enthaelt dabei einen Verweis
                              auf ein Feld mit dem Zugriff auf den Datensatz und Datenbank der Untermaske.
      176 10.10.03 WINLIB:    Bei Fliesstextfeldern wird die Eingabfokusposition beim Verlassen des Felds nach oben/unten korrekter berechnet.
                   FAKTFNC:   Mandantensysnchronisierung erweitert:
                              Mit drei neuen Feldern in der Synchronisierdefinition, koennen jetzt einzelne Dateien gezielt ausserhalb einer
                              Synchronisiergruppe zwischen einzelnen Mandanten abgegelichen werden.
                              Voraussetzung:
                              Die Mandanten muessen mit anderen Dateien schon in einer Synchronisationsgruppe sein.
                              Die Eintraege muessen der Synchronisationsgruppe 999 zugeordnet sein.
                              Somit lassen sich einzelne Mandanten aus der Gruppe von bestimmten Dateien ausschliessen.
                   FAKTPRJ:   Papierkorbfunktion bei Projekten abgeschaltet
                   DFNUMCHG:  -Es koennen jetzt Artikelnummern auch in Nummern mit Fragezeichen als Joker umgewandelt werden. Damit ist z.B. es moeglich 
                               Bei einer ganzen Menge selektierter Artikel die erste Ziffer von einer 9 auf eine 7 zu aendern.
                              -Zumsammenfuehren deaktiviert
                              -Beim Uebergeben in der Quelle die Lagermenge auf 0 gesetzt.
          13.10.03 PRGLOAD:   PPSCalcTime rearchiviert automatisch einen Zeiteintrag aus der Artikelliste, falls er im Papierkorb ist.
                   DFLIB:     Beim Drucken von Stuecklisten beim vorhandenen Stammdatenarchiv werden archivierte Eintraege nicht mehr beruecksichtigt.
                              set_listroot vererbt beim Stammdatenarchiv den Modus der Ausgangsdatei an seine abgeleitete Datei.
      177 16.10.03 WINIFW:    Erweiterung der Listendarstellung um die Moeglichkeit von Fliesstexten.
                   DFEDLIB:   Wird im Artikelstamm mit Stammdatenarchiv eine Artikelnummer eingegeben, wird bei genau eingegebener Nummer kein Signalton mehr erzeugt.
                   DFLIB2:    Bei vorhandenem Stammdatenarchiv und Mandantensyschronisierung, wird bei einer Neuanlage eines Artikels immer das Archivierungsmerkmal mit
                              in die synchronisierten Datenbaenke uebertragen, unabhaengig ob die Feldnummer im Synchronisierungkeis eingetragen ist oder nicht.
                              Somit erscheinen z.B. neu angelegte Artikel bei den Mandanten im aktiven Stamm und nicht im Archiv.
          17.10.03 DFED2LIB:  Bei Auswahl mit F1 kann jetzt in der Uebersicht auch gedruckt werden.
          20.10.03 DFNUMCHG:  Die Nummeraenderungsroutine kann jetzt auch durch einen linearen Suchlauf Felder aendern.
                              Das Kommando NumChange kann jetzt mit einem Parameter aufgerufen werden:
                              0 Artikelnummer, 1 Kundennummer, 2 Lieferantennummer aendern
                   DFED3LIB:  Beim Archivieren wird nur noch das erste Autoincrement Feld auf nicht archivierbaren letzten Eintrag geprueft.
                              Bisher war es das letzte in der Maske (Bei AfoLst wurde auf letzte BstNr und nicht auf letzte lfdNr. geprueft).
      178 22.10.03 FFAPOHY:   In der Freigabeliste wird eine eingetragene Artikelnummer angezeigt, auch wenn sie nicht im Artikelstamm enthalten ist.
          23.10.03 FFAPOHY:   Ist in der 8. Position der freigegebenen Artikel ein Eintrag vorhanden, so MUSS dieser Artikel verwendet werden
                   DFLIB:     Meldung "Warnung: drop_df 'BASISDAT.002\Artikl.rec' usecnt auf -1 gesetzt" in Verbindung mit der Mandantensysnchronisieren beseitigt.
                              Verwaltung der Reservierung internen Datenbankresourcen beim Aufruf eines Archivs ueber das Menue korrigiert.
                   PRNLIB:    Druckvorlagenkommando [Vx:dxDatum] eingebaut.
                              Es liefert in Vx den Index des Intervalls des Dispostrahl zurueck, der einen Dispobestand groesser als der
                              Wert in Vx enthaelt. Es wird ab dem Intervall des Datums begonnen zu suchen
          27.10.03 DFPRN:
                   DFLIB:     Anpassung der Ausgabe von Listen beim Drucken, wenn teile der Daten im Stammdatenarchiv sind.
      179 28.10.03 PRNLIB:    Neues Druckvorlagenkommando @x;
                              Damit laesst sich eine Druckvorlage unmittelbar beenden
                              Neues Druckvorlagenkommando [Vx;iText], [Vtx;iText] 
                              Damit laesst sich ein Requester mit dem Inhalt Text oeffnen. Als
                              Rueckgabewert wird der Ascii-Code der gedrueckten Taste in die Variable geschrieben.
                              Bei einer Buchstabentaste wird immer der Ascii-Code des Grossbuchstabe verwendet.
      180 30.10.03 FFARTPR:   Bei hinterlegten Sonderpreisvereinbarungen werden bei der Belegbearbeitung nur noch Vereinbarungen aus der aktiven
                              Preisliste verwendet. Eintraege im Stammdatenarchiv bleiben unberuecksichtigt.
      181 03.11.03 FFBELPRU:  Die Verarbeitung der Meldungen bei Wareneingaenge in Verbindung mit dem Systemmakro wegpos.$09 korrigiert.
                              1. Das Programm muss ein Wert groesser 0 zurueckliefern, damit die Meldung erzeugt wird.
                              2. Auch ohne Text in Vt wird die Meldung erzeugt, wenn der Rueckgabewert groesser 0 ist.
      182 06.11.03 FFBELPRU:  Fehler bei der Breitenangabe der Wareneingangsmeldung an den Meldeuser beseitigt.
      183 12.11.03 DFIMP:     Fehler beim Import von Dateiangaben mit den Platzhaltern ??? und ???? beseitigt. Die Dateien wurden nicht erkannt.
                              Seit Rev. 165 vom 09.07.03 konnten so keine Dateien mit 3 Fragezeichen als Platzhalter mehr eingelesen werden.
                   PINBOARD:  Schedulermakrobearbeitung erweitert:
                              Sollte bei der Verarbeitung eines Makros ein Fehler beim Speichern des fortgeschriebenen Schedulerevents auftreten,
                              dann wird automatisch der Event nochmal nach einer Minute ausgefuehrt.
                              Dadurch wird verhindert, dass der Schedulerprozess bei solch einem Fehler sich komplett abschaltet.
                              Es wird die Meldung "TMB: scheduler retry ... at ... ..." ausgegeben.
                   PINBOARD:  Mit Ausfuehrung eines Schedulerevents wird das System dauerhaft auf automatisches Schliessen von Fehlermeldungen umgeschaltet.
                              Waehrend der Ausfuehrung des Makros betraegt die Zeit eine Sekunde. Ausserhalb der Makroasufuehrung betraegt die Zeit
                              die Vorgabe des Wertes "RequestTimeOut" aus der FAKT.INI, typisch 20 Sekunden.
                              Mit der Funktion "Deskeinstellung zuruecksetzen" wird die automatische Schliessung wieder abgeschaltet.
                   STDPRJ:    Die Funktion "Deskeinstellung zuruecksetzen" gibt jetzt eine Meldung zur Bestaetigung aus.
          20.11.03 DFEDLIB:   Wird eine Konflikt-Fehlermeldung waehrend eines Buchungslaufs unterdureckt, wird im Logbuch das Zeichen '-' vor die Meldung geschrieben,
                              als Sysmbol, dass es dem Benutzer nicht angezeigt wurde und automatisch durch mehrmaliges Versuchen korrigiert wurde.
                   FFARTBCH:  Beim Verbuchen eines Belegs wird bei einem Konflikt mehrere Versuche unternommen, den Beleg zu buchen (maximal 5). Zwischen den
                              Versuchen wird jetzt zusaetzlich eine Wartezeit von einer Sekunde vorgenommen.
          24.11.03 COMSOCK:   Bei IP-Verbindungen ueber IpSocket wird der Sende- und Empfangspuffer bei Verbindungsaufbau geloescht.
          25.11.03 FFPROD2:   Bei Fertigmeldung von Produktionen einen Endlosschleife beim Beenden des IFWs waehrend der Meldung "Sollwert von Position..." beseitigt.
                   FFLAGBCH   Lagerbuchungen sind jetzt mit einem TTS-Lauf gekapselt.
                   COMCON:    Verwaltung der Printerspoolerdateien ueber den ASP-Client beim Abriss einer Verbindung optimiert. Die Dateien sollten jetzt nicht mehr
                              offen zurueck bleiben.
      184 26.11.03 IGGLIB:    Beim Beenden eines IFW-Prozesses wird ein evt. laufender Listendruck sofort abgebrochen.
                              Produktionspruefungen werden auch sofort abgebrochen.
                              Selektieren bis Dateiende (shift-end) ist abbrechbar.
                   PRNLIB3:   Neue Druckvorlagenkommandos mit der Vn Variable:
                              [Vn(-3)] Anzahl Spalten
                              [Vn(-4)] Maximallaenge des Textes
                              [Vn(-5)] Aktueller Fokus (Zeilennummer)
                              [Vn(-6)] Groesse einer Zeile in Byte
                   PINBOARD:  Error -44 beim Erscheinen einer Nachricht bei gleichzeitiger Bearbeitung einer Nachricht beseitigt.
                              Moegliche Ursache fuer Error -219 beim Schreiben einer Nachricht und gleichzeitigem Empfang eine Hintergrundnachricht beseitigt.
          28.11.03 FFPROD:    Variantenproduktionen koennen jetzt auch externe Arbeitgaenge enthalten (E-Positionen).
                   DFEDLIB:   Sind Eintraege selektiert, kann man auch drucken wenn man auf der Zeile "NEU EINGEBEN" steht.
          01.12.03 VIDF:      Laengenangabe korrigiert, war um eins zu lang.
                   PRGLOAD:   AppendBrowseItem erkennt jetzt Spalten mit mehrfach gleicher Feldnummer korrekt.
                   VIDF:      ALT-F10 Funktion erweitert: Jetzt koennen auch nachgeladene Spalten aus anderen Masken sichtbar gemacht werden.
                   FFPROD3:   Bei Aufloesung eines Artikels mit Unterbaugruppen bei der Produktionsanlage in je eine Produktion kann jetzt auch
                              der verfuegbare Lagerbestand beruecksichtigt werden.
                   FAKTINI:   Zwei neue Schalter in der Fakt.ini:
                              ;ProdVlgPruefenAlleInEineProduktion; Wert 0/1. Default 1
                              ;Wird eine hierachischen Produktion mit Unterbaugruppen angelegt, wird bei der Funktion 
                              ;"Alle Ebenen in eine Produktion" der verfuegbare Lagerbestand der benoetigten Unterbaugruppen beruecksichtigt.
                              ;Mit dem Wert 0 laesst sich die Funktion abschalten.
                              ;ProdVlgPruefenAlleInEineProduktion=0
                              ;ProdVlgPruefenEinzelProduktionen; Wert 0/1. Default 0
                              ;Wird eine hierachischen Produktion mit Unterbaugruppen angelegt, wird bei der Funktion 
                              ;"Jede Ebenen in eine extra Produktion" der verfuegbare Lagerbestand der benoetigten Unterbaugruppen beruecksichtigt.
                              ;Mit dem Wert 1 laesst sich die Funktion einschalten.
                              ;ProdVlgPruefenEinzelProduktionen=1
      185 02.12.03 FFPROD2:   Fehler bei mehrfach druchgefuehrter Produktionspruefung auf Lagermenge beseitigt.
                              Es wurden die benoetigten Mengen bei jeder Pruefung zur vorherigen Pruefung aufaddiert, solange der Menuepunkt nicht erneut aufgerufen wurde.
                   PRNLIB3:   Neue Druckvorlagenkommandos:
                              [.MHANDLE<] gibt die aktuelle Dateizugriffsnummer 4 Stellig aus
                              [.MRECADR<] gibt die aktuelle Datensatzugriffsnummer 8 Stellig aus
                   DFEXTFNC:  Das [L Druckkommando erkennt jetzt Nachladefleder auch dann, wenn sie sich nicht auf ein Nummernfeld C32 beziehen.
                   PINBOARD:  Bei Nachrichten im Titel die Zeichen "==" verwendet.
                   IGGAW:     Auswahllisten aus FAKT.AWT werden automatisch ohne oeffnen des Fensters erkannt, wenn der Wortteil eindeutig in der Liste ist.
      186 03.12.03 BRECLIB:   open_record() erweitert: Tritt der Fehler -46 BE_ACCESSDENIED beim Oeffnen auf, so wird 10 mal alle 0,5 Sekunden versucht die
                              Datei erneut zu oeffnen. Es wird in diesem Fall der Eintrag "Btr: access denied, retry open xxx err:-46" in das Benutzerlogbuch geschrieben.
                   DFPRN:     dfDruckvorschauHTML() fuer ALT_F5 erweitert:
                              Es wird jetzt zuerst der Eintrag "Druckvorschau HTML" im Kontextmenue (F10) gesucht und falls vorhanden ausgefuert.
          04.12.03 DFLIB:     Wurde ein Beleg-Druckvorgang an einer bestimmten Stelle durch einen Tatstendruck unterbrochen und dann fortgefuehrt, konnte es vorkommen, dass 
                              eine Position doppelt gedruckt wurde. Problem behoben.
                   WINIFW:    Neuer Button "Selektion in der  IFW-Tabelle aufrufen (Taste ALT-F10)" in der Buttonleiste
                   WINTAB:    Windowstabelle erweitert, Font einstellbar, Bildschirmdruck in der Tabelle und in der Druckvorschau moeglich, Spaltenbreite vorgebbar
          09.12.03 WINTAB:    Beim Einlesen von CSV-Daten werden Backslashs behandelt wie ein normales Zeichen
                   PRNLIB3    [.STACK<] gibt beim der DOS-Version immer 30000DOS aus
      187 11.12.03 WINTAB:    Ausdruck und Tastenbedienung der IFW-Tabelle optimiert.
          15.12.03 COMSOCK:   Beim WWW-Client sollte ein Systemzeituebertrag bei einer Rechnerlaufzeit > 49 Tage korrekt beruecksichtigt werden.
                              Der WWW-Client konnte u.U. eine Reconnectwartezeit >4.000.000.000 bei solch einem Uebertrag ausweisen.
                              Der WWW-Host sollte jetzt nach einem Systemzeituebertrag nach 49 Tagen korrekt sein Ping-Signal weiter absetzen.
      188 19.12.03 FFPROD2:   Die Meldung "Die Produktion ist bereits abgeschlossen!" ergibt keine Endlosschleife beim Beenden des IFW-Prozesses.
                   FAKTMAIN:  Ein Ueberwacher installiert: Wird der IFW Prozess beendet und verweilt der Prozess in einer Eingabeschleife, wird er 
                              nach 5000 Versuchen zwangsbeendet. Im Errorlog wird eine Meldung ausgegeben.
                   FFPROD3:   Produktionen mit einem externen Arbeitgang wird jetzt auch erkannt, wenn normale Arbeitsgaenge enthalten sind.
                   FFEINK:    Bei Fremdleistung zur Produktion bestellen, wird jetzt der korrekte Preis der Fremdleistung aus dem Artikelstamm nachgeladen.
                   TOBITFW:   Das Einlesen von eMails von DAVID auf W2K ermoeglicht.
      189 12.01.04 DFED2LIB:  Sollte beim Speichern eines Datensatz mit Autoincrement auf Feld Nummer 32 fehlschlagen, so wird
                              bei den 3 Versuche zusaetzlich geprueft, ob die Nummernfortschreibung gelingt. Sollte dies kein Erfolg haben
                              (Meldung "New: autoincrement retry mc:%d '%s', cnt:%d") wird eine zwangsfortschreibung der Nummer vorgenommen
                              und der Eintrag "New: autoincrement failed, retry force mc:%d '%s', cnt:%d" im Benutzerlog vermerkt.
                   FFPROD2:   Wird von einem Auftrag eine Lagerproduktions angelegt, so wird das Feld QM-Anweisung in der Produktion immer bestueckt
                              (auch wenn kein Feld QM-Anweisung in der Produktionsposition vorhanden ist).
          14.01.04 PRGLOAD:   Kommando PrintFile und PrintFileID um die Option 256 erweitert.
                              Damit wird eine Zieldatei geloescht, falls keine Daten ausgegeben werden.
      190 15.01.04 PRGLOAD:   Fehler bei Change beseitigt: Es wurde immer gespeichert, unabhaengig vom Rueckgabewert.
          26.01.04 VIDF:      In der IFW-Tabelle gruen angezeigte Balken bei sehr kleinen Istmengen (gerundete Laenge <1) korrigiert.
      191 28.01.04 FAKTMAIN:  Bei der Benutzerspezifischen Einstellung "50 Zeilen" wurde unter Umstaenden die Logbuchfunktion deaktiviert.
          29.01.04 FAKTMAIN:  Beim Starten des Programms und Btrieve-Fehler -161 (out of licenses) wird die Meldung
                              "Zugriff verweigert. Das Datenbank-Benutzerlimit (Btrieve) ist erreicht!" ausgegeben.
      192 03.02.04 COMSOCK:   Nochmalige Korrektur:
                              Beim WWW-Client sollte ein Systemzeituebertrag bei einer Rechnerlaufzeit > 49 Tage korrekt beruecksichtigt werden.
                              Der WWW-Client konnte u.U. eine Reconnectwartezeit >4.000.000.000 bei solch einem Uebertrag ausweisen.
                              Der WWW-Host sollte jetzt nach einem Systemzeituebertrag nach 49 Tagen korrekt sein Ping-Signal weiter absetzen.
      193 09.02.04 FAKTMAIN:  Ist kein Benutzer im IFW eingeloggt, so wird die Verbidnung zu Btrieve getrennt.
                              Somit sind mehr Lizenzen im Btrieve frei, wenn der Rechner nur im IFW Anmeldebildschirm steht.
      194 11.02.04 FAKTMAIN:  Beim Beenden einer externen Fernverbindung konnte die Hostempfangsbereitschaft deaktiviert werden.
      195 16.02.04 DFEDLIB:   In der Windowsversion koennen die Umlaute zum Einleiten einer Suche verwendet werden.
                              Die INI-Datei der Windowsversion wird nicht mehr im Systemverzeichnis des Windows (normal c:\windows\ifwc.ini) abgelegt.
                              Sie wird im Userverzeichnis des IFW's mit dem Namen ini_PCNAME.ini abgelegt. Existiert die Datei noch nicht,
                              wird versucht die Datei aus dem Windows-Systemverzeichnis in das Userverzeichnis unter dem neuen Namen zu kopieren.
      196 19.02.04 IFW_WWW:   Zusaetzliche Ueberwachung zur automatischen Verbindungserhaltung eingebaut. Es wird jetzt der Nutzdatenempfang
                              zusaetzlich ueberwacht. So wird auch bei einer bestehenden IP-Verbindung, aber ohne Nutzdatenempfang beim Client ein
                              Verbindungsreset eingeleitet.
          01.03.04 FFBDE:     Die Meldung ueber nicht vorhandene Datumsfelder in den Produktionspositionen fuer BDE-Stechbeginn und Ende entfernt.
          05.03.04 WINIFW:    Fuer die Textvorschau wird die DLL RICHED20.DLL von Windows benoetigt.
      197 09.03.04 WINIFW:    Druckausgabe ueber RichEdit moeglich (GDI-Druck)
      198 10.03.04 FFBELPRU:  Bei der Pruefung von Bestelltermine auf abweichend best„tigte Termine, werden nur noch Bestellungen selektiert,
                              bei denen ein wunsch- und ein bestaetigter Termin mit entsprechender Abweichung vorliegt.
                              Bisher wurden auch Bestellungen selektiert, die noch keinen bestaetigten Termin hatten.
          11.03.04 FAKTEDIT:  Beim Speichern und Verbuchen eines Beleges wird zusaetzlich eine Pruefung auf
                              Fehler beim Speichern von Datensaetze mit fehlgeschlagenem autoincrement durchgefuert.
                              Beim Fehlschlag mehrerer Versuche bei autoincrement
                              wird die Fehlernummer REC_EDUPKEY_AUTOINC -255 ausgegeben.
                              Bei Wiederholungsversuche werden die Meldungen
                               "TTS: dupkey-error detected, edit_datazwsp_speichern() retry cnt:%d err:%d"
                               "TTS: dupkey-error detected, beleg_materialbuchen() retry cnt:%d wait:%dms err:%d"
                              in das Benutzerlogbuch geschrieben.
                              Im Fehlerfall wird eine der Meldungen
                               "Unrecoverable dupkey-error on edit_datazwsp_speichern() (%d try)"
                               "Unrecoverable dupkey-error on beleg_materialbuchen() (err:%d, retry:%d)"
                              ausgegeben.
                   FFPROD2:   Bei der Produktionspruefung auf Termin, werden Positionen deren Istwert >= dem Sollwert 
                              nur noch auf Lagerbestand >=0 geprueft. Damit koennen Produktionen durch Istwerteintragung 
                              von der Dispoterminpruefung ausgenommen (und somit freigegeben) werden.
                   DFED2LIB:  Listenfenster in einer Maske werden nicht mehr maximiert geoeffnet.
                              (Beim Oeffnen der Maske konnte ein zuvor maximiertes Listenfenster auf dem Desktop Teile hinterlassen.)
                   FFPROD2:   Beim Absplitten von Restmengen werden die Einmalmengen mitgenommen und in der Ausgangsproduktion geloescht.
                              Beim Absplitten von Fertigteilen verbleiben die Einmalmengen in der Ausgangsproduktion. Im abgesplitteten
                              sind keine Einmalmengen mehr enthalten.
          12.03.04 PRGLOAD:   Neues Makrokommando:
                              ProdCheckSelection( Modus);
                              ProdCheckSelection( Modus, Pruefdatum);
                              Damit koennen Produktionspruefungen durchgefuehrt werden.
                              Modus 0: Dispobestand auf Produktions-Dispotermin
                              Modus 1: Dispobestand auf vorgegebenes Datum
                              Modus 2: Materialprfung auf aktuelles Lager
          15.03.04 PRGLOAD:   Neues Makrokommando:
                              BDETransfer();
                              BDETransfer( AnzahlUebertragungstage);
                              BDETransfer( AnzahlUebertragungstage, BisAnzahlTage);
                               AnzahlUebertragungstage: Anzahl Tage zurueck, Standard sind 3 Tage.
                               BisAnzahlTage          : Bis zum Tag vom aktuellen Tag ab, Standard ist -1 Tage.
                              Beispiel:
                               BDETransfer( 8, -1); -> Uebertraegt alle BDE-Personalzeiten von vor 8 Tagen bis Gestern.
      199 15.03.04 PINBOARD:  Die Nachrichten/Projektverwaltung kann jetzt auch mit gefilterter Anzeige der Projekte eines
                              Kunden bei F1 korrekt arbeiten.
          17.03.04 WINIFW:    Schutzverletzung bei Musterdruck und Aktivierung des Systemeditors ueber die Fensterleiste beseitigt.
                   FFPROD2:   Die Produktionspruefung um die Funktion "Lagermaterial prfen ohne Unterbaugruppen" erweitert.
                              Dabei werden bei der Materialpruefung die Eintraege von verwendeten Unterbaugruppen (M Positionen mit Artikeltyp K)
                              nicht geprueft.
                              Makro ProdCheckSelection( Modus) um Modus 3 erweitert:
                              Modus 3: Materialprfung auf aktuelles Lager ohne Beruecksichtigung verwendeter Unterbaugruppen.
                   FFPROD2:   Mit der Funktion "Produktionsmenge/-øTermin „ndern" laesst sich jetzt auch der Produktionsbeginn aendern.
                   PRGLOAD:   Kommando ProdSetSollProdTermin() erweitert:
                              ProdSetSollProdTermin( SollMenge)
                              ProdSetSollProdTermin( SollMenge, DispoTermin)
                              ProdSetSollProdTermin( SollMenge, DispoTermin, ProduktionsBeginn)
                                Ist die SollMenge == 0, wird keine Sollmengenaenderung durchgefuehrt.
                                Ist der DispoTermin "", wird keine Dispo-Terminaenderung durchgefuehrt.
                                Ist der ProduktionsBeginn "", wird keine Produktionsbeginnaenderung durchgefuehrt.
      200 18.03.04 Prgload:   Kommando PrintFile erweitert:
                              Der Parameter "Drucker" kann jetzt auch ueber eine Vt-Variable angegeben werden.
          22.03.04 IFW_WWW:   Fehler beim ausfuehren einer lokal geschriebenen Datei beseitigt.
                              Z.B. wurde bei "Meine Liste -> EXCEL" nicht Excel gestartet sonder der Ordner C:\ geoeffnet.
          23.03.04 WINIFW:    Beim Schliessen wird nicht mehr der Fenstertitel "IFW - 5000 Offline. Ready to Connect." angezeigt.
          25.03.04 FFPROD2:   Bei der Produktionspruefung auf Dispobestand wird jetzt eine Toleranzmenge von 0,0001 beruecksichtigt.
                              Die Funktion "Produktionsmenge/-øTermin „ndern" ist nicht mehr unterbrechbar.
          29.03.04 WINIFW:    Schutzverletzung beim Starten des WINIFWs mit defekter INI Datei beseitigt.
      201 31.03.04 FFBETON:   Neue Option bei der Lieferscheinstapelverarbeitung in der Betonbranche:
                              Mit dem Kennzeichen A in einem Lieferscheinstapeleintrag kann die Auftragsnummer des Eintrags dirket und
                              unberuecksichtigt weiterer Verarbeitung in den Lieferschein in das Feld Auftrag uebernommen werden. Ohne
                              dem Kennzeichen A wird wie bisher versucht den angegebenen Auftrag mit seinen Waren und Preise dem Lieferschein 
                              zuzuordnen.
      202 01.04.04 DFLIB:     Browsergeschwindigkeit bei nachgeladenen Datenbankfeldern aus mehr als einer Datenbank erhoeht.
                   PRGLOAD:   EditFile um Modus 128 erweitert: In der Liste ist die Taste F2 aktiv (Artikel->Bestellliste)
                   DFED3LIB:  Beim Change() Kommando wurde die Filter-Nachladegruppe deaktiviert. Damit kann es nicht mehr vorkommen,
                              dass bei einer Massenaenderung in einer Positionsliste eines Beleges, bei dem Positionen auch aus anderen
                              Belegen gerade selektiert sind, die Positionen aus den anderen Belegen mit dem Link auf den aktuellen Beleg
                              faelschlicherweise versehen werden.
          02.04.04 VIDF:      Die IFW-Tabelle um eine Farboption erweitert.
                              ALT-F10 IFW-Tabellenaufruf mit mehreren Nachladefelder korrigiert.
                   PRGLOAD:   Neues Makrokommando:
                              ClrAllTempData();
                              Damit lassen sich in einer temporaeren Datenbank alle Eintraege loeschen.
          05.04.04 TEXTEDIT:  Die Farbe des Texteditors ist jetzt standarmaessig schwarze Schrift auf weissem Grund.
      203 07.04.04 WINIFW:    Die IFW-Tabellenfunktion erweitert. Funktion "Inhalt -> Office" aktiviert.
      204 08.04.04 PRNLIB:    Problem mit dem Druckkommando [V1:dx.DATUM] beseitigt.
          13.04.04 PRNPRM:    Hunks von 64 auf 80 erhoeht
          20.04.04 FFBELPRU:  Bei der elektronischen Auftragsannahmen wird bei der Auftragsumwandlung die Zeile "Kommission xxx" mit einem
                              Zeilenumbruch versehen.
          21.04.04 FFBELPRU:  Bei der elektronischen Auftragsannahmen aus dem WEB-Shop (nur FAKT_EMAILAUFTRAG) muss fuer eine Uebernahme der
                              Kommissionsnummer in den Fliesstext das Kennzeichen K gesetzt werden.
      205 28.04.04 WINIFW:    Beim GDI Druck wird der Druckrequester nicht mehr geoeffnet.
                              Zum oeffnen des Druckrequesters beim Ausdruck kann entweder der Druckeranschluss als GDI:*
                              angegeben (mit einem Asterix), oder im Feld Kennzeichen das Kennzeichen 'O' in der 
                              Druckerliste gesetzt werden.
          29.04.04 FFKDSTAT:  Gutschriften werden jetzt im IFW Modul "kundenspezifische Artikestatistik" beruecksichtigt.
          04.05.04 BRECLIB2:  Suchfunktion optimiert: Lineares Suchen in einer vorgefilterten Liste (z.B. Belegpositionen eines Belegs)
                              laufen jetzt wesentlich schneller ab.
                   FFPROD2:   Neuer INI-Schalter:
                              ProdLagerpruefungTeilmengen
                              Bei der Lagerpruefung der Produktionen mit Kennzeichnung Q auch Teilmengen beruecksichtigen
                              (Kennzeichen P statt Q wird gesetzt)
                   WINIFW:    Im Windows-Editor sind jetzt HTML-Links aktiv aufrufbar.
                              Strg F3 als Button aktiviert.
                   IFW_WWW:   Neues Release 1.2-9 mit neuem Button Strg F3 verfuegbar.
          05.05.04 WINIFW:    Tooltip-Funktion ueberarbeitet.
                   WINIFW:    Druckvorlagenedit mit Musterdruck (F2) ueberarbeitet. Es werden jetzt auch Ausgaben in die IFW-Tabelle
                              und Eingaben bei der Druckvorlage unterstuetzt. Fuer die IFW-Tabelle muss die Druckoption 'C' im Ausgabeformular
                              gesetzt sein.
                   WINIFW:    Alles selektieren Strg-A im Editor aktiviert.
                   IFWTAB:    -Option #72 Balkenendarstellung ohne Sollwert
                              -Option #73 Balkenendarstellung mit Prozentangabe (000%)
                              -Der Export der Daten zu Excel erfolgt ohne den zusaetzlichen Angaben im Feld
          07.05.04 FFPROD2:   Bei der Produktionspruefung auf Lagermengen werden Produktionspositionen nicht mehr gekennzeichnet,
                              wenn die Istmenge die Sollmenge erreicht hat.
      206 13.05.04 WINIFW:    Neue Schalter "Zahlen konvertieren" im IFW-Tabellenmenue: Damit kann die Zahlenkonvertierung beim Export
                              nach Excel deaktiviert werden. Damit koennen Daten auch an die neuste Office-Version uebertragen werden.
                              Sie schaltet auch die Druckoption @P ab.
          18.05.04 FFBSTLST:  Bestellvorschlaege ueberarbeitet
                              Von Bestelliste Bestellung schreiben ueberarbeitet
                              Von Bestelliste Anfrage schreiben implementiert (Kennzeichen B in der Bestelliste)
                   PRGLOAD:   Neues Kommando SelectedProdSetSollProdTermin()
                              Mit ihm kann wie mit dem Kommando ProdSetSollProdTermin die Produktionsmenge und die
                              Produktionstermine geandert werden. Es aendert alle selektiere Produktionen ab.
                              Sind keine selektiert, werden keine geaendert.
                              SelectedProdSetSollProdTermin( SollMenge)
                              SelectedProdSetSollProdTermin( SollMenge, DispoTermin)
                              SelectedProdSetSollProdTermin( SollMenge, DispoTermin, ProduktionsBeginn)
                                Ist die SollMenge == 0, wird keine Sollmengenaenderung durchgefuehrt.
                                Ist der DispoTermin "", wird keine Dispo-Terminaenderung durchgefuehrt.
                                Ist der ProduktionsBeginn "", wird keine Produktionsbeginnaenderung durchgefuehrt.
      207 21.05.04 TERMINPL:  Terminmodul erweitert:
                              - Ist das IFW-Fenster mit genuegend Hoehe eingestellt, wird die Terminuebersicht in 30 Minuten-
                                Aufloesung angezeigt.
                              - Die Nachrichten erhalten jetzt im Feld Nr immer die Nummer der Nachricht, die als erstes
                                angelegt wurde. Davon versendete Nachrichten tragen immer die Nummer des Ursprungs.
                              - Mit F1 auf dem Feld ">Vs" kann eine Liste alle versendeten Nachrichten eingesehen werden.
                              - Wird an eine Gruppe Versendet, so wird an eine Peson nur einmal die Nachricht versandt,
                                auch wenn in mehreren Eintraegen einer Person (Mandanten) in der Benutzerliste das Gruppen-
                                kennzeichen hinterlegt ist.
                              - Termine lassen sich an selektierte Benutzer versenden:
                                Die gewuenschten Empfaenger ueber F1 selektieren und Return druecken.
                                Es wird im Feld Empfaenger der Text *LISTE*x eingeblendet. In der Ersten
                                Textzeile erscheint mit "AN:...;...;..." eine Liste der Empfaenger. Die Nachrichten
                                werden an diese Namen versendet. Die Nachrichten bei den Empfaengern kann ueber
                                das Feld ">Vs" eingesehen werden.
                              - Beim verschieben eines Termins im Terminkalender mit Strg-Return, werden alle dazugehoerigen 
                                Nachrichten nach Aufforderung ("Alle zusammengeh”rigen xx Termine verschieben? (Ja/Nein)")
                                mitverschoben.
          25.05.04 TERMINPL:  Fehler beim Verschieben von Terminen mit nagehaengten Job beseitigt.
      208 25.05.04 PRNLIB:    Kommando @HTapiDial Nummer; aktiviert. Es wird als Default-Device "DvISE" verwendet.
                   PRGLOAD:   Kommando ExecuteFileName erweitert:
                              - Es koennen jetzt auch Variable als Parameter verwendet werden.
                              Parser korrigiert: notwendige Leerzeichen bei einigen Kommandos beim ersten Parameter beseitigt.
          28.05.04 FAKTMAIN:  Default der Leitwaehrung von "DM" auf "EUR" umgestellt
          09.06.04 WINIFW:    Mit Strg-A ist der Artikelstamm wieder erreichbar.
          15.06.04 FFBETON:   Waagentyp 4 implementiert: Widra; Protokolldruck intern; Prfziffer; AKN-Verfahren mit STX/EOT Antwort; 1200 E 7 1
      209 17.06.04 FFBETON:   Neue Funktionen bei der Lieferscheinkurzerfassung:
                              1. Normal Wiegen      -> Normale Gewichtsbetimmung mit Lieferscheindruck
                              2. Erstwiegung        -> beim KFZ wird das Gewicht vermerkt
                              3. Zweitwiegung       -> von der Erstwiegung wird das veringerte Gewicht abgezogen mit Lieferscheindruck
                              4. Leergewicht wiegen -> beim KFZ wird das Leergewicht gespeichert
                              Zusaetzlich kann eine Bemerkungszeile angegeben werden, die ueber den Lieferscheinstapel gespeichert und 
                              im Lieferschein im Fliesstext der Artikelposition gepeichert wird.
          21.06.04 FAKTMAIN:  Neuer Wert in der FAKT.INI in der Sektion "System":
                              TAPIDeviceName: Wert Beispiel "DeviceName". Default "DvISE*".
                              Fuer die Telefonwahl mit dem IFW kann hier der Name des TAPI-Devices hinterlegt werden.
                              Wird im Namen ein '*' angegeben, so wird nur der Teilname vor dem *' verglichen und das erste
                              Device aus der Device-Liste verwendet, das dem Namen entpsricht.
                              Ohne '*' wird genau das Device mit dem angegebenen Namen gesucht.
                              Gross-/Kleinschreibung spielt keine Rolle.
                              An einem Arbeitsplatz kann die TAPI-Einstellung in der Arbeitsplatz IFW-INI-Datei geaendert werden.
                              Sie Befindet sich im IFW-Verzeichnis "User" mit dem Name "ini_xxxx.ini" wobei xxxx fuer den Rechnername
                              steht. Dort kann in der Sektion "Settings#ssssssss] wobei ssssssss fuer die Seriennummer steht mit dem Wert
                              "TAPIDeviceName=xxx" der Name geaendert werden. Ist dort nichts eingetragen, so gilt die zentrale Einstellung
                              aus der FAKT.INI.
      210 22.06.04 FFBETON:   Neue Waagentypen Widra SFW-Verfahren Einzel-/Verbundwaage aufgenommen
          23.06.04 TAPIUTIL:  TAPI-Anbindung ueberarbeitet.
      211 25.06.04 FFVERSND:  Paketversandmodul um ein Pakettyp erweitert. Er kann bei der Paketerfassung und in der Speditionspreisliste
                              Angewendet werden. Aus der Speditionspreisliste wird der entsprechende Paketpreis ermittelt. In der
                              Paketliste wird der Pakettyp mit gespeichert.
      211 29.06.04 FFBETON:   Waagenerfassung erweitert:
                              - Meldung Mengeneinheit ist nicht (to) nur noch bei Wiegung mit der Waage, nicht bei Direktspeicherung.
                              - Meldung/Sperre "Es wurde nicht gewogen" nur noch bei Mengeneinheit (to).
                              - Bei Return und 2 aktiven Waagen kommt die Meldung "Waagenwahl (1/2/Zurueck)"
                              - Bei Abbruch nach Wiegung wird die Referenznummer der Wiegung von der Waage auf der Maske zwangsgeloescht.
                              In der Waagen.Ini kann jetzt die Mengeneinheit fuer Tonnen vorgegeben werden.
                              Sektion [Stammdaten]
                              ;MengeneinheitTonnen: Wert "xx", Default "to"
                              ;Mengeneinheit fuer Tonnen
                              ;MengeneinheitTonnen=to
      212 08.07.04 WINIFW:    GDI-Druck: Korrektur der Papiergoesseneinstellung des Druckers (Querdruck brach zu frueh um).
                   FFFOCAST:  Forecastmodul erweitert:
                              Es gibt jetzt ein Planzahlkompensationsmodus. In diesem Modus werden Planzahlen ab dem Zeitpunkt beruecksichtigt, 
                              ab dem sie die gesamte Auftragsmenge (alle mit Termin und ohne Termin) ueberschreiten. Planzahlen vor dem Grenzdatum
                              (vergangene Wochen) werden in der Summe Planzahl nicht beruecksichtigt.
                              Sind Planzahlen nicht gueltig werden sie wie bisher Braun dargestellt. Wird eine Planzahl teilweise beruecksichtigt,
                              wird sie Grau dargestellt.
                   FAKT.INI:  Neuer Schalter in der Sektion [Belege]
                              AbrufDispoInWochen: Wert 0/1. Default 1
                              Mit diesem Schalter kann die Beruecksichtigung des Endtermins von Abrufbestellungen und
                              Abrufauftraegen im Dispobestand wie auch in der Forecastberechnung unterbunden werden.
                              Mit dem Wert 1 werden die Werte mit ihrem Endtermin im Dispobestand beruecksichtigt,
                              genauso wie Auftraege oder Bestellungen.
                              Mit dem Wert 0 werden die Werte nur noch im Dispo-Feld ohne Termin beruecksichtigt.
                              Mit dem Wert 0 werden die Abrufauftraege in der Forecastberechnung komplett deaktiviert
                              (auch nicht im Feld ohne Termin enthalten und so beim Planzahlkomenstationsmodus unberuecksichtig).
                              AbrufDispoInWochen=1
          09.07.04 FFBETON:   Erst-/Zweitwiegemodus geaendert: Die Fahrzeugdaten der Erstwiegung werden erst bei erfolgreichem Speichern
                              des Lieferscheins geloescht. Die Tonnage bleibt in der KFZ-Maske zurueck.
      213 10.07.04 FFFOCAST:  Korrektur der dynamischen Lagerberechnung
          12.07.04 DFED3LIB:  Systemmakro .$20 einbebaut: Ein Datensatz wird geloescht. Bei Rueckgabewert !=0 erfolgt keine Loeschung.
          13.07.04 FAKTEDIT:  Systemmakro .$23 einbebaut: Ein Beleg wird rueckgaengig gemacht. Bei Rueckgabewert !=0 erfolgt keine Loeschung.
          14.07.04 FFBSTLST:  Bestelliste um Exe-Schalte FAKT_BSTLSTARCHIV erweitert:
                              Bestellungen werden nicht mehr geloescht, sondern archiviert wenn sie erledigt sind.
      214 15.07.04 FAKTMAIN:  Die Pruefung der Laendereinstellung ist jetzt standardmaessig eingesschaltet (INI-Schalter "LaendereinstellungPruefen").
                   FFART:     Neuer Schalter in der Sektion [System]
                              ProdStatistikErledigtDatum: Wert 0/1. Default 0
                              Wird der Wert auf 1 gesetzt, wird in der Artikelstatistik in der Zeile ME der Abgang
                              der Ware zum Zeitpunkt des Produktionsabschluss (Kennzeichen E) vorgenommen. Auch bei einer
                              Wiedereroeffnung wird das aktuelle Datum fuer die Rueckbuchung benutzt.
                              ProdStatistikErledigtDatum=0
          16.07.04 FFFIRUMS:  Beim Monatsabschluss/Berechnung wird jetzt immer das Ganze Jahr aus der Online-Artikelstatistik in die
                              Offlineartikelststistik uebertragen. In der Warengruppenstatistik wird jetzt auch die nicht sichbare Zeile
                              fuer die summierte Artikelmenge mitgefuehrt.
                   FFFIRUMS:  Neuer Schalter in der Sektion [System]
                              ArtikelStatistikLagerumschlagUeberMenge: Wert 0/1. Default 0
                              Wird der Wert auf 1 gesetzt, wird in der Artikel- und Warengruppenstatistik die Lagerumschlagsheufigkeit
                              ueber die Lagermenge und nicht ueber den Lagerwert berechent. Vor allem beim Einsatz der Lagerproduktion
                              sollte der Wert auf 1 gesetzt werden. Mit dem Wert 1 wird in der Artikel- und Warengruppenstatistikmaske
                              das Kennzeichen 'M' standardmaesig gesetzt. Durch dieses Kennzeichen wird die Berechnungsart umgeschaltet.
                              ArtikelStatistikLagerumschlagUeberMenge=0
                   FFEINK:    Im Artikelstamm 3 VPE Felder fuer die drei Lieferantenzeile in der Untermaske aktiviert. Wird ein
                              Artikel auf die Bestelliste abgerufen, und ist dort ein VPE Feld, so wird die entsprechende VPE uebernommen.
                              Ist der VPE Eintrag des Lieferanten 0, so wird die VPE von der Hauptmaske uebernommen.
          20.07.04 DFFNC:     Rechner, die auf eine "haengende" Remotverbindung einloggen, werden nicht mehr fuer das Lizenzlimit mitberechnet.
                              Wurde ein Hostsession mit einer Remotverbindung nicht korrekt beendet und waren alle Remotlizenzen belegt,
                              konnte die Remotverbindung erst nach einer Stunde (Timeout) wieder einloggen.
                              Problem korrigiert, die Remotverbindung wird jetzt als bereits existierende Lizenz erkannt.
      215 23.07.04 FFEINK:    Bestelllistenmenge im Artikelstamm korrigiert, wenn die neue Archivierungsfunktion der Bestlliste verwendet wird.
                              Beim Bestellen wird die Bestellistenposition nicht mehr geloescht, und die Menge bleibt erhalten. Dafuer
                              wird in einem neuen Feld "bestellte Menge" die bereits bestellte Menge gespeichert. Im Artikelstamm
                              wird jetzt die Differenz Menge - bestellte Menge gespeichert. Uebermengen werden als 0 verbucht.
                   DFED2LIB:  Autoincrement um Zeichen '*' als letztes Zeichen erweitert -> damit laesst sich eine 10er Nummerierung erreichen.
      216 27.07.04 FFBSTLST:  Systemmakro .$69 implementiert:
                              Spezialprogramm beim Abruf "von Bestelliste zu Bestellung".  MarkFile=Quelldatei
                              Wird beim Abrufen einer Bestellistenposition zu einer Bestellung aufgerufe, nachdem alle Daten in der Bestellistenposition sind und
                              vor dem Oeffen der Maske. Mit einem Rueckgabewert == 0 wird weiter verabreitet, mit 1 wird die Verarbeitung abgebrochen.
                   PRGLOAD:   Neues Kommando Archive()
                              Damit lassen sich selektierte Datensaetze archivieren. Sind keine Datensaetze selektiert, 
                              findet auch keine Archivierung statt.
                              Archive();
                              Archive( Modus);
                                Modus == 1 -> es wird vor der Archivierung nicht nachgefragt
                                Modus == 2 -> keine Meldung wenn Datensaetze nicht archiviert werden durften
                              Neues Kommand SelectRecord()
                              Damit wird der aktuelle Datensatz selektiert.
                              SelectRecord();
                              SelectRecord( Modus);
                                Modus == 0 -> der Datensatz wird zu bereits bestehenden selektierten Eintraegen einsortiert.
                                Modus == 1 -> der Datensatz wird zu bereits bestehenden selektierten Eintraegen nicht einsortiert sondern angehaengt.
      217 02.08.04 WINIFW:    GDI-Druck erweitert:
                              Mit dem Druckerkommando ESC "TOP1.0" laesst sich der obere Rand in Zentimeter einstellen. Ohne Kommando
                              betraegt er einen halben Zoll 1,27 Zentimeter.
                              Mit dem Druckerkommando ESC "LPI6.0" laesst sich der Zeilenabstand in Zeilen per Zoll einstellen.
                              Standardmaessig sind 6 Zeilen per Zoll eingestellt. Mit dem Wert 0 wird auf automatischer Zeilenabstand
                              je nach Fontgroesse umgeschaltet.
          03.08.04 IFW_WWW:   Funktion des Strg-F3 Button aktiviert.
          04.08.04 FFVERSND:  Korrektur bei der Paketerfassung: Bei Lieferungen an abweichende Lieferadressen wurde faelschlicherweise die
                              Liefer- und Zahlungsbedingungen der Lieferadresse statt des Lieferschein verwendet.
                              Problem behoben.
          08.08.04 STDMSK:    In der Druckeranschlussauswahl wird GDI: mit angeboten.
                              Drucker "GDI:Standarddrucker" aktiviert -> damit wird automatisch auf den Standarddrucker ausgedruckt.
                   WINIFW:    Bei Erststart an einem Arbeitsplatz wird automatisch das blaue IFW-Hintergrundbild verwendet.
          11.08.04 WINIFW:    beim GDI-Druck sind jetzt fuer die 1. und Folgeseite getrennte Kopfgraphiken moeglich (PrnLogoH.bmp und PrnLogH2.bmp).
                   PRNLIB:    Neue Druckzuweisung bei Datumsvariablen:
                              [Vd:w   -> damit kann eine Anzahl Werktage zum Datum hinzugezaehlt werden.
          01.09.04 FFPPS2:    PPS-Bauteiltabellenberechnung erweitert
                   PRGLOAD:   Kommando PPSCalcTime erweitert.
                              PPSCalcTime()
                              PPSCalcTime( Mode)
                              Mode 0: Berechnung mit abweichenden Tabellenwerten aus den Materialeintraegen und Referenztabellenbezug
                              Mode 1: Berechnung ohne abweichenden Tabellenwerten aus den Materialeintraegen und ohne Referenztabellenbezug
                              PPSCalcTime loescht jetzt Sollzeiten von Arbeitsgangeintraegen, falls sie von einer vorherigen Berechnung
                              vorhanden sind.
          03.09.04 WINIFW:    Standardbild auf Name "IfwDesk.bmp" umgestellt.
                   PRNLIB3:   Neues Druckvorlagenkommando
                                VnSetFocus -> wie VnSetFokus, nur andere Schreibweise
                              Neue Druckvorlagenkommandos zur Zeitberechung des PPS-Systems
                              VppsCT-Kommandos stellen einem die Funktionen des PPS-Makrokommandos
                              PPSCalcTime zur Verfuegung:
                                VppsCTinit -> Initialisiert die Berechnungmatrix.
                                              Nur vom Artikelstamm, Produktionsstamm oder einer Artikelkalkulationsliste aus aufrufbar.
                                VppsCTclr  -> Loescht alle Zeitwerte in der Berechnungmatrix
                                VppsCTadd  -> Fuegt die Zeitwerte der aktuellen Maske hinzu.
                                              Nur vom Artikelstamm, Produktionsstamm oder einer Artikelkalkulationsmaske aus aufrufbar.
                                VppsCTwrite-> Speichert die Werte in Vn. Es kann als Parameter ein Prefix angegeben werden:
                                              Format   PREFIX0pppfff  p Position, f Fertigungstellenkuerzel
                                              Format   PREFIX1fff
                                              Vn 0     Spalte SZ
                                              Vn 1     Spalte BZ
                                              Vn 2     Spalte EZ
                                              Vn 3     Spalte FZ
                                              Vn 10/11 Zeitanzeil1/Faktor1
                                              Vn 12/13 Zeitanzeil2/Faktor2
                                VppsCTcap0    Ausgabe der Kapazitaet Std/KW der schnellen Maschine
                                VppsCTcap1    Ausgabe der Kapazitaet Std/KW der langsamen Maschine
          07.09.04 PRJPRM:    Im Eroeffnungsbild wird jetzt das Startverzeichniss und das aktuelle Verzeichnis angezeigt.
                   FFBSTLST:  DispoToOrderList uebertraegt den EK der ersten Lieferantenzeile in die Bestelliste, falls ungleich 0.
      218 08.09.04 PRGLOAD:   Neues Kommando OrderListToOrder
                              OrderListToOrder( Mode)
                              OrderListToOrder( Mode, Mindestbestellwert)
                              OrderListToOrder( Mode, Mindestbestellwert, maxPositionsanzahl)
                              OrderListToOrder( Mode, Mindestbestellwert, maxPositionsanzahl, BisDatum)
                                Mode               : b5 (0x20): Feld minimale Bestellmenge beruecksichtigen
                                                     b6 (0x40): Feld VPE Verpackungseinheiten beruecksichtigen
                                Mindestbestellwert : Positionen werden auf den Mindestbestellwert angehoben.
                                maxPositionsanzahl : Maximale Anzahl Positionen in einer Bestellung. Die Voreinstellung ist 50.
                                BisDatum           : Es werden nur eintraege mit Wunschtermin kleiner gleich dem BisDatum uebernommen
                              Die aktuelle Datenbank muss die Bestelliste sein.
                              Es werden nur selektierte Eintraege uebernommen.
          09.09.04 VIDF:      Beim Uebertragen der IFW-Tabelle nach Excel werden Felder mit zusaetzliche Prozentangabe als extra Spalten ausgegeben.
                              PPSCalcTime traegt in den Produktionspositionen auch alle Belgekopfdaten nach (Kunde,Datum,PrdTermin...)
      219 13.09.04 FFPPS2:    In der individuell abaenderbaren Bauteilezeittabelle wird auch ohne Zuweisung einer Tabelle die Beschriftung der Spalten angezeigt.
                   FAKTEDIT:  Der Belegaenderungmanager Meldet mit dem Kennzeichen W eine aenderung des Einzelpreise, nicht mehr des Gesamtpreises. Im Auftrag werden
                              Rabattaenderungen ebenfalls mit dem Kennzeichen W angezeigt.
          14.09.04 FFFOCAST:  Fuer Artikel ohne Lagerverwaltung werden keine Forecastzahlen mehr berechnet.
                              Funktion "Forecastzahlen neu kalkulieren" optimiert.
                   DFREQUEST: Berechnung der geschaetzen Zeit geaendert.
          15.09.04 PRGLOAD:   Kommando DispoSelection um Modus 16 erweitert:
                              Modus 16: Es werden von selektierten Eintraegen die wegselektiert, fuer die kein Dispobedarf
                                        vorhanden ist.
      220 15.09.04 FFBSTLST:  Korrektur der Funktion OrderListToOrder()
          16.09.04 TELMODEM:  Neuer Schalter in dar Fakt.ini Sektion [System]:
                              BDEBenutzeSystemRTSSchaltung: Wert 0/1. Default 0.
                              Das IFW-Modul BDE Taskmanager benutzt die Funktion des Seriellen Treibers des
                              Betriebssystems zum schalten der RTS Leitung beim Senden von Daten.
                              Die Funktion ist nicht in Windowsbetriebssystemen 95/98/ME enthalten.
                   BDEPORT:   Automatische Protokollergaenzung fuer Windows XP Rechner angepasst.
      221 17.09.04 VIDF:      Beim Uebertragen der IFW-Tabelle nach Excel werden Felder mit Farbbalken mit einer extra Spalten des SOLL-Wertes ausgegeben.
          17.09.04 VIDF:      Text der Spaltenbeschriftung von 31 auf 63 Zeichen erhoeht.
          20.09.04 FAKTEDIT:  Systemmakro .$24 implementiert: Belegbearbeitung nach dem verbuchen des Belegs.
      222 20.09.04 MEMPRM:    Datenfelder koennen jetzt mit fixer laenge im flexiblen Speicherbreich des Records gespeichert werden.
                              Fehler bei Zahlenarrays mit flexibler Speicherlaenge beseitigt. Sie loeschten den MemoryHeader dahinterliegende flexible Datenfelder.
          22.09.04 FFDISPO:   Bei der automatischen Rechnungserstellung kann ein Rechnungsdatum vorgegeben werden.
      223 28.09.04 PRJPRM:    Problem der Fliesstextgroesse beim Aufruf von noch nicht existierenden Programmeinstellungsmasken beseitigt.
                   WINLIB2:   Anpassung von gespeicherten Fliesstextmemoryheader an die aktuelle Maskenfeldlaenge.
                   PRGLOAD:   Fehler -43 bei leerer Archivdatenbank beim ersten Aufruf eines Makros (Kommando Search) beseitigt.
          08.10.04 IFWTAB:    -Option #21, #31 und #41 Zahlenwert 0 wird nicht ausgegeben
                              Datumseingabe bei aktivem Eingabefeld in der IFW-Tabelle korrigiert
          11.10.04 WINIFW:    Die Aktionsbuttons zeigen jetzt auch alternativ gewaehlte Drucker an.
                              Wird die Aktionleiste ausgeschaltet, erzeugt das IFW keine Daten mehr fuer die Buttons.
      224 14.10.04 WINIFW:    Neuer HOST-Modus fuer Client-Release 1.3-0
                              - HTML-Hilfenaufruf beim HOST deaktiviert
                              - Bildschirmdruck geht direkt zum 1.3-0 Client
                              - GDI-Druck und IFW-Tabelle geht direkt zum 1.3-0 Client
                              - Aktionsbuttons gehen zum 1.3-0 Client
                              - Resize Problem korrigiert
                              - IFW-Tabellenbutton korrigiert
                              - Neue Default-Buttonanordnung bei aktiver Aktionsleiste
                   IFW_WWW:   Neues Release 1.3-0 mit GDI-Druck, IFW-Tabelle und Aktionsbuttons
                   PRNLIB3:   Die Mehrwertssteuerausgabe .MWSTA und .MWSTB  ist jetzt auch bei Masken ohne Datumsfeld moeglich.
                   DFLIB:     Beim Beenden vom IFW konnte die Meldung  "Warnung: drop_df 'BASISDAT\Artikl.rec' usecnt auf -1 gesetzt" 
                              angezeigt werden. Problem behoben.
                   WINIFW:    Das IFW-Fenster kann nicht mehr ausserhalb des Bildschirms verschoben werden
                              Die Standardstartgroessse erhoeht auf 110x50 (vorher 80*25)
                              Tooltips modifiziert. Sie strahlen mehr Ruhe aus.
      225 19.10.04 DFPRN:     F4-Druck Ausgabeoption 'G' fuer GDI-Druck aufrufen
                              F4-Druck Ausgabeoption 'O' fuer ausgabe des aktuellen Satzes
                   WINIFW:    Geschwindigkeitsoptimierung der HotButtons in Belegpositionslisten (Bild auf/ab)
                   DFIMP:     Beim Import in eine Datenbank mit Stammdatenarchiv wird der Datensatz standardmaessig nicht mehr ins Archiv importiert.
                   FFART:     0-Eintraege im Lagerlogbuch beim Import beseitigt.
                   FFSTATIS:  Warenbedarfszahlen neu erstellen setzt nicht mehr u.U. das letzte Bewegungsdatum.
                   IFW_WWW:   Buttonanordnung beim ersten Aufruf mit einer alten INI korrigiert.
          20.10.04 TOBITFW:   Umlaute bei eingehenden Emails aus aktueller Tobitversion (V8) korrigiert.
                   WINIFW:    Menue um Eintrag fuer "Inhalt an Office uebertragen" erweitert.
                              Tasten Alt 1 bis Alt 9/0 fuer die Aktionsbuttons aktiviert.
          21.10.04 FFRECH:    Bei "Lieferschein von Rechnung schreiben" werden Seriennummernpositionen 'S' mit Seriennummern immer uebernommen.
          22.10.04 PRGLOAD:   U.U. vorkommender Fehler -219 bei Kommando BDETransfer, DispoSelection und WriteObligation beseitigt.
          26.10.04 DFPRN:     In der Belegausgabe kann statt ein Ausgabeformular ein Makro angegeben werden.
                              Ein Makroname beginnt mit einem fuehrenden '#'. Z.B. "#Liesch10.pru".
                              Das Makro wird so oft ausgefuehrt, wie in der Spalte Anzahl angegeben.
      226 27.10.04 WINIFW:    Beim Editieren von Druckvorlagen ueber den Musterdruck wird das IFW-Fenster minimiert korrekt am unteren Fensterrand plaziert.
                   PRNLIB3:   Neue Variable in den Druckvorlagen 
                              [.MRefName<] -> sie gibt die Namensreferenz der Datenbank aus, die als Rueckmeldekennung vom DAVID-Modul erkannt wird.
                              Fuer die Belegarten sind entsprechende Namensangaben hinterlegt (z.B. "Angebot" oder "Rechnung").
                              Die Bezeichnungen sind bei Emails in der Betreffzeile sichtbar.
                   TOBITFW:   Beim Versand von Belegen ueber DAVID werden auch Belegreferenzen ohne fuehrendem '$' erkannt.
                              Es werden auch die neuen Namensreferenzen der Datenbank erkannt
                   FFBDE:     Beim Importieren von BDE-Logbucheintraegen wird in der Produktion die Personalnummer als letzten Vorgang korrekt gesetzt.
          28.10.04 DFEXTFNC:  Beim Listendruck mit Kommando [D kann mit der Option 'a' (wie 'b') eine Ausgabe aller Eintraege ohne Filter erreicht werden.
                   DFOBJ:     Korrektur bei cloneIndexFilter() wenn die Datenbank noch nicht im Speicher ist. Bisher wurde u.U. der falsche Indexpfad zugeordnet.
                              Beim Multidruck [Dxx;M konnte das zu einem falschen Zugriff fuehren.
                   FFWEG:     Ist in der Wareneingangsposition das Feld "(neuer) LiTerm" leer, wird bei der Bestellung der Liefertermin nicht mehr korrigiert.
                              Beim Schreiben eines Wareneingangs von einer Bestellung wird das Feld "(neuer) LiTerm" in der Wareneingangsposition nicht mehr auf den Liefertermin gesetzt.
          02.11.04 FFKDSTAT:  Bei der kundenspezifischen Artikelstatistik werden jetzt Alternativ- und Optionalpositionen nicht mehr beruecksichtigt.
                   FFBDE:     Die Verarbeitung von BDE-Terminals die auf pending oder off sind geaendert:
                              Es koennen auch Produktionstasks von deaktivierten Terminals auf aktive Terminals uebernommen werden (Meldung *ANDERES TERMINAL*).
                              Produktionstasks werden vom anderen Terminal auch dann uebernommen, wenn sie dort gerade aktiv sind.
      227 04.11.04 FFPPS3:    Das PPS System speichert den ermittelten Produktionbeginn als KW (Montag der Woche) in das Feld PrdBeg der Produktion.
                              Tooltip Refresh in der PPS-Maske erhoeht
          08.11.04 STDPRJ:    Aktionsbuttons in der Positionsliste von Belegen die bearbeitet werden (TEMPDAT) korrigiert.
          09.11.04 PRGLOAD:   Kommando OrderCosting() aktiviert.
          10.11.04 WINIFW:    Die Bildschirmbeschraenkung (Das IFW Fenster kann den Bildschirmrand nicht verlassen) kann ueber das Menue aufgehoben werden.
                              Deaktivieren Sie die Bildschirmbeschrenkung, wenn sie das IFW bei Doppelmonitorverwendung auf dem 2. Monitor betreiben wollen.
                   IFWTAB:    Beim Einlesen von CSV-Dateien werden jetzt auch Doppel-Hochkommas beruecksichtigt.
          11.11.04 WINIFW:    Standardhintergrund-Bitmap im EXE als Hintergrundfarbe aktiviert
                   DFEDLIB:   Es werden nur noch Spalten mit Indexpfaden fuer ein Mausklick verfuergbar gemacht
      228 13.11.04 BRECLIB:   Das Sortieren von selektierten Datensaetzen uber einen Datencache optimiert
          16.11.04 DFEDLIB:   Das Speichermakro .$07 wird jetzt auch im Artikelstamm vor der Speicherfrage ausgefuehrt (vor ueberladenen Objektfunktionen)
                   BRECLIB2:  Teilsuche (F7) bei vorgefilterten Listen (Artikelliste) korrigiert.
          17.11.04 API_WIN:   Flackern bei Aufbau der Spalten der IFW-Tabelle beseitigt.
      229 18.11.04 API_WIN:   Spaltentyp #9 in der IFW-Tabelle verfuegbar. Damit koennen Eintraege wie in einem Baum auf und zugeklappt werden.
                              Die Ebenen werden mit . als Text in der Spalte angegeben. Das letzte Zeichen von Gruppeneintraegen ist immer + (Komprimiert) oder - (Expandiert).
                              Gruppe  Z.B. 1.02-   -> 1. Gruppe, Ebene 02, alle Elemente anzeigen
                              Element Z.B. 1.02.23 -> 1. Gruppe, Ebene 02 Element 23
                   FFBDE2:    BDE-Logbuchfunktion erweitert. Auch bei manueller Aenderung des Buchungstyps von einer Zeitbuchungsfunktion (22, 25, 27) werden die
                              betroffenen Produktionen entsprechend beruecksichtigt.
                   FFBDE2:    Werden nur IP-Geraete verwendet, wird eine Ruhezeit von 150 ms ausgefuehrt
          22.11.04 FFPROD2:   Bei allen M _ Positionen werden bei leerem PrdEnd Datum beim Abschluss die EKs frisch gesetzt
      230 23.11.04 API_WIN:   IFW-Tabelle Funktion der Baumspalte #9 korrgiert
                   FFBDE2:    Schutzverletzung beim BDE-Logbuchspeichern beseitigt.
      231 25.11.04 FAKT.INI:  Neuer Schalter in der Sektion [System]
                              ArtikelstammLetztesBewegungsdatumEin: Wert 0/1. Default 1
                              Mit dem Wert 0 kann das automatische Setzen des Feldes "letzes Warenbewegungsdatum" abgeschaltet werde.
                              Das System aktuallisiert dieses Datum immer bei einer Veraenderung des Gesamtbestands (ausser Inventur) auf
                              das Vorgangsdatum (Belegdatum, muss neuer sein).
                              Wird die Funktion mit dem Wert 0 abgeschaltet bleibt das Feld unveraendert und kann so vom Anwender benutzt werden.
                              ArtikelstammLetztesBewegungsdatumEin=1
                   BRECLIB:   Problem beim Rueckwaertssortieren ueber Cache korrigiert.
      232 30.11.04 WINIFW:    Beim GDI-Druck die Erkennung nicht vorhandener Drucker erweitert. Schutzverletzung unterbunden.
                              GDI Druck Kommando "'ESC' FNTxxx" aktiviert. Damit kann der Font beim GDI-Ausdruck modifiziert werden.
                              Mit "'ESC' FNTdefault" wird auf den Standardfont (Courier New) umgeschaltet.
          02.12.04 BDEPORT:   Der BDE-Manager schreibt jetzt auch Logbucheintraege fuer die IP-Daten mit (Senden "BIS:" und Empfangen "BIR:")
                   FFBDE:     Einlesen des Barcodelesers am BDE aktiviert
          03.12.04 FFBDE:     Uhrzeitrefresh korrigiert
      233 09.12.04 PRNLIB:    Neue Druckvorlagenzuweisung [V10:fxVd]
                              Damit koennen Wochenwerte aus der Forecastberechnung eines Artikels ausgegeben werden.
                              x steht fuer folgende Werte:
                                A: SListe
                                B: FoCast
                                C: Order
                                D: -
                                E: minLgB
                                F: maxLgB
                                G: -
                                H: DspLgB
                                I: FocDsp
                                J: Bedarf
                                K: PlnLgB
                   FFFOCAST:  Stuecklisten zaehlen jetzt im Forecast auch vor dem Grenzdatum im Modus "Planzahlenkompensation"
                   PRGLOAD:   Kommando DispoSelection um Modus 32 und 64 erweitert:
                              Modus 32: In Verbindung mit dem Forecastmodus werden nur Eintraege selektiert,
                                        die einen Maxbestand groesser als der Forecast-Maxbestand enthalten.
                                        Der Maxbestand muss ungleich 0 sein.
                                        Ohne Forecastmodus wird als MaxBestand die VPE genommen. VPE-Werte kleiner 1 werden als 1 gewertet.
                              Modus 64: Wie Modus 32, nur werden Eintraege bei Uebermenge oder bei Mindermenge selektiert.
                   FAKTEDIT:  Systemmakro .$25 implementiert: Bei Belegbearbeitung "Beleg kopieren" oder "von Beleg schreiben" wird es vor dem Speichern
                              einer Position aufgerufen. Bei einem Rueckgabewert ungleich Null erfolgt keine Speicherung.
                   FFSTDVK:   Steuertyp 'u' fuer Bautraeger und 'i' fuer Innenumsatz aktiviert. Beide sind Steuerfrei. Es werden separate Konten
                              aus den Erloeskontenparameter angezogen. Der Steuertyp ist nur beim Warenverkauf einsetzbar.
          14.12.04 FFBDE:     Bdemanager fuer PCS-Terminals ueberarbeitet.
          16.12.04 FFBDE:     Bdemanager fuer PCS-Terminals ueberarbeitet.
          17.12.04 PRNLIB3:   Neue Variable in den Druckvorlagen
                              [Vpt:=...] -> Wird der Variable Vpt ein Text zugewiesen, so wird der Text als Fenstertitel beim GDI-Druck verwendet.
                              Der Titel wird als Dokumentenname bei Druck verwendet und fuehrt z.B. beim PDF-Druck zur Erzeugung eines PDF-Dokuments mit 
                              dem Titelname.
      234 20.12.04 FFFIBU21:  Beim Jahresuebertragung der Finanzbuchhaltung wird eine Sicherung des vergangenen Jahres generiert.
                              Sie wird im Verzeichnis ARCHFIBU ein Jahresverzeichnis z.B. 2004 erzeugt, in dem die relevanten Daten gespeichert sind.
                              Es wird ein Systemmakro KONTEN.$70 verwendet. Es sorgt fuer die Sicherung. Es muss den Rueckgabewert 1 zurueck geben, damit
                              eine vollstaendige Sicherung erkannt wird.
          21.12.04 FFFIBU2:   Mit der Datei SYSDAT\STOPFIBU.INI kann das Buchen in der Buchhaltung gesperrt werden. Es wird die Meldung
                              "Das Buchen in der FIBU ist vom System gesperrt! (Zurck)" ausgegeben.
                              Die Funktion "Fibu Jahresuebertrag" loescht die Datei bei erfolgreichem Abschluss.
          23.12.04 FFPROD:    Mengenzuschlagsberechnung in den Produktionen (ME Stk) aktiviert.
          27.12.04 MSCON:     Soundausgabe geaendert. Sie sollte auch unter XP korrekt funktionieren.
                   FFLAGER:   Massenaenderung in den externen Lager korrigiert: Sie wurden nicht als Aenderung erkannt, sondern als Neuanlage.
          07.01.05 PRGLOAD:   SetFileBackToPrevFile() in Verbindung mit dem Kommando SetFileMaiFilter() korrigiert
                              Lieferadressenumsaetz beim Jahresabschluss korrekt beruecksichtigt.
                              (cmp_mai von identischen Zahlenarrays korrigiert)
      235 11.01.05 FFINVENT:  Beim Summieren der Inventur ein F1 Filter auf ArtInv geloescht -> es konnte vorkommen das nach F1 auf dem Inventurfeld 
                              im Artikelstamm der Filter gesetzt war und alle anderen Artikel beim Aufsummierne in den Artikelstamm die Menge 0 erhielten.
          13.01.05 DFEDLIB:   Bei Bestellvorschlaegen werden auch bei vorhandenem Stammdatenarchiv im Artikelstamm nur die Selektierten angezeigt.
          14.01.05 FFLAGBUCH: AKL-Buchung mit Indize korrigiert.
          17.01.05 DFMULTI:   Listenausgaben ueber gemischte Datenbaenke Normal/Archiv koennen jetzt auch rueckwaerts vorgenommen werden (Option [D ...b,Mxx...
                   PRNLIB:    Neue Druckvorlagenzuweisung [V10:%V11] -> Berechnet V10 modulo V11 (Rest der Division).
                              Dies Funktion steht bei den Zahlenvariablen zur Verfuegung.
                              Neue Druckvorlagenoption [Vdwochentagnummer<] -> gibt den Wochentag als Zahl aus. 0 Montag, 6 Sonntag
      236 18.01.05 FFPERS:    Stundenabrechnung erweitert, es sind jetzt auch unterschieliche Stunden pro Wochentag angebbar.
          19.01.05 DFIMP:     Beim Importieren von fortlaufenden Dateien (? im Dateiname) das Abscannen des Verzeichnis nach vorhandenen Dateien beschleunigt.
                              Beim Belegimport werden nicht korrekt abgeschlossenen Importdateien (halber Kopf ohne Positionen) erkannt und verworfen. Die
                               Importdatei wird in diesem Fall geloescht. Bisher blieb sie wegen unvollstaendigen Daten erhalten, so das diese immer wieder eingelesen wurde.
                               Dadurch blieb der fortaufende Import des Dateistapels haengen.
      237 19.01.05 ERRORLOG:  Die Benutzerlogbuecher werden jetzt mit fuehrender Jahres und Monatsangabe geschrieben TEMPDAT/JJMM_000.LOG.
          20.01.05 DFIMP:     Strg-F2 Funktion korrigiert
          21.01.05 BRECLIB2:  Bei linearer Schnellsuche mit Doppelfilter Fehler beseitigt
                   DFPRN:     Beim Ausdrucke in eine Dateie oder einer Windows Serverqueue (//server/queue) wird die Datei/Ausgabe vor der
                              Frage "Ausdruck ok und Kennzeichnen?" geschlossen/freigegeben.
          25.01.05 FFARTPR:   Preisgruppe 12 brachte Schutzverletzung -> Preisfindung fuer Preisgruppen >5 korrigiert.
          26.01.05 PRNLIB2:   Druckvorlagen Logbucheintrag von ###dvl.log auf USRdvl.log (mit USR gleich Usernummer) korrigiert.
          28.01.05 Edit_win:  GDI-Druckoption ESC-LPI6.0 um ESC-LPI6.0F erweitert. Mit der Option F laesst sich ein fixer Zeilenabstand einstellen.
                              Ohne Option gilt ein Mindestabstand, d.h. bei groesseren Zeichen oder Bildern in einer Zeile wird der Zeilenabstand der 
                              Zeile erhoehen.
      238 03.02.05 TOBITFW:   Erkennung von versendeten Briefe mit neuer Kurz-ID korrigiert.
          07.02.05 BRAIN:     Schutzverletzung in der Favoritenstruktur beseitigt. Wird ein Fehler in der Favoritenstruktur (James) erkannt, wird sie geloescht.
          11.02.05 PRGLOAD:   Kommando Change() um Modus 4 erweitert:
                              Es werden Eingabewarnungen beim Speichern eines Datensatzes unterbunden.
          15.02.05 FFSTDVK:   Kennzeichen I beim Interessentenmodul bei Angeboten wird im Anschaumodus nicht mehr gesetzt.
                   DFEDLIB:   Der Supervisor kann jetzt im Archiv immer loeschen.
                   WINIFW:    Bei geloeschtem Hintergrundbild wird der Hintergrund auch bei sehr grossen Fonts streifenfrei angezeigt.
                   COMSOCK:   Bei aktiver Session am Host fuehrt ein Fehler bei der Anfrage einer Weiterverbindung durch einen 2. Client
                              nicht mehr zum schliessen der Haupsession des 1. Client. Vor allem in Verbindung mit Portscannern fuehrte dies
                              zu Verbindungsabbruechen.
                   DFDB:      Bei alternativer Wahl mit Shift-F1/Alt-F1 werden auch interne Datenbaenke vermerkt und mit Alt-F1 direkt geoeffnet.
                              Externe Dateien mit Kleinbuchstaben im Dateiname werden jetzt geprueft, ob sie als interne Datenbank angemeldet sind.
      239 16.02.05 DFED2LIB:  Bei ed_writerec() die Ausloesegruppe 99 von SET_RECDATA_PARENTDFFIRST auf 0 umgestellt.
          17.02.05 BRECLIB:   Indexfilter mit Laengenlimit eingebaut.
                              Kommandos SetIndexFilterImmediate und SetIndexFilterImmediate2 erweitert:
                              SetIndexFilterImmediate( Feldinhalt, Indexfeld1, Indexfeld2, FeldFilterlaenge)
                              SetIndexFilterImmediate2( Feldinhalt1, Feldinhalt2, Indexfeld1, Indexfeld2, Indexfeld3, FeldFilterlaenge1)
      240 18.02.05 FFEINK:
                   FFVERK:    Korrektur der Auftragsbestands-/Obligoberechnung bei Bezug zu Abrufauftraegen/Abrufbestellungen.
      241 19.02.05 FFARTBCH:  Beruecksichtigung eines TTS-Abbruch in der Auftragsbestands-/Obligoberechnung.
          21.02.05 CONLIB:    +/- auf dem Datumsfeld im Buchungsjournal korrigiert. Unter Umstaenden konnte der Cursor nicht weiterbewegt werden.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              ProdZaehler3Stellig: Wert 0/1. Default 0
                              Mit dem Wert 1 laesst sich der Zaehler beim Aufloesen von hirachischen Stuecklisten von einer Stelle auf 3 stellen erweitern.
                              Dafuer wird keine Ebene mehr in der Positionsnummer gespeichert. Dies wird vor allem bei Produkten mit mehr als 30
                              Unterstuecklisten bei Aufloesung in eine Produktion benoetigt.
                              ;ProdZaehler3Stellig=0
          22.02.05 FFSTDVK:   Stuecklisten koennen im Verkauf als Einzelteile in die Positionen aufgeloest werden. Dazu muss bei eine
                              J,K oder X Liste das Kennzeichen F im Artikelstamm hinterlegt wereden.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ListeImVerkaufAufloesen: Wert 0/1. Default 1
                              Wird eine Stueckliste auf einen Beleg abgerufen, wird sie auf 
                              Nachfrage als Einzelteile mit der ersten Ebene als Positionen aufgeloest.
                              Dazu muss das Kennzeichen 'F' im Artikelstamm gesetzt werden.
                              Mit dem Wert 0 kann die Aufloesung komplett abgeschaltet werden.
                              ;ListeImVerkaufAufloesen=1
                   FFPROD2:   Die Funktion "Alle Istwerte eintragen" traegt bei hirachisch aufgeloesten Stuecklisten in einer Produktion auch die K / K Eintraege
                              der zu fertigenden Unterbaugruppen mit Istwerten ein. Nur die erste Position des Endproduktes bleibt ohne Istwert.
      242 25.02.05 FFBDE2:    Beim BDE-Import werden jetzt geaenderte Kommenzeiten immer gespeichert.
      243 25.02.05 DFED2LIB:  ed_openDfOpen() Position des Listenfensters in einer Maske korrigiert (bei Strg-F3), auch wenn es mittig in der Parametermaske eingestellt ist.
          28.02.05 WINIFW:    Fensterposition bei nicht gezoomten Innenfenster korrigiert.
          01.03.05 FFVERT:    Interne Vertreterabrechnungsstruktur umgestellt.
          03.03.05 PRGLOAD:   Neues Kommando CommissionCalculation()
                              Damit kann eine Vertreterabrechung per Makro ausgeloest werden. Es kann nur von den offennen Posten aus 
                              ausgeloest werden.
                              CommissionCalculation( AusgabeFormularId, FunktionsModus, AbrechnungsModus, VonDatum, BisDatum);
                              FunktionsModus:
                                  1 - die Abrechung wird abgespeichert
                                  2 - es findet keine Selektion statt, es wird die bereits vorhandene Selektion verwendet
                                Bei Benutzung mehrere Optionen, die Optionsnummern addieren.
                              AbrechnungsModus:
                                000 - Rechnungsbetrag netto        Rd
                                001 - Zahlungseingang netto        Žd
                                002 - Rohgewinn                    Rd
                                003 - Rohgewinn mit Abzug       Rd,Žd
                                004 - Rechnungsbetrag mit Abzug Rd,Žd
                                100 - Rechnungsbetrag netto        Rd, Provisionsrechnungsbetr„ge verwendet
                                101 - Zahlungseingang netto        Žd, Provisionsrechnungsbetr„ge verwendet
                                102 - Rohgewinn                    Rd, Provisionsrechnungsbetr„ge verwendet
                                103 - Rohgewinn mit Abzug       Rd,Žd, Provisionsrechnungsbetr„ge verwendet
                                104 - Rechnungsbetrag mit Abzug Rd,Žd, Provisionsrechnungsbetr„ge verwendet
                              VonDatum, BisDatum:
                                Der Abrechnungszeitraum fuer den Selektionslauf (nur bei FuntkionModus ohne 2)
      244 04.03.05 DFEXTFNC:  Beim Nachladen von Daten in der Druckvorlage mit [D werden unterschiedliche Feldtypen in
                              den offenen Posten zu den Rechnugs/Gutschriftennummern nicht mehr mit der Meldung
                              "Ungleicher Feldtyp von 'rootnr' und 'index1' in [D..." angezeigt.
                   FAKT.INI:  Neuer Schalter in der Sektion [System]
                              InterneLagerBezeichnungen: Wert "XX;YY". Default ""
                              Um einzelne externe Lager auf interne Lager umzustellen, koennen hier
                              zweistellige Lagerbezeichnungen hinterlegt werden. Mehrere Angaben sind mit ; zu trennen.
                              Externe Lager buchen im Artikelstamm im Feld "in Gebrauch" ihre Mengen und 
                              verringern die Verfuegbarkeit im Feld LAGERBEST.
                              Interne Lager buchen im Artikelstamm in der Warenbedarfsmaske (F1 auf in Gerbauch)
                              im Feld int.Lag ihre Mengen und verringern nicht das Feld LAGERBEST und somit 
                              auch keine Verfuegbarkeit.
                              Geben sie korrekte Gross-/Kleinschreibung der 2-stelligen Lagerbezeichnung an!
                              ;InterneLagerBezeichnungen=""
                   PRGLOAD:   Kommado PrintFile() erweitert:
                              PrintFile( Ausgabeformular, Modus, Druckvorlage, Drucker, Kennzeichen, DvlOptionen)
                              Kennzeichen:
                                Kennzeichen setzten nach dem Druck
                              DvlOptionen:
                                Druckvorlagenoption vorgeben
      245 07.03.05 PRNLIB:    Druckvorlagenzuweisung [V10:fbVd] bei Angaben von inaktiven Forecastwerten (Grenzdatum) korrigiert.
                              Forecastwerte im Vorjahr bei Grenzdatum deaktiviert.
                   PRGLOAD:   Kommando PrintFile() erweitert:
                                Modus  512 (0x200): Ausgabe in die IFW-Tabelle
                                Modus 1024 (0x400): Ausgabe in die GDI-Druckvorschau
          16.03.05 STDMSK:    Die Druckerauswahl (F1 Druckeranschluss) von maximal 60 Zeilen auf 300 Zeilen erhoeht.
                              Der Puffer zum erfassen von Windowsdrucker von 100 auf 500 erhoeht (Fehler 122 bei EnumPrinters)
                   API_WIN:   IFW-Tabellen Funktion um Modus 04, 22, 23, 24, 25, 32, 33, 34, 35, 42, 43, 44, 45 erweitert.
                              Funktion der letzten Ziffer:
                              x2: Ist der Wert kleiner als 0 oder kleiner als der Wert eines folgenden Paramterfelds, wird die Zahl rot dargestellt.
                              x3: Wie x2 nur ohne 0 Ausgabe (Modus x1 und x2 kombiniert)
                              x4: Im nachfolgenden Paramterfeld sind Textattribute
                              x5: Wie x4 nur ohne 0 Ausgabe (Modus x1 und x4 kombiniert)
                              Attribute im Parameterfeld bei Modus x4 und x5:
                               0x0001    1 -> nicht anzeigen
                               0x0002    2 -> Fettdruck
                               0x0004    4 -> Euro-Zeichen anhaengen
                               0x0010   16 -> Text Rot
                               0x0020   32 -> Text Gruen
                               0x0040   64 -> Text Blau
                               0x0100  256 -> Hintergrund Rot
                               0x0200  512 -> Hintergrund Gruen
                               0x0400 1024 -> Hintergrund Blau
                               Bei Kombination der Farbwerte entstehen die entsprechenden Mischfarben
      246 17.03.05 FFFOCAST:  Forecastmodul erweitert:
                              - In der Forecastdatenbank lassen sich jetzt Monats und Wochenwerte eines ganzen Jahres speichern.
                                Die Monatswerte koennen ueber verschiedene Funktionen auf die Wochenwerte umgelegt werden.
                              - Der Forecastbedarf wird nie den Planbestand ueber maximalen Bestand auffuellen. Im notfall wird auch
                                eine halbe VPE als Bedarf ausgewiesen.
          23.03.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              BildschirmschonerLogoutMinuten: Wert 0/600. Default 30
                              Wird beim Benutzer im Feld "Falgs" ein $ eingetragen, so wird automatisch der Bildschirmschonerlogout
                              nach der hier angegebenen Zeit aktiviert. Die Benutzereinstellung unter "Benutzersystemeinstellungen"
                              spielen dann nur noch bei kuerzerer Zeitangabe eine Rolle.
                              ;BildschirmschonerLogoutMinuten=30
                   PRGLOAD:   Kommando OrderListToOrder um Modus 128 (0x80) erweitert
                                Mode               : 128 (b7 0x80) Der bestaetigte Termin wird gleich dem Wunschtermin gesetzt  
                                                     Im Bestaetigungsnummernfeld wird der Text "Automatik" eingetragen.
          24.03.05 FFFOCAST:  Braune Anzeige im Planzahlkompensationsmodus hinter abgelaufener Auftragsmenge korrigiert.
                              Berechnug von Forecastzahlen hinter dem 2 Jahresarray korrigiert.
          25.03.05 APIWIN:    Geteilte IFW-Tabelle weiter bearbeitet.
          30.03.05 PRNLIB:    Neue Druckvorlagenzuweisung [V10:rCxx]
                              Damit kann eine Pruefung der Herstellerreferenz eines Artikels vorgenommen werden.
                              Folgende Voraussetzungen muessen erfuellt sein:
                              - Das IFW-Modul Herstellerreferenz ist installiert
                              - Die aktuelle Datenbank besitzt ein Feld "ArtNr". Das Feld un der Inhalt wir verwendet zum 
                                Aufrufen der Herstellerreferenzliste des in dem Feld angegebenen Artikels.
                              - Im zugewiesenen Feld Cxx steht die zu pruefende Referenz.
                              Folgende Ergebnisse werden in Vxx zurueckgegeben:
                              -1 Herstellereferenzmodul nicht vorhanden oder Feld ArtNr nicht vorhanden.
                               0 Keine Referenzangabe fuer den Artikel notwendig
                               1 Referenzangabe notwendig aber in Cxx ist nichts enthalten
                               2 Referenzangabe gefunden, aber gesperrt (mit Kennzeichen ! in der Referenzliste)
                               3 Referenzangabe nicht in der Liste entahlten (ungueltige Angabe)
                               4 Referenzpruefung durch das Zeichen '$' an erster Stelle unterbunden
      247 31.01.05 FAKT.INI   Schalter Herstellerreferenz um Modus 3 und 4 erweitert.
                   PRGLOAD:   Kommando OrderListToOrder um Modus 256 (0x100) erweitert
                                Mode               : 256 (b8 0x100) Es werden nur Eintraege uebernommen, die eine korrekte
                                                     Herstellerreferenz tragen (IFW-Zusatzmodul Herstellerreferenz notwendig)
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ForeCastModus: Wert 0/2. Default 1
                              Mit dem Wert laesst sich welche Artikel im Stamm bei der Forecastberechnung berechnet werden.
                              0 -> alle Artikel werden berechent
                              1 -> nur lagerfaehige Artikel werden berechnet (default)
                              2 -> nur Stuecklisten (ohne J-Listen) und Arbeitsgaenge (Lagerbuch.Art M/P) werden berechnet
          01.04.05 FFFOCAST:  Forecastberechnung optimiert
      248 04.04.05 FFVERT:    Fehler in der Selektion der Vertreterabrechnung (seit 03.03.05 Rev. 243) beseitigt.
          05.04.05 DFEDLIB:   Seriendruck auch mit GDI Druck korrigiert.
                   PRNLIB3:   Neues Druckvorlagenkommando [VnDelLine].
                              Damit laesst sich die aktuelle Zeile im Vn-Array loeschen.
          06.04.05 VIDF:      Neue Spalten-Optionen fuer die IFW Tabelle:
                              #74 - Wie Option 73 nur ohne Farbbalken
                              #701
                              #711
                              #721
                              #731
                              #741 - Wie die Optionen #70-#74 nur ohne Darstellung wenn der Istwert 0 ist.
      249 07.04.05 PRGLOAD:   ProdCheckSelection() Modus 3 korrigiert.
                   FFORCAST:  Im Forecast Planmodus mit Grenzdatum, wird ein Forecastbedarf fruehstens im Grenzdatum
                              (i.d.r. aktuelle KW) ausgewiesen. Bei einer vorhandenen Lieferzeit wird entsprechend erst
                              der Planlagerbestand des Grenzdatums plus Lieferzeit betrachtet.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ForeCastBedarfVorGrenzdatum: Wert 0/1. Default 0
                              Mit dem Wert 1 kann bei der Forecastberechnung ein Forecastbedarf vor dem Grenzdatum
                              ausgewiesen werden. Dabei wird in der Woche mit der ersten Veraenderung die erste Bedarfs
                              berechnung ausgeloest.
                              Mit dem Wert 0 wird ein Forecastbedarf fruehstens im Grenzdatum (i.d.r. aktuelle KW) ausgewiesen.
                              Bei einer vorhandenen Lieferzeit wird entsprechend erst der Planlagerbestand des Grenzdatums plus
                              Lieferzeit als erstes Woche fuer die Bedarfsberechnung betrachtet.
                   FFFOCAST:  Forecastberechnung beim Onlinespeichern ueber Cache optimiert.
          08.04.05 DFLIB:     Wegspringen des Fokus bei Einzelselektion von Eintraegen mit der Leerzeichentaste nach einem Selektionslauf
                              beseitigt.
          11.04.05 FFFOCAST:  Ein Aenderungslogbuch wird mitgeschrieben
                   WINLIB:    Option '\x5' beim Speichern einer Textzeile im Fliesstext:
                                Sie wird als erste Zeile eingefuegt. Passt sie nicht mehr ins Feld werden soviele Zeilen am Ende geloescht, bis sie passt.
                              Option '\x6' beim Speichern einer Textzeile im Fliesstext:
                                Autoumbruch einstellen
                              Folgende Optionen sind jetzt verfuegbar:
                              0x02 -> Text anhaengen
                              0x03 -> Text am Anfang einfuegen
                              0x04 -> Erste Zeile ersetzen, wenn die erste 3 Zeichen gleich sind, ansonsten als erste Zeile einfuegen
                              0x05 -> Text am Anfang einfuegen. Wenn er von der laenge nicht passt, dann werden am Ende soviele Zeilen geloescht,
                                      bis der Text am Anfang passt (Logbuchfunktion).
                              0x06 -> Zeilenbreite des Autoumbruchs des Textes einstellen. Die Breite wird als Zahl hinter das Kommando geschrieben.
                                      Beispiel "\x660" stellt die Breite auf 60 Zeichen ein. Dabei steht \x6 fuer Binaer 6.
                                      Die binaere Zuweisung kann mit einer Druckausgabe folgendermassen erzeugt werden:
                                      [Vt:=[t]@"\x6"][Vt:=[Vto1<]60]
          13.04.05 FFFOCAST:  Erweiterte Forecastmaske mit Vertriebsplanungsfelder aktiviert.
      250 15.04.05 FFPROD:    Produktionsmodul erweitert:
                              Im PPS bereich kann jetzt in der Produktion fuer benoetigte Halberzeugnisse und fuer den geplanten Fertigungstermin des Endprodukts
                              zwei Werte in Wochen hinterlegt werden. Sie werden zum Dispotermin hinzugezaehlt.
                              Die Termine in den Produktionspositionen und deren Einlastung im Dispolagerbestand werden jetzt unterschiedlich plaziert:
                              Hergestelltes Produkt (1.Position K/K):
                                Dispodatum + FEFertigWochen*7
                              Hergestelltes Produkt (Positionen M/K und bei Hirachie K/K):
                                Dispodatum + HEBenoetigtWochen*7
                   PRGLOAD:   Kommando ProdSetSollProdTermin() erweitert:
                              ProdSetSollProdTermin( SollMenge)
                              ProdSetSollProdTermin( SollMenge, DispoTermin)
                              ProdSetSollProdTermin( SollMenge, DispoTermin, ProduktionsBeginn)
                              ProdSetSollProdTermin( SollMenge, DispoTermin, ProduktionsBeginn, HEBenoetigtDispoPlusWo, FEFertigDispoPlusWo)
                                Ist die SollMenge == 0, wird keine Sollmengenaenderung durchgefuehrt.
                                Ist der DispoTermin "", wird keine Dispo-Terminaenderung durchgefuehrt.
                                Ist der ProduktionsBeginn "", wird keine Produktionsbeginnaenderung durchgefuehrt.
                                Wird ein Wert bei HEBenoetigtDispoPlusWo ODER FEFertigDispoPlusWo angegeben, so werden 
                                beide Werte in der Produktion gesetzt. Ist dabei einer der beiden Werte ohne Angabe wird
                                ein Wert von 0 Wochen gesetzt.
                              Das Kommando SelectedProdSetSollProdTermin wurde entsprechend dem Kommando ProdSetSollProdTermin ebenfalls erweitert.
          18.04.05 FFFOCAST:  Beim Artikelspeichern mit "Onlinekalkulieren" wird das Grenzdatum fuer die Forecastzahlen immer neu gesetzt und die Zahlen neu berechnet.
          21.04.05 DFEDLIB:   F2 Exit bei IGG_REFRESH entfernt -> Bei der Belegbearbeitung konnt man ein Nachladefeld nicht mehr verlassen (mode&EDIT_ONE).
      251 27.04.05 FFPERS:    Erweiterung der BDE-Personalzeituebertragung. In Verbindung mit dem IFW-Modul "Auftragsnachkalkulation"
                              werden neuen Eintraege Typ 'P' in die Personalstundenerfassung uebernommen. Sie beinhalten die Die Arbeitszeiten pro Person, pro Tag,
                              pro Auftrag, pro Kostenstelle mit den Stundenverrechnungsaetzen der Personen. Diese Daten werden bei der Auftragsnachkalkulation
                              automatisch uebernommen. Der Auftragsbezug wird aus der zugeordneten Produktion uebernommen. Der Kostenstellenbezug aus dem
                              zugeordneten Artikel, Feld "Kostenstelle" unter "weitere Parameter" im Artikelstamm.
                   FFKDSTAT:  Das Modul IFW-Auftragsnachkalkulation summiert jetzt auch die Materialien auf zugeordneten Produktionen mit auf.
                              Als Grenzdatum wird das Dispodatum verwendet, wenn leer das Anlagedatum.
                              Es werden alle K M und E Positionen beruecksichtigt.
                              Das hergestellte Produkt KK 1. Positione (??1000 oder 0) wird nicht beruecksichtigt.
                              Alle KK-Positionen werden abgezogen (hierachische Produktion hergestellte Halberzeugnisse)
                              Mit den Kennzeichen 'O' und 'T' kann die Summierung der Wareneingaenge zum Auftrag gesteuert werden
                              (siehe FAKT.INI Schalter "AuftragsnachkalkulationWEPositionen").
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ;AuftragsnachkalkulationWEPositionen: Wert 0/2. Default 0
                              ;Bei der Auftragsnachkalkulation werden alle Positionen aus dem Wareneingang die
                              ;einem Auftrag zugeordnet sind in der Nachkalkulation summarisch unter ihrer Kostenstelle
                              ;aufgefuehrt. Mit dem Wert laesst sich steuern, welche Positionen summiert werden sollen:
                              ;0 -> '' alle Positionen werden summiert.
                              ;1 -> 'O' nur Positionen ohne Artikelnummer werden summiert.
                              ;2 -> 'T' nur Positionen ohne Artikelnummer oder ohne Lagerverwaltung werden summiert.
                              ;In der Auftragsnachkalkulationsmaske wird das Kennzeichen 'O' oder 'T' abhaengig der Vorgabe
                              ;bei Neuanlage einer Auftragsnachkalkulationsmaske gesetzt. Die Einstellung kann in der
                              ;Auftragsnachkalkulationsmaske auch auftragsspezifisch geaendert werde und durch einen erneuten
                              ;Berechnungslauf die Daten aktuallisiert werden.
                              ;AuftragsnachkalkulationWEPositionen=0
          03.05.05 FFFOCAST:  Min/Max Lagerbestandberechnung aus Mengen von uebergeordneten Produkten korrigiert. Sie waren doppelt eingerechnet.
      252 13.05.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "FIBU":
                              AddiereSiloerloeseZuFrachterloese: Wert 0/1. Default 1
                              Der Schalter findet nur bei Installationen in der Beton-Branche Verwendung.
                              Er beeinflusst die FIBU-Stapelerzeugung und die Lieferscheinstatistik.
                              Mit dem Wert 0 bleiben bei Berechnung der Frachterloese aus den Verkaufsbelegen die Werte aus dem
                              Feld "Erloes Silo" aus der Erloesaufteilung einer Rechnungsposition unberuecksichtigt. D.h. als Frachterloes
                              wird nur der Wert aus dem Feld "Frachterloes KFZ" verwendet.
                              Mit dem Wert 1 werden beide Werte addiert als Frachterloes ausgewiesen.
                   FFBETON:   Bei den Baustellen kann jetzt zu einem Artikel ein Verpackungspreis hinterlegt werden.
                              Er wird wie die Frachtkosten behandelt und in den Belegpostionen im Feld "Erloes Silo" in der Erloesaufteilung
                              eingetragen. Der Verkaufspreis ist um den Verpackungspreis erhoeht. In Verbindung mit dem 
                              Schalter "AddiereSiloerloeseZuFrachterloese" in der fakt.ini kann die Einbeziehung der
                              Verpackungskosten in die Frachtkosten bei der FIBU-Stapelerzeugung und der Lieferscheinstatistik gesteuert werden.
      253 20.05.05 FFEINK:    
                   FFVERK:    Verbindlichkeiten und Offene Posten koennen jetzt buchungsaktiv importiert werden. Sie koennen ebenfalls mit
                              dem Kommando EditFile() Modus 8 "Onlinebuchen" buchungsaktiv bearbeitet werden.
          24.05.05 PRNLIBX.H: Vadr Adressvariablen vergroessert: Adresszeilen von 34 Zeichen auf 96, Telefon/Fax von 15 auf 63 Zeichen.
      254 01.06.05 WINIFW:    Die Aktionsbuttons in der Aktionsbuttonleiste lassen sich jetzt mit einem Popupmenu (Rechtklick) fixieren.
                              Fixierte Buttons behalten immer ihre Position bei. Sie koennen dann auch immer mit der Gleichen ALT-Zahlentaste aktiviert werden.
          02.06.05 FFLISTAT:  Modul "lieferantepsezifische Artikelstatistik" im Warengruppenbereich korrigiert.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              HerstellerreferenzArtikelkennzeichen: Wert 0/1. Default 0
                              In Verbindung des Moduls "Artikel Herstellerreferenz im Einkauf" 
                              l„át sich mit dem Wert 1 die Prfung der im Artikelstamm hinterlegten Artikelreferrenzen
                              zu einem Artikel abhaengig vom Artikelkennzeichen 'J' schalten. Mit dem Wert 1 werden nur Artikel
                              geprueft, die das Kenneichen 'J' enthalten. Mit dem Wert 0 werden immer alle Artikel mit wenigstens
                              einer Herstellerreferenz geprueft.
          03.06.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              ProdPruefungAutoRoHSErsatz; Wert 0/1. Default 0
                              Wird bei der Produktionspruefung auf Lagermaterial die Ersatzartikel aus der Freigabeliste beruecksichtigt,
                              so wird mit dem Wert 1 automatisch in der Freigabetabelle in der Zeile 7 der entsprechende RoHS Artikel
                              eingesetzt. Folgende Bedingungen muessen erfuellt sein:
                              1. Es muss eine Fehlmenge vorhanden sein
                              2. Der Originalartikel darf nicht leer sein
                              3. Der Originalartikel darf kein RoHS Artikel sein (Kein angehaengtes R an der Artikelnummer "ArtNrR")
                              4. Die Zeile 7 in der Freigabetabelle muss leer sein
                              5. Die Zeile 8 in der Freigabetabelle muss leer sein (Mussartikel)
                              6. Der RoHS Artikel muss existieren
                   PRGLOAD:   Makrokommando ProdCheckSelection erweitert:
                              ProdCheckSelection( Modus);
                              ProdCheckSelection( Modus, Pruefdatum);
                              ProdCheckSelection( Modus, Pruefdatum, ErsatzartikelVerwenden);
                              Damit koennen Produktionspruefungen durchgefuehrt werden.
                              Modus 0: Dispobestand auf Produktions-Dispotermin
                              Modus 1: Dispobestand auf vorgegebenes Datum
                              Modus 2: Materialprfung auf aktuelles Lager
                              Modus 3: Materialprfung auf aktuelles Lager ohne Beruecksichtigung verwendeter Unterbaugruppen.
                              ErsatzartikelVerwenden:
                               Wird hier ein Wert von 1 angegeben, so werden Ersatzartikel aus der Freigabeliste bei Bedarf
                               immer verwendet und eingesetzt. Diese Funktion ist nur bei Modus 2 und 3 moeglich.
      255 06.06.05 PRGLOAD:    Ohne vorgegebenem Pruefdatum, wird die zur Verfuegung stehende Ersatzware aus dem Lagerbestand
                               abzueglich Auftragsmengen und eingelasteten Produktionionsmengen ermittelt.
                               Nur bei ausreichender Menge findet ein Ersatz statt.
                               Wird beim Pruefdatum ein Datum angegeben, so wird der Dispobestand des Pruefdatums als verfuegbare
                               Menge benutzt. Dabei ist die verfuegbare Menge der geringste Dispobestand einer Woche von der aktuellen 
                               Kalenderwoche bis zur angegebenen Kalenderwoche. Ist das Pruefdatum kleiner als die aktuelle Woche 
                               so wird der Dispobestand der aktuellen Woche benutzt.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              AuftragDispoWunschTermin; Wert 0/1. Default 0
                              Grundsaetzlich werden Beleg im Dispolagerbestand mit ihrem Liefertermin eingelastet.
                              Mit dem Wert 1 laesst sich dies fuer Auftraege umstellen. Ist der Liefertermin leer und
                              ein Datum im Wunschtermin enthalten, so wird der Wunschtermin zur Einlastung verwendet.
                              Mit dem Wert 0 wird immer der Liefertermin verwendet.
                              Zusaetzlich werden in der Dispouebersicht beim Wert 1 die Auftraege auf Wunschtermin mit
                              einem kleinen 'a' angezeigt ('A' steht fuer Auftraege mit Liefertermin). In der Dispotafel
                              werden Auftraege mit Wunschtermin mit blauen Zahlen dargestellt.
          13.06.05 PRNLIB:    Neue Druckvorlagenzuweisung [Vt:O und [Vt:L
                   BTRIEVE:   FileSpec-Struktur auf >=6.0 umgebaut, so dass auch die Dateiversion erkannt werden kann.
                   INSTMASK:  Option /v fuer Btrieve-Versionsanzeige, Dateien <6.0 werden immer konvertiert.
          14.06.05 DFIMP:     Das Zeichen 'ø' (Gradzeichen Celsius) beim Import bei CharToOem Umwandlung beruecksichtigt (Option @U).
      256 16.06.05 FFPROD2:   Ersatzartikelverwendung bei der Produktionspruefung erweitert:
                              - Artikelnummerneintraege mit der gleichen Artikelnummer wie der zu ersetzende Artikel
                                werden nicht mehr verwendet.
                              - Eingetragene Istwerte werden bei der neuen Sollwertermittlung korrekt beruecksichtigt.
                   PRNLIB:    Druckvorlagenkommando [Vx:dyDatum] eingebaut.
                              Es liefert in Vx maximalen Dispobestand innerhalb des Intervall Vx und Datum zurueck.
                              Vx enthaelt beim Aufruf den startindex, Datum den Endindex.
                              Vx enthaelt nach dem Aufruf den gefundenen Maximalbestand
      257 21.06.05 FFBDE2:    BDE-Stechkartendaten lassen sich ueber eine BDE-Kartentabelle umwandeln. Die Tabelle
                              befindet sich im Menu "System|BDE-System|BDE-Karten".
                   FFPPS2:    Druckkommando [VppsCTwrite] korrigiert.
      258 24.06.05 BDE.PRC:   Programm Datenkarten werden jetzt als Unbekannt angezeigt, wenn sie nicht in der Tabelle sind.
                              Datenfeldlaenge von 12 auf 17 erhoeht.
                   BDE:       BSC-IP Kommunikation Timeout angepasst
                   BDE.PRC:   Beim Gehen wird jetzt automatisch eine laufende Produktion gestopt.
      259 27.06.05 FFFOCAST:  Forcast Auftragskompensation von "gesamter Auftragsmenge" auf "Auftragsmenge von Auftragsdatum
                              zurueck" umgestellt.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ForeCastAuftragskompensation: Wert 0/1. Default 1
                              Mit dem Wert 0 kann bei aktivierter Forecast-Auftragskompensation die gesamte in Auftrag stehende 
                              Menge vom Plan abgezogen werden, unabhaengig von Liefertermin der Menge (auch Auftraege ohne Termin).
                              Kennzeichen 'F' wird in der Forecastmaske gesetzt
                              Mit dem Wert 1 werden bei aktivierter Forecast-Auftragskompensation die Auftragsmengen rueckwirkend von
                              ihrem Liefertermin (incl. der Lieferwoche) vom Plan abgezogen. Auftraege ohne Termin werden dabei nicht
                              vom Plan angezogen. Kennzeichen 'G' wird in der Forecastmaske gesetzt
                   PRGLOAD:   Neues Kommando  ForecastCalculationAll()
                              Damit kann die Funktion "Forecastzahlen neu kalkulieren" ausgeloest werden.
                   PRGLOAD:   Kommando DispoSelection Modus 32 modifiziert. Es wird jetzt auch eine Selektion vorgenommen
                              wenn eine dynamische Reichweite fuer den Maxbestand hinterlegt ist, aber der berechnete Maximalbestand
                              0 ist:
                              Modus 32: In Verbindung mit dem Forecastmodus werden nur Eintraege selektiert,
                                        die einen Maxbestand groesser als der Forecast-Maxbestand enthalten.
                                        Der Maxbestand muss ungleich 0 sein oder eine dynamische Reichweite besitzen.
                                        Ohne Forecastmodus wird als MaxBestand die VPE genommen. VPE-Werte kleiner 1 werden als 1 gewertet.
          28.06.05 FFBDE2:    Timeout bei Fehlermeldungen von 10 auf 3 Sekunden gekuerzt.
      260 29.06.05 FFPERS:    Fehler bei der Uebertragung von Autragszeiten zur Personalerfassung (BDE-Personalzeituebertragung) beseitigt.
                              Wird kein Auftragsbezug gefunden, so wird jetzt ein Eintrag ohne Auftragsbezug vorgenommen.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "FIBU":
                              BuchungsstapelAuftragsaufloesung: Wert 0/1. Default 0
                              Der Schalter beeinflusst die FIBU-Stapelerzeugung:
                              Mit dem Wert 0 werden Belege bei Warengruppenaufloesung nur pro Erloeskonto und ggf. Kostenstelle aufgesplittet.
                              Mit dem Wert 1 werden Belege zusaetzlich nach Auftragsnummer in den Positionen aufgeteilt. Bei Rechnungen ist
                              das Feld mit Strg-F3 in der Rechnungsposition zuschaltbar.
                   BDEPORT:   Wird vom BSC Terminal ein Karteneintrag mit 0 Zeichen laenge empfangen, so wird der Eintrag ignoriert (geloescht).
                              BSC-Telegramme "uU" werden aus der Queue geloscht
      261 30.06.05 FAKTMAIN:  Beim Ummelden zu einem anderen Mandant, wird die Configurationsdatei zwangsweise auf den Default gesetzt,
                              falls keinerlei Einstellungen gespeichert sind.
                   FFEINK:    
                   FFVERK:    Korrektur der TTS-Abschaltung bei buchungsaktivem Import der Verbindlichkeiten und Offene Posten.
                   FFDATEV:   Bei Datev-Disketten den Wert "Letzte Blockposition" im Verwaltungssatz um eins korrigiert.
          01.07.05 FFPERS:    Generierung der 'P' Eintraege bei der BDE-Zeituebertragung und Modul Auftragsnachkalkulation korrigiert.
      262 04.07.05 FFDATEV:   DATEV-KNE Format aktiviert (Kontonummernerweiterung). In den DATEV-Parametern kann das Format und die
                              Sachkontonummernlaenge definiert werden.
                              Belegnummern koennen jetzt bis zu 12 Stellig alphanumerisch uebertragen werden.
          05.07.05 MAI#DEF:   MAI_TYPE_EXTWINDOW_FTAKEDATE -35 eingebaut:  // wie -25 Erweiterungsfenster aufrufen + MAI_TYPE_FTAKEDATE
          06.07.05 MSCOMCON:  Der WWW-Client meldet sich jetzt unter dem Namen "CLIENTNAME" an, falls vorhanden.
                              Der Name wird dabei um TS. am Anfang erweitert (TS.CLIENTNAME).
                              Ansonsten unter dem Namen "COMPUTERNAME". Damit kann eine Terminalserver-Session erkannt werden
                              Der WWW-Client erzeugt jetzt eigene INI Eintraege im Verzeichnis der Form ini_COMPUTERNAME.ini
      263 07.07.05 FFFOCAST:  Bei der Forecastberechnung kann beim Artikel ein Forecastberechnungsdatum angegeben werden, ab
                              welchem der Forecastbestand fruehstens geprueft wird. Damit ist es moeglich verfruehte Forecastbedarfe
                              zu unterbinden. Der Anwender kann so Produktionen oder Bestellungen die zu einem etwas spaeteren Zeitpunkt
                              eintreffen oder geplant sind freizugeben, ohne einen verfruehten Forecastbedarf zu erzeugen.
      264 11.07.05 FFPROD2:   Bei der Produktion-Materialpruefung wird bei manuellem Aufruf das Pruefdatum des Dispolagerbestands von
                              einsetzbarer Ersatzware abgefragt. Ist es Leer oder liegt es ausserhalb des Dispozeitraum (aktuelles und naechstes Jahr), wird
                              der verfuegbare Lagerbestand aus "Lagerbestand - Auftrag - Produktion" verwendet.
          12.07.05 REQUEST:   Fragefenster der Position "22" werden am unteren Rand des letzten Fensters plaziert.
                   FFBDE:     Beim BSC-Terminal wird der Leser jetzt immer eingeschaltet, wenn ein Eingabefeld aktiviert wird.
      265 18.07.05 PRGLOAD:   Neues Makrokommando ProdCompletion:
                              ProdCompletion( Modus);
                              Damit kann ein Produktions Masterabschluss durchgefuehrt werden. Ueber eine
                              Schleife von selektierten Produktionen kann so der Abschlussvorgang automatisiert werden.
                              Modus 0: Evt. vorhandene Meldungen aus Pruefmakros werden angezeigt.
                              Modus 1: Es werden keinerlei Meldungen angezeigt.
                   DFED3LIB:  Erweiterungsfenster in einer extra Datenbank werden bei vorhandenem Stammdatenarchiv
                              nicht mehr im Archiv neu angelegt, sonder im aktiven Bereich.
          19.07.05 DFLIB:     Maximale Verschachtelung beim Import von 25 auf 100 erhoeht.
                              (Meldung "Zu tiefe Verschachtelung beim Import (Tiefe %d)!")
      266 23.07.05 BRECLIB2:  Neue Suchfunktion "Nicht Teilstring".
                              get_nextrec_extended() liefert jetzt den Datenbereich der Teilwortsuche mit zurueck, so dass in 
                              diesen Daten die gewuenschte Suchfunktion ausgeloest werden kann.
                   DFEDLIB:   Bei der Teilsuche mit F7 werden jetzt alle eingegebene Worte mit "UND" gesucht.
                              Leerzeichen werden dabei als Trenner verwendet. Will man ein Leerzeichen suchen so muss das Zeichen '_'
                              verwendet werden.
          26.07.05 PRGLOAD:   Neues Kommando TextSearch()
                              TextSearch( Titel, Suchtext, Feldnummer1);
                              TextSearch( Titel, Suchtext, Feldnummer1, Feldnummer2, ... , Feldnummer8);
                              Damit koennen Wortteile in Feldern gesucht werden. Es wird eine schnelle lineare Suche ausgefuehrt.
                              Es werden alle Datensaetze selektiert die alle angegebenen Woerter wenigstes einmal in den
                              angegebenen Feldern enthalten.
                              Wird ein Titletext angegeben, so wird eine Benutzereingabe des Suchtextes eingeblendet.
                              Wird kein Titeltext angegeben, wird sofort mit der Suche von "Suchtext" begonnen.
                              Wird kein Suchtext angegeben, so wird der letzte Suchtext der Datenbank automatisch vorgeschlagen
                              und auch dort vermerkt.
          27.07.05 FAKTEDIT:  Beim Speichern von Belegen den Rueckgabewert von FNC_UMSATZBUCHEN im TTS-Abbruch beruecksichtigt.
                   DFREQUEST: Zaehlrequester werden mittig vom Bildschirm angezeigt.
          28.07.05 PRGLOAD:   SetItemAccessLevel und SetItemAllAccessLevel setzt jetzt ein Maskenrefresh zur korrekten Anzeige
                              inaktiv geschalteter Felder.
      267 01.08.05 DFEDLIB:   Bei der Makroausfuehrung mit F10 aus geoeffneter Maske wird eine Benutzerkollision korrekt erkannt.
          04.08.05 FFART...:  Auftraege buchen jetzt in der Kundenstatistik den Auftragsbestand immer auf den Liefertermin,
                              auch bei gesetztem Schalter AuftragDispoWunschTermin in der FAKT.INI.
                   FFEINK:    Beim Abfragen von Lieferanten auf einen Anfrageposition, wird die Waehrung mit abgegelichen.
                   WINIFW:    Baum mit Icons in der IFW-Tabelle eingebaut.
      268 09.08.05 FAKTEDIT:  LagerMinusBlocker in der Belegbearbeitung aktiviert:
                              1. Der gesamte Vorgang (incl. ChgDat-Speicherung) ist im TTS gekapselt
                              2. Es wird immer erst gebucht, dann gedruckt
                              3. Die Druckmeldung liegt ausserhalb des TTS-Laufs
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              LagerMinusBlockerAktiv: Wert 0/1. Default 0
                              Mit dem Wert 1 koennen keine negativen Gesamtbestaende gebucht werden. Es
                              wird die Meldung "Der Lagerbestand oder Wert l„át diese Belegverarbeitung nicht zu! (Zurck)"
                              ausgegeben.
                              Mit dem Wert 0 findet keine Pruefung beim Buchen statt.
          10.08.05 FFLAGBCH:  Lagerbuchungen mit LagerMinusBlocker versehen. 
                   FFPROD2:   Produktionsabschluss mit LagerMinusBlocker versehen. 
      268 10.08.05 FFBDE:     Neuer Schalter in der FAKT.INI in der Sektion "System":
                              BDETagesuebertragExtraSpeichern: Wert 0/1. Default 1.
                              Mit dem Wert 1 erzeugt das IFW bei einer Anwesenheit ueber Mitternacht Eintraege um 23:59:59 pro Tag
                              mit den anteiligen Stunden. Arbeitet eine Nachtschicht ueber Mitternacht und werden die gesamten
                              Anwesenheitsstunden am Ende der Schicht am naechsten Tage in der Personalzeit benoetigt, so
                              kann der Wert auf 0 gesetzt werden.
                              Mit dem Wert 0 werden keine extra Eintraege pro Tag erzeugt, sondern die Gesamtzeit zum Gehenzeitpunkt
                              gespeichert. So steht die gesamte Arbeitszeit an dem Tag in der Personalstatistik, an dem die
                              Schicht endet.
      269 29.08.05 FFPERS:    Neuer Schalter in der FAKT.INI in der Sektion "System":
                              PersonalToleranzKompensiertNegativeUeberzeit: Wert 0/1. Default 0
                              In der Personalzeiterfassung wird ein Ueberstundenkonto gefuehrt.
                              Pro Woche kann eine Toleranzzeit angegeben werden, die mit dem Lohn automatisch
                              abgegolten ist. D.h. erst wenn eine gewisse Ueberstundenanzahl innerhalb eines
                              Monats erreicht wird, zaehlen diese als Ueberstunden.
                              Ist das lfd. Ueberstundenkonto im Vormonat negativ, so erfolgt eine Kompensation
                              der Fehlstunden erst bei einer Uebrstundenanzahl ueber der Toleranzzeit.
                              Mit dem Wert 1 erfolgt eine Kompensation eines negativen Ueberstundenkontos sofort. Die
                              Toleranzzeit setzt erst nach vollstaendiger Kompensation ein.
          31.08.05 COMCON:    Bei einem TimeOut einer WWW-Session wird auch der Printerspooler geschlossen (Problem mit gepoeffneten
                              Spoolerdateien nach einem Verbindungsabriss).
                              Auf dem Host wird bei der Druck-Dateiuebertragung die Anzahl der gesendeten Zeichen und die Maximalgroesse angezeigt.
                   WINIFW:    WWW-Clint Rev 1.3-1 aktiviert: Bei einer Dateiuebertragung wird die Anzahl empfangener und noch zu empfangenden Zeichen
                              angezeigt.
          01.09.05 DFEDLIB:   Bei Speichermakros vor Frage klappt die Maske nicht mehr zu, wenn das Speichern durch das Makro verhindert wird und der
                              Eingabefokus auf einem Feld mit einer Datenauswahlmoeglichkeit (F1) steht.
          06.09.05 WINIFW:    Mit dem Schalter "BenutzeWindowsPopupMenue" in der Sektion [System] kann testweise ein Windows Popup-Menu aktiviert werden.
          07.09.05 PRNLIB:    Anzahl Zahlenvariablen in den Druckvorlagen von 32 auf 50 erhoeht (0-49)
                   IFWTAB:    Neue Funktion mit Splitterwindow, Feldcursor und Baumbeschriftung aktiviert.
                              Die Beschriftung beim Baum kann mit dem Trennungsschluessel #TXT# angegeben werden ("Ebene#TXT#Beschriftung").
      270 07.09.05 FFPROD2:   Die RoHS Ersatzartikelverwendung bei der Produktionspruefung erweitert:
                              (Schalter ProdPruefungAutoRoHSErsatz)
                              In Zeile 7 wird jetzt auch der RoHS Artikel eingetragen wenn in der Zeile 8 ein Mussartikel hinterlegt ist.
                              Der aktuelle Artikel (Aus der Positionsmaske) muss der Mussartikel (Zeile 8) sein.
                              Dabei wird in der Originalposition in der Zeile 7 der RoHS Artikel eingtragen und die Zeile 8 nicht veraendert.
                              Bei Einsatz von Ersatzware wird in der NEUEN Position die Zeile 8 auf den RoHS Artikel abgeaendert.
          08.09.05 FAKTEDIT:  Bei Speichern eines Beleges ist die Pruefungsschleife, ob Aenderungen stattgefunden haben,
                              vom Anwender nicht mehr unterbrechbar ( edit_datazwsp_checkChg()).
          09.09.05 STDPRJ:    Bei defekter James-Datei wird diese verworfen und der Favoritenmanager neu initialisiert.
          14.09.05 BRECLIB:   In einer Datenbank kann jetzt auch ein Linearer Filter aktiviert werden.
                              Mit den beiden Kommandos 
                              ClrLinearFilter();
                              SetLinearFilter( Modus, Feldnummer, Inhalt);
                              kann der Filter gesetzt und geloescht werden.
                              Modus: 1 Inhalt von Feld Feldnummer == Inhalt
                              Modus: 2 Inhalt von Feld Feldnummer != Inhalt
                              Modus: 3 Inhalt als teilwort im Feld Feldnummer enthalten (keine Gross/Kleinschreibung).
          16.09.05 WINIFW:    Button der IFW-Tabelle korrekt eingedrueck angezeigt und Umschaltung mit dem Button reaktiviert.
          19.09.05 WINIFW:    Die WWW-Client Anmeldung unter dem Namen "CLIENTNAME" mit der Kennung TS. wird nur noch angewandt,
                              wenn CLIENTNAME nicht den Wert "Console" enthaelt.
      271 20.09.05 FFPROD2:   Beim Produktionsabschluss (auch Masterabschluss) wird die Produktionsdatenbank neu 
                              geoeffnet, falls sie duch ein Makro geschlossen wird (Fehler -219 beim Splitt+Abschluss).
          23.09.05 BRECLIB:   Linearer Filter korrigiert.
          26.09.05 FFARTBCH:  Die Pruefung auf Waehrung und leeren Preisen in den Positionen beim Belegspeichern
                              von "Preisfeld ist nicht 0" auf "Preisfeld ist vorhanden" umgestellt.
          27.09.05 DFIMP:     Das Zeichen "Quadrat" beim Import bei CharToOem Umwandlung beruecksichtigt (Option @U).
                              Beim Import werden die Text- Zahlen- und Datumsvariablen bei der Funktion "vorhandene aendern"
                              beim 2 Leselauf gepuffert. Somit schreiben sie sich nicht doppelt fort.
                   PRGLOAD:   Kommando ExecuteItemFunction() erweitert
                              ExecuteItemFunction( Feldnummer);
                              ExecuteItemFunction( Feldnummer, Modus);
                              Modus: 1 Nicht vorhandene Datensaetze werden nicht mit Fehler -409 gemeldet.
                              Modus: 2 Es wird nicht versucht ueber den Pfad "Nummer" (Feldnummer 32) zuzugereifen,
                              sondern mit der Zugriffsnummer des angegebenen Feldes.
          28.09.05 DFEDLIB2:  Kopieren von Datensaetzen per drag & drop:
                              Stuecklisten werden auch dann kopiert, wenn das Ziellistenfeld die Artikelstammstueckliste 
                              ist und das Quelllistenfeld den Text "MalSt>" als Feldbeschriftung enthaelt.
                              Ausserdem kann ein Kopieren auch durch den anhang #FILExx im Feldname erzeugt werden, wobei
                              xx die Dateinummer der Datei des Ziellistenfelds sein muss.
                              DFEDLIB2:  Bei der Listenkopie beim kopieren von Datensaetzen wird ein Feld des Typs MAI_TYPE_AUTOINC2
                              vor dem Kopieren des Datensatzes geloescht. Damit ist eine Autonummerierung bei nicht vorhandenem
                              Feld in der Quelle gewaerleistet.
      272 04.10.05 FFART:     Die in Reparatur und durch Reparaturruecksendungen bewegte Ware wird in der Artikel-Bedarfsmaske
                              in separaten Feldern ausgewiesen.
          04.10.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ReparaturEigengeraetGehtInGebrauch: Wert 0/1. Default 0
                              Wert 0:
                              - Eigenwaren, die in Reparatur genommen wird, wird aus dem Gesamtbestand entnommen.
                              - Die Reparaturmenge "in Reparatur" wird erhoeht
                              - Leihgeraete in Reparaturen werden vom Gesamtbestand abgebucht
                              - Reparaturruecksendungen vermindern immer die Menge "in Reparatur"
                              - Reparaturruecksendungen buchen die Ware aus dem Bestand ab, wenn keine Reparatur zugeordnet ist.
                              Wert 1:
                              - Eigenwaren, die in Reparatur genommen wird, geht "in Gebrauch".
                              - Die Reparaturmenge "in Reparatur" wird erhoeht
                              - Leihgeraete in Reparaturen werden NICHT gebucht, auch nicht "in Gebrauch".
                              - Reparaturruecksendungen vermindern NIE die Menge "in Reparatur"
                              - Reparaturruecksendungen gehen "in Gebrauch", wenn keine Reparatur zugeordnet ist.
          07.10.05 FFVERK:    Auftraege werden im Auftragseingang bei aktiver Lagerbuchungsperiode nur noch nach dem
                              Buchungsperiodendatum in der Statistik gefuehrt.
                   FFSTDVK:   Der aktuelle Auftragsbestand wird in der aktuellen Lagerbuchungsperiode oder dem Statistikdatum
                              im Feld "ajAB[]" gespeichert, falls vorhanden.
                   FFARTBCH:  Die Buchungsperiode im Lagerlogbuch wird nur noch bei leerem Feld neu gesetzt.
                   FFSTDVK:   Artikel ohne Lagerverwaltung werden mit EK 0 auf den Verkaufsbeleg geladen.
                   FFARTPR:   load_artikel2position() -> Summe EK der J-Stuecklisten wird Artikelladen auf einen Verkaufsposition neu summiert.
          12.10.05 FAKTMAIN:  Beim Ummelden werden Datenbankeinstellungen aus DFDATA in den Datenbankobjekten zurueckgesetzt.
                              Damit ist das Problem beim Ummelden aus einem anderen Mandant mit unterschiedlich eingestellten Nummernkreisen
                              Ueber den Menuepunkt "Datenbankparamater" beseitigt.
          04.10.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ListenEkAufVorkalkEkKoppeln: Wert 0/1. Default 0
                              Mit dem Wert 1 wird der ListenEK auf VorkalkEK uebertragen, nicht der dEK.
                              Ebenfalls wird mit dem Wert 1 der VorkalkEK von Stuecklisten immer auf den ListenEK uebertragen.
                              Beim Wert 0 erfolgt eine Uebertragung des VorkalkEK von Stuecklisten auf den dEK, wenn
                              das Teil noch nie produziert wurde (nie produziert: letztEK ==0 und Gesamtbestand ==0)
      273 14.10.05 FFVERK:    Bei isLagerPeriodeAktiv() buchen die Kundenumsaetze aus den OPs periodengerecht, inklusive Storno.
                   FFEINK:    Bei isLagerPeriodeAktiv() buchen die Verbindlichkeiten periodengerecht, inklusive Storno.
                   FFRECH:    Die Kundenstatistik enthaelt eine Zeile "Nebenkosten". In ihr ist der Nebenkostenanteil des Umsatzes enthalten.
                              Mit isLagerPeriodeAktiv():
                              Der Auftragseingang wird bei den Kunden nicht mehr Offline ueberschrieben beim Monatsabschluss/Berechnung.
                              Der Auftragseingang wird bei den Vertretern Online geschrieben.
                              In der Firmenstatistik wird AE, UM und RG ueber eine Summierung der Kunden errechnet, nicht mehr ueber die Belege.
                              Der Vertreterumsatz und Rohgewinn wird Online ermittelt, nicht mehr offline beim Monatsabschluss.
          15.10.05 FFLAGBCH:  Lagerbuchung: 
                              -Artikel ohne Lagerverwaltung werden beim Abrufen gemeldet, EK auf 0 gesetzt.
                              -Ohne Artikelnummer nicht speicherbar
                   FFART:     Bei isLagerPeriodeAktiv() werden Lagerproduktionen beim Abschluss auf die Buchungsperiode der Produktion gebucht,
                              unabhaengig der Einstellung "ProdStatistikErledigtDatum" in der FAKT.INI
                   FFPROD2:   Bei Produktionsanlage von Auftraegen wird jetzt der Wunschtermin uebernommen, falls der Liefertermin leer ist.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              ProdLagerpruefungFehlmengeKennzeichnen: Wert 0/1. Default 0
                              Mit dem Wert 1 wird bei der Lagerpruefung der Produktionen nicht mehr das Kennzeichen Q gesetzt, wenn die
                              Produktion ok ist.
                              Es ist vorgesehen die Porduktionen mit dem Kennzeichen ! zu versehen, wenn sie NICHT ok ist.
          18.10.05 DFEXTFNC:  Druckvorlagenkommando [D erweitert.
                              Mit der Dateinummernerweiterung C (wie bisher Axx oder Mxx) kann auf das Aenderungsarchiv eines 
                              Belegs zugegriffen werden (IFW Modul notwendig).
                              Beispiel:
                              Mit dem Komando [D32 "LogbuchHunk",,b,C,32] wird der Hunk "LogbuchHunk" pro gespeicherten Eintrag
                              des Belegs aufgerufen. Durch die Option 'b' werden die Eintraege rueckwaerts ausgegeben, so dass
                              man den letzten Backup des Beleges zuerst angezeigt bekommt. Die Belegkopien sind im Verzeichnis
                              CHGDAT gespeichert.
                              Muster einer Druckvorlage mit Ausgabe der Belegnummer und des Nettobetrags:
                                {HAUPT
                                Org   :[C32<]    [C8     ]
                                [D32 "LogbuchHunk",,b,C,32]
                                }
                                {"LogbuchHunk
                                Chgdat:[C32<] [C8     ]
                                }
          18.10.05 BRECORD:   REC_BACKBUFFSIZE von 2048 auf 4096 erhoeht, wegen Artums und Wgrums Inhalt goroesser als 2k.
                   FFFIRUMS:  Artikel- und Warengruppenstatistik um UMenge/Umsatz/RG 3 Jahre erweitert.
          19.10.05 INPLIB:    Rabatteingabemaske Text angepasst (Betrag statt Rabatt).
                              Bei Betragseingabehilfe beim Teuerungszuschlag (Feldname TZ) in der Positionsmaske den Quellbetrag
                              abzueglich des Betrags berechnet.
                   STDPRJ:    Ueber die Menuepunkte 0x17,0x171,0x172,0x173 kann ein Auswertungsmenue fuer Makros aufgerufen werden
                              (ProgAw-Makros).
      274 21.10.05 FFARTBCH:  Der Positions-VK wird jetzt durch GesamtPreis/Menge-GesRabatt ermittelt, nicht mehr durch
                              Einzelpreis*Menge-Rabatt-GesRabatt
                   FFVERK:    Das Pruefen des Abschlusstatus von Abrufauftraegen beim Rueckgaengig machen von Auftraegen angepasst:
                              Es wird jetzt vor dem Loeschvorgang die Sammlung der Abrufauftragsnummern aus dem Beleg durchgefueht,
                              und dann die ermittelte Liste an Abrufauftraegen nach dem Loeschvorgang verarbeitet.
                              Bisher trat Fehler -43 beim Sammel der Liste auf, da der Auftrag schon geloescht war.
                   DFED2LIB:  Bei F1 Im Beleg ueber den Lieferadressenfilter wird jetzt der Listenansicht vom Kundenstamm wieder
                              Zurueck gestell, wenn danach uber die Kundennummer F1 gedrueckt wird.
          25.10.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ListenEkIstBestellRabattBasis: Wert 0/1. Default 0
                              Mit dem Wert 1 laesst sich in den Bestellungen der Listen-EK aus dem Artikelstamm
                              als Rabatt-Basis ausweisen.
                              Vorraussetzung sind das IFW-Modul "Rabatte in den Bestellungen" und "Listen-EK im Artikelstamm".
                              Mit dem Wert 0 wird der im Stamm hinterlegte Rabatt beim Lieferant verwendet und aus dem 
                              letzen Lieferanten-EK die Rabattbasis ueber Rabatt zum letzten Preis errechnet.
          26.10.05 DFEXTFNC:  Beim Ausdruck von Feldern mit Zugriffslevel wurden bisher nur Felder ausgegeben, wenn
                              bei zuschaltbaren Zugriffslevel (Strg F3) die Felder zugeschaltet waren.
                              Jetzt werden sie auch ausgegeben ohne dass die Felder mit vorhandene zuschaltbaren Rechte gerade
                              sichbar sind.
      275 28.10.05 FFVERK:    Auftragspositionen sind jetzt im Liefertermin ONLINE speicherbar.
                   VIDF:      Die IFW-Tabelle speichert bei REF 3 Eintraege aus der Tabelle direkt in die Datenbank im WM_ONLINEBUCHEN Modus.
          02.11.05 STDPRJ_:   Bei loaddatafile() wird akt_itemnum mit posinit initialisiert.
          04.11.05 DFEXTFNC:  Beim Nachladen von Daten in der Druckvorlage mit [D werden unterschiedliche Feldtypen in
                              den offenen Posten zu den Rechnugs/Gutschriftennummern nicht mehr mit der Meldung
                              "Ungleicher Feldtyp von 'rootnr' und 'index1' in [D..." angezeigt.
          04.11.05 DFEXTFNC:  Druckvorlagenkommando [D erweitert.
                              Mit der Dateinummernerweiterung X (wie bisher Axx oder Mxx) kann auf eine Liste von
                              Eintraegen im Lagerlogbuch mit belegspezifischen Prefix zugegriffen werden.
                              (IFW Funktion - "erweitertes Lagerlogbuch" notwendig).
                              Das Kommando ist mit der Option M zu MX erweiterbar. Damit wird auch das Archiv mit durchlaufen.
                              Beispiel:
                              Mit dem Komando [D32 "ArtlogHunk",,,X90,69] wird der Hunk "ArtlogHunk" pro gespeicherten Eintrag
                              zum Beleg im Artikellagerlogbuch aufgerufen. 
                              Muster einer Druckvorlage mit Ausgabe der Lagerbuchungen eines Belegs:
                                {HAUPT
                                Org   :[C32    ] [C240  ] [C8      ]
                                [D32 "ArtlogHunk",,,X90,69]
                                }
                                {"ArtlogHunk
                                Artlog:[C69    ] [C240  ] [C29     ] [C32<]
                                }
      276 04.11.05 DFEXTFNC:  Druckvorlagenkommando [D erweitert.
                              Mit der Dateinummernerweiterung I (wie bisher Axx oder Mxx) kann der Filter
                              beim Zugriff direkt gesetzt werden. Damit sind Eintraege beliebigen Inhalts aufrufbar.
                              Das Kommando ist mit der Option M zu MI erweiterbar. Damit wird auch das Archiv mit durchlaufen.
                              Beispiel:
                              Muster einer Druckvorlage zur Ausgabe des Artikels mit der Nummer "0815":
                                {HAUPT
                                [Vt:="0815"][D32 "Artikel",Vt,,I15,32]
                                }
                                {"Artikel
                                Artikel:[C32   ] [C51-    ] [C33<]
                                }
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              ProdLagerpruefungErsatzKennzeichenO: Wert 0/1. Default 0
                              Mit dem Wert 1 wird bei der Lagerpruefung der Produktionen das Kennzeichen O gesetzt, wenn
                              ein Warenersatz vorgenommen wurde. Ist ein Kennzeichenfeld in der Produktionsposition
                              vorhanden, dann wird auch in der Position das Kennzeichen O gesetzt.
          05.11.05 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              ProdPruefungRoHSErsatzAltwareVerbrauchen: Wert 0/1. Default 1
                              Wird ein RoHS Warenersatz vorgenommen, so wird die vorhandene Lagermege beim Nicht-RoHS Artikel
                              belassen. Die Mengen werden bei den zuzerst gepruefen Produktionen belassen.
                              Mit dem Wert 0 kann auf vollen RoHS Ersatz bei Fehlmengen umgeschaltet werden.
          08.11.05 FFPERS:    Bei der Personalzeitberechnung ueber Mitternacht wird der 24 Uhr Uebergang mit 24:00:00 und nicht
                              mehr mit 23:59:59 berechnet. Dadurch wird beim Kommen/Gehen-Runden ueber Mitternacht keine
                              Rundungszeit faelschlicherweise abgezogen.
      277 09.11.05 PRNLIB:    Das Druckvorlagenkommando ;D gibt bei flexiblen Datenfelder die Maximallaenge aus, wenn sie nicht
                              komplett 0-Bytes enthalten. Wird fuer den Datenexport der config.rec mit flexiblem Puffer benoetigt.
          10.11.05 BRECORD.H: Fehler -230 im Browser bei kleiner Schrift und grossem Listenfenster beim Aufwaertsblaettern beseitigt.
                   FFPPS2:    Bei der Fertigteilkalkulation werden die auf die Fertigungstelle verdichteten Werte der einzelnen
                              Arbeitsgangpositionen entsprechend ihrer Faktor-Gewichtung addiert (CPPSCalcTime).
                   FFPPS2:    Druckvorlagenkommando VppsCTwrite erweitert:
                              in Vn 8 und Vn 9 werden jetzt die Minuten-Stueckzeiten aus Vn 10 und Vn 12 gespeichert. In
                              Vn 10 und Vn 12 stehen die Faktoren der Gesamtzeit aus Vn 0.
                              VppsCTwrite-> Speichert die Werte in Vn. Es kann als Parameter ein Prefix angegeben werden:
                                              Format   PREFIX0pppfff  p Position, f Fertigungstellenkuerzel
                                              Format   PREFIX1fff
                                              Vn 0     Spalte SZ
                                              Vn 1     Spalte BZ
                                              Vn 2     Spalte EZ
                                              Vn 3     Spalte FZ
                                              Vn 10/11 Zeitanzeil1/Faktor1
                                              Vn 12/13 Zeitanzeil2/Faktor2
          10.11.05 FFBDE:     Im BDE-Script kann das Symbol ~ anstatt ø fuer einen Fehler-Piepton am BSC-Terminal benutzt werden.
                   FFART:     Kennzeichen 'T' im Artikelstamm fr "Stuecklisten: ListenEK (StandardEK) = Vorkalk".
                              Wirk sich nur in Verbindung mit dem Systemschalter "ListenEkAufVorkalkEkKoppeln" in FAKT.INI aus.
                              Damit wird der ListenEK mit dem Vorkalkulationswert der Stueckliste gesetzt.
          14.11.05 DFEXTFNC:  Druckvorlagenkommando [D erweitert.
                              Mit der Dateinummernerweiterung I kann zusaetzlich eine Filteroption als weiteren Parameter angegeben
                              werden. Beispiel einers Aufrufs mit Filter:
                                [D32 "Liste","2005.10",,MI46,240,44,64 "000815"]
                              Ruft z.B. vom Kundenstamm alle Auftraege in der Periode 2005.10 ab, die die Kundennummer "000815" enthalten.
                              Das Archiv wird beruecksichtigt. Die Sortierung in der Periode (240) ist nach Datum (44).
                              Das Kundennummernfeld in den Auftraegen ist 64.
                              Weiteres Beispiel:
                                [D32 "Liste","2005.10",,MI46,240,44,64 C32]
                              Ruft z.B. vom Kundenstamm alle Auftraege in der Periode 2005.10 ab, die die aktuelle Kundennummer
                              des gedruckten Kunde enthalten.
                              Das Archiv wird beruecksichtigt. Die Sortierung in der Periode (240) ist nach Datum (44).
                              Das Kundennummernfeld in den Auftraegen ist 64.
      278 15.11.05 PRGLOAD:   Erweiterung von Kommando SetItemAccessLevel
                              Modus 0x2000:
                                Damit koennen vom System unsichbare Felder aktiviert und sichtbar geschaltet werden.
                              Modus 0x4000:
                                Damit koennen Felder systemdeaktiviert werden.
          16.11.05 FFPROD2:   Bei der Lagermaterialspruefung mit verwendung von Ersatzartikel, werden Ersatzartikel
                              nur dann verwendet, wenn sie die Menge 1 benoetigen oder am Lager mindestens die Menge 1 vorhanden ist.
                              Es werden keine positiven Mengen kleiner 1 fuer die Ersatzbedingung mehr verwendet.
      279 22.11.05 FFART:     Die Lagerbuchungsart des Artikels wird im Lagerlogbuch mit vermerkt.
                              Artikel ohne Lagerverwaltung koennen mit Gesamtbestand nicht gespeichert werden.
                              Unbewertete Artikel koennen nicht mit dEK gespeichert werden.
                              Werden Inventurmengen auf nicht Lagerhaltige Artikel eingetragen, so werden sie beim
                              Einbuchen nicht Uebernommen. Der Gesamtbestand ist bei nicht lagerhaltigen Artikel immer 0.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "FIBU":
                              LagerWareneingangskonto: Wert ""/"999999". Default ""
                              Mit einem Wert ungleich "" kann ein Lager-Wareneingangskonto angegeben werden, auf das
                              alle Wareneingaenge lagerhaltiger Artikel gebucht wird.
                              Artikel ohne Lager oder Wertbuchung werden entsprechend der bisherigen 
                              Erloeskontenregelung zugeordnet.
                              Bei Angabe einer Kostenstelle wird automatisch die Erloeskontenregelung angewendet.
                              Wareneingangspositionen mit Kostenstellenangabe werden nie dem "LagerWareneingangskonto"
                              zugeordnet.
                   FFEINK:    Neues Feld 243 EkVgArt in den Wareneingangs und Warenruecksendepositionen zur Steuerung
                              der Lagerbuchung. Ist ein '*' im feld eingetragen, wird die Ware im Lager nicht Mengen-
                              maessig gebucht (aber in der WE WU Statistik, letzt. EK und Lieferantenwerte werden gesetzt).
                              In verbindung mit dem "LagerWareneingangskonto" und WareneingangKontenuebernahme=1
                              wird beim Buchungskonto == LagerWareneingangskonto der Stern geloescht, und bei Ungleichheit
                              gesetzt.
                              In Verbindung mit "LagerWareneingangskonto" werden so Wareneingaenge auf Kostenstelle nicht dem
                              Lager zugebucht.
          24.11.05 FFWEG:     Von Warenruecksendung Gutschrift anlegen: Beim Abruf von Fremdwaehrungsruecksendungen mit
                              aktuell anderem Fremdwaehrungskurs wurden differenzen auf dem Steuerfrei-Konto ausgewiesen.
                              Betragsuebernahme korrigiert.
          29.11.05 FFART:     Meldung von Lagerbestand mit Lagerverwaltungsart ohne Lagerverwaltung und unbewerteten Artikel
                              nur bei manueller Eingabe, nicht bei Buchungsvorgaengen.
      280 30.11.05 DFEXTFNC:  Druckvorlagenkommando [D Modus I auf direkten Filter mit Laengenlimit umgestellt.
          30.11.05 DF.H:      Maximale Spaltenanzahl im Browser von 16 auf 32 erhoeht
                   DFOBJ:     InitChgDatChild() auf DF_RESMHD_CHGDAT umgestellt -> extra Handle fuer ChangeDat-Objekte die
                              so nicht mehr vom Hautpobjekt abgeleitet sind (aehnlich wie DF_RESMHD_SYNC)
                   DFED2LIB:  Automatische verbreiterung des Browserfensters bei Standardbreite
          01.12.05 BRECLIB:   Das Setzen von laengenlimitiertem IndexFilter mit gleichzeitigem linearen Filter
                              in makeReqData() beruecksichtigt.
          02.12.05 FFPROD:    Wenn in der Produktionsmaske die PPSFelder und das Feld fuer Produktionszeit (123) vorhanden ist
                              und der Berechnungsmodus in den Programmeinstellungen aktiviert wurde, wird anhand der Daten 
                              PrdBeg,PPSBeg,PPSEnd Dispotermin und -HE,+FE berechnet.
                              -HE ist KW von PPSBeg bezogen auf die Dispo KW
                              +FE ist KW von PPSEnd bezogen auf die Dispo KW
          02.12.05 FFSTAKND:  Neuer INI Schalter AbrufeInStatistik in der Sektion [Belege]
                              ;AbrufeInStatistik: Wert 0/1. Default 1
                              ;Mit diesem Schalter kann die Berechnung des Abrufbestands und des Obligos 
                              ;(Rahmenauftraege, Rahmenbestellungen) veraendert werden. 
                              ;Mit dem Wert 1 werden die Betraege beim Kunden, Vertreter, Lieferant und in der 
                              ;Firmenstatistik mitgefuehrt.
                              ;Mit dem Wert 0 werden die Betraege der Rahmenvertraege nicht in den Statistiken
                              ;mitgefueht.
                              ;Hinweis:
                              ;Nach Veraenderung des Schalters muessen die Auftrags- und Obligobestaende mit den
                              ;Menuepunkten "Kundenbetraege neu erstellen" und "Lieferantenbetraege neu erstellen"
                              ;neu initialisiert werden.
          02.12.05 FFFOCAST:  Neuer INI Schalter ForeCastProduktionInAuftrag in der Sektion [Belege]
                              ;ForeCastProduktionInAuftrag: Wert 0/1. Default 0
                              ;Mit dem Wert 0 werden in der Forcasttafel in der Zeile Order nur die Auftragsmengen gefuehrt.
                              ;Die Mengen werden zur Planzahlkompensation benoetigt.
                              ;Sollen auch Einkaufartikel, die nur in Produktionen verbraucht werden, mit dem Forecastmodul
                              ;geplant werden, so kann der Wert auf 1 gesetzt werden.
                              ;Mit dem Wert 1 werden alle Entnahmemengen der Produktion zusaetzlich in der Zeile Order gespeichert.
                              ;Dadurch wird automatisch die Forecastplanmenge um die tatsaechlich eingelasteteten Produktions-
                              ;verbrauchsmengen reduziert.
                              ;Das Kennzeichen 'P' wird in der Forecastmaske gesetzt.
                   FFFOCAST:  -In der Forecastliste koennen die Produktionen mit Return auf der 4. Zeile abgerufen werden.
                              -In der Forecastliste kann von hier aus auch ein neuer Datensatz eingegeben werden.
      281 03.12.05 FFPREIS:   "****" Globaler Rabatt auf alle Preisgruppen
          06.12.05 DFEXTFNC:  Beim Drucken ueber ChgDat wird der Handle gemerkt und am Ende bei close_dvl() alles Child-Instanzen
                              geschlossen (bisher blieben immer Instanzen offen haengen).
          06.12.05 FFFOCAST:  Neuer INI Schalter DruckenSehrGeehrteAutomatik in der Sektion [Print]
                              ;DruckenSehrGeehrteAutomatik: Wert 0/1. Default 1.
                              ;Mit dem Wert 0 l„át sich die automatische Ausgabe von "Sehr Geehrte Damen und Herren"
                              ;unterbeinden, wenn das Feld nicht ausgefuellt ist.
                              ;Mit dem Wert 1 wird automatisch " Damen und Herren" ausgegeben, wenn das Feld leer ist.
          07.12.05 FFPROD2:   Beim Produktions-Warenersatz wird Feld 29 (IstSplitt) 30 (AklMe) und 46 (Kennzeichen) geloescht.
                              Ersatzeintragungen werden zusaetzlich nochmals auf Menge >0.0001 geprueft,
                              um 0 Mengen Ersatzeintraege sicher zu unterbinden.
                              Im Benutzerlogbuch werden "PdE:" Eintraege ueber den Ersatzvorgang gespeichert.
                   FFARTBCH:  In Verbindung mit LagerMinusBlocker wird beim Belegbuchen und fehlendem Vorbeleg, der Vorgang abgebrochen (err REC_EMISSINGPREDOC).
          08.12.05 FAKTMAIN:  Beim Wareneingang speichern kann man nur noch eine Verbindlichkeit direkt bearbeiten, wenn man
                              die Neu oder Veraenderungsrechte in den Verbindlichkeiten hat.
                   FFVERSND:  Neue Option in der Paketerfassung in den Programmeinstellungen:
                              Nach der Paketerfassung wird koenne nur die Lieferpapiere gedruckt werden, ohne sofortiger Rechnungserstellung.
                   FFPROD2:   Fehler beim Kommando ProdSetSollProdTermin() beim Setzen des Produktionsbeginns beseitigt.
      282 09.12.05 TIMEPLAN:  class TimePlan mit GlobalInfo m_giPara39Feiertage versehen, damit nicht dauernd die Maske gelesen wird.
                   PRNLIB:    Neue Druckvorlagenzuweisung [V10:daVd]
                              Damit kann der Dispobestand ohne Zugaenge ausgegeben werden. Das Kommando ist gleich
                              dem Kommando [V10:dbVd], nur dass keine Bestellungen oder andere Zugaenge beruecksichtigt werden.
                              Das Kommando ist nur mit dem Forecastmodul verfuegbar, ansonsten wird der gleiche Wert
                              wie bei [V10:dbVd] ausgegeben.
                              Zur Ermittlung wird die Zeile "Order" aus dem Forecast verwendet. Ist der INI-Schalter
                              ForeCastProduktionInAuftrag gesetzt, so werden auch Produktionsverbraeuche beruecksichtigt.
                   FFART:     Scrollgrenze bei Shift-Pfeil-Rechts in der Dispouebersicht von max KW43 auf max. KW52 angepasst.
                   DFEDLIB:   ed_setUpEdDfOpen() setzt zwingend das Listfenster auf FIX (Ohne Schatten und Size-Knopf)
                   DFEXTFNC:  Wird mit beim Drucken mit [VnSetMask] ein nicht gefundener Datensatz ([L.. auf leerer oder ungueltiger Nummer)
                              vermerkt, so liefert [VnLoadMask] in prnLoadRecAdr() nicht mehr Fehler -43 sondern eine leere Maske
      283 10.12.05 FFART:     Der ListenEK (StandardEK) im Artikelstamm kann mit dem Kennzeichen T bei K und J Stuecklisten auf
                              auf den Vorkalkulationswert gesetzte werden. Bei anderen Artikelln wird er auf den dEK gesetzt.
                   FAKTMAIN:  Neuer INI Schalter ErweitertesBenutzerlogbuch in der Sektion [System]
                              ;ErweitertesBenutzerlogbuch: Wert 0/1. Default 0.
                              ;Mit dem Wert 1 wird bei aktivem Benutzerlogbuch die Aenderung einzelner Felder mitgeschrieben.
                   FFFOCAST:  Korrektur der Berechnung von Forecastbedarfen nicht vor der aktuellen KW und vorhandener Lieferzeit.
                              Der Bedarf wurde eine Woche vor der aktuellen KW ausgewiese. Fehler korrigiert.
          13.12.05 FFEINK:    Die Gebindefrage bei Staffelpreise im Einkauf kommt nur noch wenn man im Text der ersten Staffel
                              eine Gebindebeschriftung hinterlegt hat.
                   FAKTMAIN:  Neuer INI Schalter EinkaufStaffelGebindeFrageImmer in der Sektion [Belege]
                              ;EinkaufStaffelGebindeFrageImmer: Wert 0/1. Default 1.
                              ;Mit dem Wert 1 kommt bei der Bestellschreibung im Einkauf immer die Frage nach der Gebindegroesse,
                              ;sobald zum Artikel und Lieferant eine Preisstaffel hinterlegt ist.
                              ;Mit dem Wert 0 wird die Gebindefrage nur noch dann gestellt, wenn bei der 1. Staffelmenge ein
                              ;Gebindetext hinterlegt ist.
                   BRECLIB:   unlink_record() fuehrt jetzt ein creat_record mit Ueberschreiben aus. Somit wird das bereinigen der Datei von
                              Pervasive-Process ausgeloest und nicht vom Benutzer. Damit lassen sich geschuetze Datenbereiche 
                              fuer die Datenbankdateien realisieren (keine Loeschrechte fuer den Benutzer).
      284 14.12.05 FAKTMAIN:  Neuer INI Schalter VerzeichnisBenutzerFormulareAktiv in der Sektion [System]
                              ;VerzeichnisBenutzerFormulareAktiv: Wert 0/1. Default 0.
                              ;Mit dem Wert liegen alle Druckvorlagen im Verzeichnis FORMULAR
                              ;Mit dem Wert 1 werden die Druckvorlagen "meine Liste" im Verzeichnis USERFORM gespeichert.
                              ;Beim Ausdrucken wird zuerst eine Druckvorlage im Verzeichnis FORMULAR gesucht und geladen. 
                              ;Ist sie dort nicht vorhanden, wird sie im Verzeichnis USERFORM gesucht und von dort geladen geladen. 
                              ;Hinweis: In den Druckvorlagen angegebenen Includedateien werden immer aus dem Verzeichnis FORMULAR geladen.
                   PRNLIB2:   Mit dem Schalter VerzeichnisBenutzerFormulareAktiv werden Druckvorlagen auch aus dem Verzeichnis USERFORM
                              verwendet. Werden Druckvorlagen im Verzeichnis FROMULAR nicht gefunden, wird versucht sie aus dem Verzeichnis
                              USERFORM zu laden.
                              Beim Editieren einer Vorlage vom IFW mit der Leerzeichentaste wird zuerst im Verzeichnis FORMULAR
                              nach der Datei gesucht. Ist sie dort nicht vorhanden, wird sie im Verzeichnis USERFORM geoeffnet.
                   PRGLOAD:   Kommando DeliverSalesOrder() erweitert:
                              DeliverSalesOrder( "Programmname", "Label")
                              Programmname und Label wird pro abzurechnende Position aufgerufen. Ist Programmname leer, so wird
                              das aktuelle Programm mit der Sprungmake "Lable" aufgerufen.
                              MarkedFile ist auf die Quellmaske (Auftragsposition) eingestellt.
                              Die aktuelle Datei ist die Lieferscheinposition.
                              In V1 steht die abzurechnende Menge
                              In V2 steht der Aufrufsmodus:   0 -> es wird nur geprueft ob die Position abzurechnen ist
                                                            !=0 -> Die Position wird gerade abgerechnet, in die Positionsmaske
                                                                   koennen mit SetItem() Felder nachgetragen werden. Die Anzahl kann
                                                                   in Feld 2 mit SetItem( 2, "xxx"); gespeichert werden.
      285 15.12.05 FAKTMAIN:  Neuer INI Schalter KommissionierscheinAufZweiLagerangabenPruefen in der Sektion [Belege]
                              ;KommissionierscheinAufZweiLagerangabenPruefen: Wert 0/1. Default 1.
                              ;Mit dem Wert 1 werden beim Kommissionierschein speichern die Positionen immer auf 2 Lagerangaben 
                              ;geprueft.
                              ;Mit dem Wert 0 kann ein Kommissionierschein auch nur mit einer Lagerangabe gespeichert werden.
                              ;Es wird dabei die Ware aus dem Hauptlager entnommen oder eingelegt.
          16.12.05 FAKTMAIN:  Neuer INI Schalter KundespezifischeStatistikKennzeichenX in der Sektion [Statistik]
                              ;KundespezifischeStatistikKennzeichenX: Wert 0/1. Default 1.
                              ;Mit dem Wert 1 werden bei der kundenspezifischen Artikelstatistik nur Kunden und Artikel berechnet,
                              ;die das Kennzeichen X im Kennzeichenfeld enthalten.
                              ;Mit dem Wert 0 werden alle Kunden und Artikel berechnet.
          17.12.05 FFKDSTAT:  Kundenspezifische Artikelstatistik fuer isLagerPeriodeAktiv() gerichtet.
                              Auf 3 Jahre ausgebaut
          18.12.05 FFLAGBCH:  Umbuchung zwischen Laeger eingebaut (DF_KOMLAGBUCH). Wird wie eine Lagerbuchung geschrieben, nur mit
                              Quell und Ziellager. Bucht nie Ware im Lager ab.
          21.12.05 DFED2LIB:  Bei Stammdatenarchiv und F1 mit Text in den Positionen wird auf den korrekten Statz gesprungen. Es
                              wird nicht mehr im Archiv gesucht.
                   FFEINK:    In Einkauf wird der Einzel-Einkaufspreis nicht mehr gerundet, falls ein Rabatt da ist.
                   FFEINK:    Das Pruefen des Abschlusstatus von Abrufbestellungen beim Rueckgaengig machen von Bestellungen angepasst:
                              Es wird jetzt vor dem Loeschvorgang die Sammlung der Abrufbestellnummern aus dem Beleg durchgefuehrt,
                              und dann die ermittelte Liste an Abrufbestellungen nach dem Loeschvorgang verarbeitet.
                              Bisher trat Fehler -43 beim Sammeln der Liste auf, da die Bestellunge schon geloescht war.
      286 23.12.05 FAKTMAIN:  Neuer INI Schalter ProdInExterneLagerKeineBedarfe in der Sektion [System]
                              ;ProdInExterneLagerKeineBedarfe: Wert 0/1. Default 0.
                              ;Mit dem Wert 1 werden Produktionspositionen die auf ein externes Lager verweisen nicht 
                              ;in Bedarf oder in Gebrauch (reserviert) gestellt (das externe Lager stellt die Ware
                              ;bereits in Gebrauch).
                              ;Mit dem Wert 0 werden die Waren in den Produktionspositionen immer in Bedarf oder
                              ;in Gebrauch gestellt.
                   FFWEG:     Kommissionierscheine buchen jetzt Produktionen aktiv mit um, wenn
                              ProdInExterneLagerKeineBedarfe auf 1 gesetzt ist.
                   FFWEG:     Bei Fremdleistungsbestellung und gewichteter Lagerbuchung wird nur noch bei
                              nicht abgeschlossenen Produktionen der Istwert und EK der Fremdleitung eingetragen.
                   FFPROD2:   Beim Produktioneabschluss werden jetzt auch die 'A'-Postionen im EK nachgetragen
                              (aber keine E Positionen, die kommen von der Fremdleistungsbestellung)
      287 29.12.05 FFART:     Bei Kennzeichen Y im Artikelstamm (Vorkalkulationswert = Durchschnitts-EK) wird auch
                              Die EKs der Kalkulationstabelle (Einzelkosten/Einmalkosten/Fertigung/Fremdleistung)
                              Auf 0 gesetzt und der dEK in Einzelkosten-Material gespeichert. Somit wird der Wert auch
                              in den Stuecklisten entsprechend uebernommen.
                   FFARTBCH:  Bei vorhandener Vorgangsart im Kopf und Position eines Beleges wird sie immer auf
                              Gleichheit geprueft (bisher nur auf Ziellagerbelieferung).
                   FFARTBCH:  Beleggegenbuchung des Folgebelegs zu einem storniertem Auftrag wird wie gegen einen
                              erledigten Auftrag behandelt.
                   FFSTDVK:   Stornierte Auftraege lassen sich nicht mehr abschliessen
                   FFVERK:    Lieferschein zu storniertem Auftrag nicht mehr moeglich
                   FFRECH:    Rechnung zu storniertem Auftrag nicht mehr moeglich
                   FFBSTLST:  Kommando DispoToOrderList (dispoToBstLst()) erweitert.
                              DispoToOrderList( Modus, BisDatum, VonDatum, MinimalbestandToleranzWochen)
                                Wird mit MinimalbestandToleranzWochen eine Anzahl groesser 0 angegeben und
                                der Modus 16 verwendet, so wird eine Bestellvorschlag bei Dispobestand
                                kleiner Minimalbestand erst dann ausgeloest, wenn innerhalb der naechsten
                                MinimalbestandToleranzWochen der Dispobestand nicht mindestens den 
                                minimalen Lagerbestand erreicht.
      287 30.12.05 FFSTATIS:  Artikel und Warengruppenstatistik auf 3 Jahre erweitert.
          02.01.06 FFVERSND:  Belegdruck AutomatikPaketerfassungXXX bei Lieferscheinmodus korrigiert.
                              Uebernahem der Adressdaten einer abweichenden Lieferadress korrigiert.
                              Die kostenpflichtigen Versandkosten werden bei keinen Lieferbedingungsangaben
                              und keiner Nachnahmelieferbedingung (NN*) nicht mehr auf 0 gesetzt, sondern die
                              Handeingabe des Anwenders auf dem Lieferschein belassen.
      288 03.01.06 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              ExterneLagerMinusBlockerAktiv: Wert 0/1. Default 0
                              Mit dem Wert 1 koennen die externen (oder internen) Lager nicht auf einen
                              negativen Bestand gebucht werden. Der Wert 1 kann nur in Verbindung mit 
                              dem Wert 1 von LagerMinusBlockerAktiv gesetzt werden.
                              Mit dem Wert 0 findet keine Pruefung beim Buchen statt.
      289 05.01.06 FFEINK:    Im Einkauf bei Staffelpreisuebernahme wird der Fremdwaehrungspreis uebernommen,
                              wenn die Waehrung uebereinstimmt. Ansonsten wird der Leitwaehrungspreis
                              uebernommen und ggf. in die Belegwaehrung umgerechnet.
                   FFEINK:    Beim Artikelstamm Anfrage F1, in der Anfragepositione auf der Artiklenummer
                              F1 Return wurden fehlende Felder 140 und 141 gemeldet. Meldung beseitigt.
                   FFPROD3:   Bei der Produktionsanlage wird bei Beruecksichtigung des verfuegbaren Lagerbestandes
                              die zuerst gespeicherte Ur-Produktion korrekt beruecksichtigt. Bisher wurde
                              der verfuegbare Lagerbestand um die Mengen aus der Ur-Prod zu wenig ausgewiesen.
                              Bei Anlage vom Auftrag die Verfuegbarkeitspruefung ebenfalls korrigiert.
                   FFVERSND:  Versandadresse in den Paketen korrigert (stand nur noch die richtige LKZ und PLZ bei
                              abeweichender Lieferadresse)
                              Bei Erfassung zu bereits vorhandenen Paketen wird jetzt der Spediteur von den Paketen
                              nachgeladen. So bleibt ein bei der ersten Paketerfassung geaenderter Spediteur erhalten.
      290 10.01.06 FFART:     Die Begrenzung bei negativen Lagerwerten auf eine Toleranzwert von -0.0001 eingestellt.
                   FFEINK:    - Beim IFW Herstellerreferenzmodul wurde die Multireferenzangabe von runden Klammern auf
                                Eckige Klammern umgestellt (z.B. AB1282(;A;B;AB)182FX -> AB1282[;A;B;AB]182FX )
                              - Beim IFW Herstellerreferenzmodul die Aktivierung mit dem Kennzeichen J korrigiert.
      291 11.01.06 FFART:     Bei gewichteter Lagerbuchung und Artikel ohne Lagerverwaltung Buchungsart T
                              wird der dEK auf den Einlagerungspreis gesetzt, wenn der Preis >0 ist (und der der Bestand==0).
                              Bei der Lagerbuchung wird auch der Hauptlagerbestand geprueft (Gesamtbestand-extLag Bestand).
                              Wenn nicht ausreichend wird die Buchung gesperrt. Es werden differenzierte Meldungen ausgegeben:
                              - "Der Gesamtlagerbestand l„át diese Belegverarbeitung nicht zu! (Zurck)"
                              - "Der Gesamtlagerwert l„át diese Belegverarbeitung nicht zu! (Zurck)"
                              - "Der Gesamtbestand und Wert l„át diese Belegverarbeitung nicht zu! (Zurck)"
                              - "Der externe Lagerbestand l„át diese Belegverarbeitung nicht zu! (Zurck)"
                              - "Der Hauptlagerbestand l„át diese Belegverarbeitung nicht zu! (Zurck)"
                              - "Der Lagerbestand oder Wert l„át diese Belegverarbeitung nicht zu (#%x)! (Zurck)"
                   FFPROD3:   Es werden bei der Produktionsanlage Unterstuecklisten mit Menge 0 nicht mehr
                              als Produktion angelegt.
          12.01.06 PRNLIB2:   Userdefinierte Hunks die vor einem vorhandenen Hunk SWITCH auftraten, wurden bisher
                              ignoriert. Problem beseitigt.
      292 16.01.06 DFOBJ:     Beim Drucken von Belegen wurde bei gesetztem Kennzeichen der Beleg geoeffnet und angezeigt.
                              Dabei war der Filter der Positionen vom Druckvorgang geloescht. edOpenMask() setzte
                              jetzt bei geloeschten Filter eines Belges den Filterbezug neu.
      293 20.01.06 FFARTBCH:  Beim Auftrag abschliessen (auftrag erledigen) wird keine Buchungsperiode mehr gesetzt
                              (Buchungsflag BUCHEN_KEINEPERIODESETZEN)
          23.01.06 FAKTEDIT:  Systemmakro .$26 einbebaut: Ein Beleg wird storniert. Bei Rueckgabewert !=0 erfolgt keine Stornierung.
                              Hinweis:
                              Bei manueller Eintragung des Kennzeichen 'S' beim Belegspeichern wird das Systemmakro nicht aufgerufen.
                              Es wird nur bei dem Menuepunkt "Beleg stornieren" verwendet.
      294 25.01.06 FFEINK:    Bei Bestellungen und Wareneingaengen werden die Einzelpreise nicht mehr gerundet.
      295 27.01.06 FFSTAKND:  kundensummen_neu_buchen() addiert jetzt die Lieferscheinsumme auch brutto ohne Versandanteil (Nebenkosten)
                   FAKTEDIT:  edit_viewKollisionsFehler() meldet jetzt die korrekte g_sArtBuchErr - Fehlernummer.
                   FFVERK:    Nebenkosten werden jetzt immer ausgewiesen, auch wenn das Feld 29 auf der OP-Maske 0 ist (dann der volle Betrag als Nebenkosten).
                   FFRECH:    Im Kundenstamm wird jetzt auch der monatliche Lieferscheinbestandswert netto ohne Nebenkosten mitgefuehrt.
                   FFFIRUMS:  Die LB-Statistik wird bei der Jahresuebertragung mit verschoben.
      296 31.01.06 FFARTBCH:  PE-Beruecksichtigung beim Positions-VK bei GesamtPreis/Menge-GesRabatt ermittlung korrigiert.
      297 01.02.06 FFARTBCH:  Beim Buchen wird die Gesamtrabattfaehigkeit einer Position am Feldname "GesRab" und Nummer 66 festgemacht (bisher nur Nummer 66).
                              Die Beleggegenbuchung des Auftragsbestands beruecksichtigt jetzt auch die Gesamtrabattfaehigkeit der Auftragsposition korrekt.
      298 02.02.06 EMUC:      Im HOST-Modus wird beim Beenden der Verbindung geprueft ob ein neues EXE vorhanden ist. Wenn ein neues
                              EXE vorhanden ist, wird das laufende EXE beendet und IfwStart.exe mit den Aufrufparametern aufgerufen,
                              so dass das neue EXE ausgefuehrt wird.
                   EMUC:      Ein neuer Aufrufparameter /x eingefuehrt. Er wird als letzter Parameter angegeben und erzwingt immer
                              einen Neustart des EXE beim Beenden einer Session im Hostmodus.
                              Aufrufbeispiel: "IfwStart gast /p5600 /x"
                   FAKTMAIN:  Im Benutzerverzeichnis "Eigene Dateien" wird jetzt immer ein IFW-Verzeichnis "IfwTemp" angelegt (aber noch nicht benutzt).
                   FFPROD2:   Produktionen stornierbar, neuer Menuepunkt, Sperrungen bei diversen Produktionsoperationen.
      299 03.02.06 SECURITY:  Das IFW meldet sich jetzt unter dem Namen "CLIENTNAME" an, falls vorhanden und nicht "Console".
                              Der Name wird dabei um TS. am Anfang erweitert (TS.CLIENTNAME).
                              Ansonsten wird der Namen unter "COMPUTERNAME" verwendet. Damit kann eine Terminalserver-Session erkannt werden.
      300 06.02.06 FFBETON:   Bei der Jahresuebertragung der Maschinendaten (KFZ Betonmodul) wird nicht mehr zwingend das Reparaturmodul gesucht
                              (Fehler Feld 70 nicht gefunden).
                   FAKTMAIN:  Neuer INI Schalter ErzeugeCTempInEigeneDateien in der Sektion [System]
                              ;ErzeugeCTempInEigeneDateien: Wert 0/1. Default 0.
                              ;Mit dem Wert 1 werden alle Druckausgaben in Dateien mit dem Pfad c:\temp automatisch
                              ;in den Pfad "Eigene Dateien\IfwTemp" gepeichert.
                              ;Mit dem Wert 0 bleiben die Dateien im Pfad c:\temp
                              ;Zur Ausgabe der Datei in den vom eingelogten Benutzer abhaengigen Pfad "Eigene Dateien\IfwTemp"
                              ;kann die Variable %TEMP% im Ausgabepfad angegeben werden. Diese Ausgaben erfolgen
                              ;immer in den Pfad "Eigene Dateien\IfwTemp", unabhaengig der Einstellung 
                              ;des Schalters ErzeugeCTempInEigeneDateien
                   FFSTAKND:  Bei der Lieferscheinsummme ueber kundensummen_neu_buchen() wird bei Vorgangsart 10 der Lieferschein nicht addiert.
          08.02.06 FAKTEXT:   Der Menuepunkt "Kontenneuanlage exportieren" rief noch eine weitere Funktion (z.B. "Lifervorlauf") auf.
                              Problem beseitigt.
      301 09.02.06 FFFOCAST:  Auftraege und Lieferscheine mit Forecastbezug konnten beim Verbuchen des Forcastbezugs einen Fehler in der 
                              Online-Auftragsbestandsberechnung erzeugen. Problem beseitigt.
                   FAKTMAIN:  Neuer INI Schalter ForeCastAuftragLieferscheinBuchen in der Sektion [Belege]
                              ;ForeCastAuftragLieferscheinBuchen: Wert 0/1. Default 0.
                              ;Mit dem Wert 0 bucht ein Forecastbezug im Auftrag oder im Lieferschein keinen automatischen Eintrag
                              ;in der Forecastdatenbank.
                              ;Mit dem Wert 1 bucht ein Forecastbezug im Auftrag oder im Lieferschein einen Eintrag in der
                              ;ForeCast-Datenbank zur Planzahlkompensation Auftrags und Lieferscheinmenge. Der Wert 1 ist
                              ;nur bei abgeschalteter Planzahlkompensation (System/Programmeinstellungen/11 Artikelliste Einstellungen (EK, Forecast)
                              ;Schalter Planzahlmodus und Planzahlkompensation auf aus) sinnvoll.
                              ;Empfohlen wird den Wert auf 0 zu lassen und den Planzahlkompensationsmodus in den Systemeinstellungen zu aktivieren.
      302 20.02.06 BRECLIB2:  Limit beim Linearfilter von 16960 auf 65535 hoch gesetzt.
                   PROGAW:    call_prog_path() Aufuf von Dateien mit Leerzeichen in der Pfadangabe korrigiert.
                   COMCON:    Problem mit teilweise weissem Bildschirm beim Einloggen mit dem WWW-Client auf eine gerade neu gestartete HOST-Session beseitigt.
          21.02.06 FFARTBCH:  Pruefung des Hauptlagerbestands bei Buchung nur von dem Hauptlager ohne externen Lager erweitert. Es werden
                              jetzt auch bei Entnahmen aus dem Hauptlager geprueft, ob die Restmenge im Hauptlager mindestens so gross wie die Mengen in
                              allen externen Lagern ist. Die Preufung ist nur in Verbindung mit dem gesetzten
                              Schalter ExterneLagerMinusBlockerAktiv in der FAKT.INI Datei aktiv.
                              Im Fehlerfall wird die Meldung "Der Hauptlagerbestand l„át diese Belegverarbeitung nicht zu! (Zurck)" ausgegeben.
          23.02.06 WINLIB:    Beim Fensterrefresh refresh_nw() wird jetzt die Maske zuvor komplett geloescht.
      303 23.02.06 WINIFW:    In der IFW-Druckerliste koennen jetzt Druckerparamater fuer GDI-Drucker gespeichert werden. Sie
                              konfigurieren beim GDI-Druck entsprechend den Windows-Druckprozess (z.B.Schatwahl, Hoch/Quer, Farbe ...).
          24.02.06 STDMSK:    Bei F1 auf den Druckeranschluessen wird nicht mehr im Netzwerk nach Druckern gesucht
                              -> die Auswahl erfolgt erheblich schneller.
                              Druckeranschluesse die ueber ein Serverlink erstellt wurden, sind jetzt auch unter Windows 2000 abrufbar.
      304 27.02.06 FFSTAKND:  kundensummen_neu_buchen() beruecksichtigt jetzt das Stornokennzeichen bei Auftraegen und Lieferscheine
                   FFBDE:     Timeout beim Scannen der BSC-Terminals von 1s auf 2s erhoeht.
      305 28.02.06 FFSTATIST: warenbedarf_neu_erstellen() beruecksichtigt jetzt das Stornokennzeichen bei Auftraegen korrekt
                   FFSTDVK:   Beim Nachladen von Lieferadressen zu einer Auftragsadresse mit abweichender Rechnungsadresse wird die Rechnungsadresse nicht mehr geloescht.
          03.03.06 POPUPMNU:  Anzeige des Autoersatz von c:\temp beim Tooltip auch beim Ausgabepfad des Druckers aktiviert.
      306 08.03.06 FFREINK:   Verbindlichkeiten mit Stornodatum werden jetzt im Stornomonat negativ in der Lieferantenumsatzstatistik gebucht (verb_umsatzbuchen()).
                   FAKTMAIN:  Neuer INI Schalter LieferantenUmsatzAuchImVorjahrBuchen in der Sektion [Statistik]
                              ;LieferantenUmsatzAuchImVorjahrBuchen: Wert 0/1. Default 0.
                              ;Mit dem Wert 1 werden in der Lieferantenstatistik Verbindlichkeiten mit Vorjahresdatum
                              ;in der Vorjahreszeile gebucht.
                              ;Mit dem Wert 0 werden Vorjahresangaben in der Statistik ignoriert.
          09.03.06 FFPROD2:   Bei  Produktion abschliessen (in Lager buchen) wird jetzt der EK auch bei Positionen
                              mit leerem Positionstyp (auch ohne M) abgeglichen (_/. und auch _/K).
                              Es werden die Positionstypen _/? M/? A/? mit ?!=K und die Typen 
                              _/K und M/K abgeglichen 
          09.03.06 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "FIBU":
                              GemeinsamesEingangsfrachtkonto: Wert 0/1. Default 0
                              Der Schalter beeinflusst die FIBU-Stapelerzeugung:
                              Mit dem Wert 0 werden die Fachtkosten von Wareneingaenge aus EG und Drittland auf die Standarderloeskonten fuer
                              Wareneinkauf aus EG und Drittland verbucht.
                              Mit dem Wert 1 werden die Fachtkosten von Wareneingaenge aus EG und Drittland auf das gleiche Konto wie
                              die Inlandsfrachten umgelegt. Dabei wird der entsprechend notwendige Steuerschlussel beim Verbuchen verwendet.
          10.03.06 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "FIBU":
                              DATEVExportZweiteTextzeileHatVorrang: Wert 0/1. Default 1
                              Der Schalter beeinflusst die DATEV-Stapelerzeugung:
                              Mit dem Wert 0 hat die 2 Textzeile vorang beim schreiben einer DATEV-Diskette. Sie wird anstelle der ersten
                              Textzeile geschrieben, falls sie etwas enthaelt.
                              Mit dem Wert 1 wird immer nur die erste Textzeile geschrieben
      307 14.03.06 DFPRN:     Wenn der Client Online ist und auf einen nicht vorhandenen Windowsdrucker auf dem Host gedruckt wird, wird
                              jetzt eine fuer den Client sichtbare Meldung ausgegeben. Bisher wurde eine Windowsbox aufgerufen, die die
                              Clientverbindung unterbrach und den Host in einen Wartezustand versetzte.
      308 20.03.06 PRNLIB3:   Neues Druckvorlagenkmmando [A
                              Es ist wie Kommando [C anzuwenden, es werden aber die Origialdaten des Feldes beim Lesen der Maske
                              ausgegeben. Die Daten werden nur bei gesetztem Schalter "ErweitertesBenutzerlogbuch" gefuert.
                              Sind keine Daten vorhanden, so wird die Meldung
                              "*** Originaldaten fr Feld mit Nummer ... ('...') in der Maske .... nicht vorhanden ***" ausgegeben.
                   PRNLIB:    Neues Druckvorlagenkommando [Vx:duVdx]
                              Mit der Zuweisung :du kann der Dispobestand im Artikelstamm auf Untermenge untersucht werden (IFW Modul Artikeldispo erforderlich).
                              Folgende Parameter werden benoetigt:
                               V1:  Vorgabe der alten Pruefmenge (bei Positionsaenderungen)
                               Vd:  Vorgabe des alten Pruefdatum (bei Positionsaenderungen); leer, wenn unberuecksichtigt
                               V2:  Vorgabe der aktuellen Pruefmenge
                               Vd1: Vorgabe des aktuellen Pruefdatums; leer, wenn unberuecksichtigt
                               Vx:  Startindex des Pruefzeitraums
                               Vdx: Enddatum des Pruefzeitraums
                              [Vx:duVx]
                               In Vx wird der Dispoindex zurueckgegeben, der den geringsten Dispobestand im Zeitraum besitzt
                               V1 wird automatisch auf den Dispobestand in dem Index gesetzt.
                               Es ist zu beachten, dass in der Rueckgabemenge die beiden Vorgaben aus V1,Vd und V2 und Vd1
                               beruecksichtigt sind. Ein Vorgabewert wird nicht beruecksichtigt, wenn die entsprechende 
                               Datumsvariable leer ist.
                               Hinweis: Vx kann mit dem Kommando [Vd:iVx] in ein Datum umgewandelt werden.
      309 21.03.06 FFART:     IFW Modul "Kupfergewicht" im Artikelstamm eingefuehrt. Ist im Artikelstamm und der Artikelstueckliste 
                              Feld 108 fuer das Kupfergewicht vorhanden, so berechnet die Listenkalkulation der Stuecklisten
                              automatisch das Kupfergewicht fuer das Endprodukt.
          22.03.06 PRGLOAD:   Neues Kommando DocumentEdit()
                              DocumentEdit( Modus);
                              DocumentEdit( Modus, "Programmname");
                              DocumentEdit( Modus, "Programmname", "Label");
                              Damit kann die Belegbearbeitung aufgerufen werden.
                              Es kann nur fuer Angebote verwendet werden. Die Aktive Datenbank muss die Angebotsdatenbank sein.
                              Folgende Modis stehen zur Verfuegung:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              Es wird die Belegbearbeitung aufgerufen, wie unter dem Vertriebsmenuepunkt "Angebote".
                              Ist ein Programmname angegeben, so wird das Programm nach dem Oeffnen der Maske aufgerufen.
                              Mit dem Programm koennen Feldvorgaben vorgenommen werden (z.B. mit SetItem()).
                              Ist ein Label angegeben, wird dieses im Programm angesprungen. Ist kein Programmname
                              aber ein Label angegeben, so wird im aktuellen Programm auf das Label gesprungen.
          23.03.06 API_WIN:   IFW-Tabellen Funktion um Modus 14 erweitert.
                              14: Im nachfolgenden Paramterfeld sind Textattribute
                              Attribute im Parameterfeld bei Modus 14:
                               0x0001    1 -> nicht anzeigen
                               0x0002    2 -> Fettdruck
                               0x0004    4 -> Euro-Zeichen anhaengen
                               0x0010   16 -> Text Rot
                               0x0020   32 -> Text Gruen
                               0x0040   64 -> Text Blau
                               0x0100  256 -> Hintergrund Rot
                               0x0200  512 -> Hintergrund Gruen
                               0x0400 1024 -> Hintergrund Blau
                               Bei Kombination der Farbwerte entstehen die entsprechenden Mischfarben
                   PINBOARD:  Ist in den Angeboten Feld 109 fuer eine ProjektjobID vorhanden, so wird in dem angegebenen #
                              Projekt automatisch ein Eintrag vorgenommen.
                              Es wird dabei das Systemmakro prjlst.$72 aufgerufen:
                   PINBOARD:  Neues Systemmakro prjlst.$72:
                               Spezialprogramm beim Erzeugen eines Jobeintrags von durch ein Angebot. MarkFile=Angebot.
                               Das Programm wird vorm Speichern des Jobeintrags aufgerufen. Bei einem Rueckgabewert groesser 0 findet keine
                               Speicherung des Jobeintrags statt.
                               Das Makro wird von der Jobliste aus aufgerufen (Programmname prjlst.$72).
                   PINBOARD:  Jobeintraege werden nur noch dann mit einer neuen Positionsnummer versehen, wenn sie neu
                              eingetragen werden oder das Projekt wechselt.
          24.03.06 DFEDLIB:   Bei F10 in geoeffneter Maske wurde ein evt. vorhandenes Listenfenster geloescht. Refresh aktiviert.
                   PRGLOAD:   Neues Kommando GetNextFreeNumber()
                              GetNextFreeNumber( Feldnummer);
                              GetNextFreeNumber( Feldnummer, Mindestwert);
                              GetNextFreeNumber( Feldnummer, Mindestwert, Maximalwert);
                              Das Kommando laedt in das Feld Feldnummer die naechste freie Nummer im Bereich Mindestwert/Maximalwert.
                              Es muss ein Suchpfad auf die Feldnummer in der Datenbank vorhanden sein.
                              Die Funktion ist nur auf Primaerschluessel (z.B. Artikelnummer) oder Positionsnummern anwendbar.
                   PINBOARD:  Neues Systemmakro prjlst.$73:
                               Spezialprogramm beim Erzeugen eines Jobeintrags von durch eine Nachricht. MarkFile=Nachricht.
                               Das Programm wird vorm Speichern des Jobeintrags aufgerufen. Bei einem Rueckgabewert groesser 0 findet keine
                               Speicherung des Jobeintrags statt.
                               Das Makro wird von der Jobliste aus aufgerufen (Programmname prjlst.$73).
      310 05.04.06 PRGLOAD2:  Erste Programmteile der neuen IFW-Tabellen Programmiersprache aktiviert.
                              Druckvorlagen mit der Erweiterung ".ITB" werden mit der neuen Sprache ausgefuert.
          07.04.06 PRGLOAD2:  IFW-Tabellen Programmiersprache funktionsfaehig.
          12.04.06 PRGLOAD2:  IFW-Tabellen Programmiersprache erweitert.
                   IFWTAB:    Summenanzeige der selektierten Zellen in der Statuszeile.
                              STRG-Space selektiert jetzt Eintraege und klappt keinen Baum mehr auf oder zu.
                              Bei mehreren selektierten Spalten wird beim Spaltenwechsel der Bildschirm refresht.
                              Farbbalken in Spalten bleiben in der Zeile sichtbar, solange der Cursor nicht in der Spalte steht.
          24.04.06 FFPROD2:   Beim EK Abgleich von hierachischen Stuecklisten mit mehreren K/K Positionen den Artikelnummernvergleich
                              von 8 auf 15 Stellen erhoeht.
      311 25.04.06 IFWTAB:    Mehrseitiges Drucken der IFW-Tabelle aktiviert.
          26.04.06 IFWTAB:    Bei Uebergabe an Excel werden nur noch die angezeigten Zeilen uebertragen.
                              Sind welche selektiert (mehr als 1) dann werden nur die selektierten Uebertragen.
                              Beim Zuklappen des Baums den Zeilenrefresh beschleunigt.
          27.04.06 PRGLOAD2:  Problem beim Makrolauf mit Zahlenwerten aus [V1<] Variablen und Tausenderpunkte beseitigt.
                              Wurde zuvor "meine Liste -> Excel" ausgefuert so wurde bei gesetzter Option
                              "Zahlen zu Office konvertieren" der Tausenderpunkt bei V1 bis V4 als Deziamltrenner verwendet.
          28.04.06 FFDATEV:   Das Einlesen von Datevdisketten erweitert:
                              - Die Versionssatzkennung wird mit dynamischerlaenge bis 14 Zeichen gelesen
                              - Es werden Blockspruenge (6 0-Byte beim 256er Block) innerhalb der Daten unterstuetzt.
                              - Die Mandantesumme wird mit bis zu 14 Zeichen (KNE, OBE hat 12) plus 1 Vorzeichen eingelesen.
                              - Beim Text einlesen der Buchunssaetze wird ansi2oem() ausgeloest
      312 02.05.06 ITBPRG:    Kommando GetRecord() auf bis zu 8 Parameter erweitert.
                   ITBPRG:    Das Kommand GetRecord() kann jetzt auch mit einem Parameter aufgerufen werden. Er
                              muss eine Rowdef Variable sein. Es wird dann versucht den Primaerschluessel (erstes Feld
                              des ersten Suchpfades der Datenbank) in der Datenbank des Rowdefparameters zu finden. Dabei
                              erfolgt ein exakter Namensvergleich des Primaerschluesselfeldes.
                   PRGLOAD2:  ITB: Der rowdef default fuer den Parameter "archiv" ist jetzt "on" (bisher "off").
                   PRGLOAD2:  ITB: Zugriff auf die Systemmasken mit System.96C33() moeglich.
                   PRGLOAD2:  ITB: Funktion RowArray.getKey() zum zugreifen auf den Zeilenschluessel der aktuellen Zeile.
          03.05.06 APIWIN:    Listendruck wird jetzt immer auf Breite optimiert ausgegeben
                   FFART:
                   FFARTPR:   Interne Felder der Preisgruppen im Artikelstamm auf PG0 bis PG5 begrenzt.
                              Anlage von PG-Eintraegen in den erweiterten Preisen mit Stammdatenarchiv korrigiert. Die
                              Eintraege werden jetzt nicht mehr im Stammdatenarchiv angelegt, sondern in der aktiven Liste.
                   LINKER:    Stack von 1MB auf 1500000 erhoeht.
      313 04.05.06 WINIFW:    Nach dem Druckaufruf wird jetzt das Arbeitsverzeichnis geprueft. Ist es verstellt, so wird auf
                              das Startverzeichnis zurueckgestellt.
          04.05.06 DFIMP:     Problem beim Import mit gleizeitigem Makroaufruf in zusammenhang mit Rev. 311 (Zahlenwerten aus [V1<] Variablen)
                              beseitigt.
          05.05.06 ITBPRG:    if() x; else if() y; abfragen korrigiert.
      314 08.05.06 ITBPRG:    Datenbaenke ohne 2-Dateien Archiv werden auch bei Archiv On nur einmal benutzt.
                   ITBPRG:    Arrayzugriff auf Maskenfelder mit Eckigen Klammern "[]" moeglich (z.B. C245[2])
                   ITBPRG:    Fehler -1302: Zuweisung auf ROWDEF Variablen (z.B. rdProdPos.$menge=0) korrigiert.
      315 10.05.06 DATELIB:   ddays() und adddate() fuer 1900 korriegiert.
          10.05.06 ITBPRG:    IfwTabBase Funktionen sind jetzt global ohne praefix verfuegbar
          11.05.06 ITBPRG:    getWorkdays() und addWorkdays() eingebaut.
                   ITBPRG:    Column.setBkColor() aktiviert.
                   ITBPRG:    Hexangabe mit 0x (z.B. 0xFF0022) als Zahl moeglich.
          12.05.06 ITBPRG:    System.xxx -Aufrufe, Handleangabe korrigiert.
                   ITBPRG:    Logische ! Ausdruecke auf Stringvariablen korrigiert.
                   ITBPRG:    Bei der Datumszuweisung aus der Datenbank mit KW-Angabe wird jetzt das Datum als Montag der Woche korrekt uebernommen.
      316 13.05.06 ITBPRG:    Parser bei Formeln mit Pre-Klasse korrigiert (z.B.  $fx = -rdRechnungen.C207 * rdRechnungen.AddArray[0] * C12)
          15.05.06 VIDF:      Mit dem Flag 8 in der Parameterspalte laesst sich ein %-Zeichen anhaengen
                   ITBPRG:    Column[0].setCharEUR( TRUE/FALSE) und Column[0].setCharPercent( TRUE/FALSE) aktiviert. Damit laesst sich das
                              Eurozeichen oder das Prozentzeichen in der Spalte einblenden. Die Aktivierung muss in der Init()-Funktion erfolgen.
                   ITBPRG:    Column[0].setTxtBold( TRUE/FALSE) aktiviert. Damit laesst sich der Text in einer Zelle Fett ausgeben.
                              Die Aktivierung muss in der Init()-Funktion erfolgen.
                   ITBPRG:    Formeln sind jetzt in den Parameterlisten der Funktionen erlaubt.
                   ITBPRG:    STRING.executePrintText() aktiviert. Nur fuer Subroutinen gedacht, deren Funktion spaeter ersetz werden kann.
                   ITBPRG:    Zuweisungen von Funktionen zu Column[]-Variablen korrigiert.
          16.05.06 ITBPRG:    ITB-Programme werden jetzt auch aus USERFORM geladen.
                   API_WIN:   Beim Musterdruck werden jetzt beide Tabellenhaelften refresht.
                   ITBPRG:    Column[0].setTxtOn( TRUE/FALSE) aktiviert. Damit laesst sich der Text in einer Zelle sichtbar/unsichtbar schalten.
          17.05.06 ITBPRG:    String.strchg( Suchstring, Ersetzstring) aktiviert.
                   ITBPRG:    Print( Text) aktiviert.
                   ITBPRG:    Funktion IfwTabBase::PostPrint() wird zum Schluss aufgerufen.
                   IFWTAB:    Neue Steuerkommandos:
                              - Textzeilen fuer den Kopf zum Drucken #REF&4&zeilenr&textlinks&textmitte&textrechts#
                              - Textzeilen fuer den Fuss zum Drucken #REF&5&zeilenr&textlinks&textmitte&textrechts#
                              - Textzeile  fuer Titel                #REF&6&1&titel&&#
                              - Hintergrundbilder Hochkant, Quer     #REF&7&1&hochkant&querdruck&&#
                              - Raender in 1/10 Milimeter            #REF&8&links&oben&rechts&unten#
          17.05.06 PRGLOAD:   Kommando DocumentEdit() erweitert.
                              DocumentEdit( Modus, "Programmname", "Label", "Datei");
                                Der Parameter "Datei" ist unbenutzt.
                              Es kann nun auch fuer Auftraege angewendet werden
                              Modus 4:
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                                  Bei Auftraegen kann nur die Angebotsdatei als Quelldatei angegeben werden.
                   PINBOARD:  Neues Systemmakro prjlst.$74:
                               Spezialprogramm beim Erzeugen eines Jobeintrags von durch einen Auftrag. MarkFile=Auftrag.
                               Das Programm wird vorm Speichern des Jobeintrags aufgerufen. Bei einem Rueckgabewert groesser 0 findet keine
                               Speicherung des Jobeintrags statt.
                               Das Makro wird von der Jobliste aus aufgerufen (Programmname prjlst.$74).
          18.05.06 LINKER:    Stack von 1500000 auf 2000000 erhoeht.
                   PRNLIB:    Neues Druckvorlagenkommando [Vx:dkVdx] und [Vx:dKVdx] 
                              Mit der Zuweisung :dk kann der Dispobestand im Artikelstamm auf Unterschreitung einer Menge untersucht werden (IFW Modul Artikeldispo erforderlich).
                              Folgende Parameter werden benoetigt:
                               V1:  Vorgabe der alten Pruefmenge (bei Positionsaenderungen)
                               Vd:  Vorgabe des alten Pruefdatum (bei Positionsaenderungen); leer, wenn unberuecksichtigt
                               V2:  Vorgabe der aktuellen Pruefmenge
                               Vd1: Vorgabe des aktuellen Pruefdatums; leer, wenn unberuecksichtigt
                               V3:  Vorgabe der Vergleichswertes
                               Vx:  Startindex des Pruefzeitraums
                               Vdx: Enddatum des Pruefzeitraums
                              [Vx:dkVdx]
                               In Vx wird der Dispoindex zurueckgegeben, der den Dispobestand < Vergleichswertes im Zeitraum besitzt
                               V1 wird automatisch auf den Dispobetand in dem Index gesetzt.
                               Es ist zu beachten, dass in der Rueckgabemenge die beiden Vorgaben aus V1,Vd und V2 und Vd1
                               beruecksichtigt sind. Ein Vorgabewert wird nicht beruecksichtigt, wenn die entsprechende 
                               Datumsvariable leer ist.
                               Das Kommando :dk sucht den Dispowert von links nach rechts und gibt die Woche mit dem Ersten zu geringen Wert
                               zurueck.
                               Das Kommando :dK sucht den Dispowert von rechts nach links und gibt die Woche mit dem letzten noch ausreichenden
                               Wert zurueck.
                               Hinweis: Vx kann mit dem Kommando [Vd:iVx] in ein Datum umgewandelt werden.
      317 19.05.06 IFWTAB:    Neue Listen-Druckfunktionen aktiviert.
          23.05.06 EDIT_WIN:  Vorlageneditor auf >30kB Dateien eingestellt.
                   API_WIN:   Der Splitter wird erst ab Tabellen mit doppelter Bildschirmbreite aktiviert.
          24.05.06 ITBPRG:    Column.setTxtColor() aktiviert.
                   IFWTAB:    Neues Steuerkommando:
                              - Textfarbe einer Zeile  #REF&9&RRGGBB#
                              Neue Spaltenformatierung fuer Datum:
                                #1    Datum tt.mm.jjjj oder KW ww/jj, je nach Daten
                                #1,1  Datum tt.mm.jjjj KW ww
                                #1,2  Datum tt.mm.jj KW ww wt
                                #1,3  Datum tt.mm.jj/ww wt
                   PRGLOAD:   Problem mit dem Kommando ProdSetSollProdTermin bei gleichzeitiger PPS-Zeitberechnungsautomatik beseitigt.
                              Es trat bisher ein Zeitversatz des Dispotermins des benoetigten Einkaufmaterials auf.
                   FFPROD:    Mit dem Kennzeichen "T" in der Verfuegbarkeitsmaske (Zusatzmodul) einer Produktionsposition kann der Termin
                              einer Position entkoppelt und manuell gesetzt werde.
      318 30.05.06 FFEINK:    Ist im Einkauf ein Staffelpreis hinterlegt (Anfragepositionen), so wird er auch dann uebernommen,
                              falls ein passender Fremdwaehrungsschluessel in der Artikel-Hauptmaske zum Lieferant hinterlegt ist.
                              Bisher hatte bei Fremdwaehrungsangaben faelschlicherweise die Hauptmaske vorrang.
                   FAKTEDIT:  Beim Stornieren eines Wareneingangs wird bei fehlender Bestellung der Fehler -257 in Klartext ausgegeben.
                   FFARTBCH:  Mit FAKT_BETON gabs beim Buchen get_codemai == NULL 25 -> artLogData::getArtData() nur auf Artikelstamm begrenzt.
          31.05.06 EMUC:      Zahlenconvertierung zu Excel default auf AUS gestellt.
                   COMBASE:   Beim Client-Hostebetrieb koennen jetzt Clipboarddaten bis maximal 60kB uebertragen werden. Bisher gab es bei
                              mehr als 30kB eine Schutzverletzung auf dem HOST.
      319 19.06.06 API:       Windowsfunktionen Part 1.
          20.06.06 TOBITFW:   Einlesen von Email-Bestelldaten erweitert: Es wird jetzt anhand der Versionsnummer die Importvorlage
                              afolst$e.??? oder beblst$e.??? gesucht. Der Import erfolgt in die entsprechend gefundene Datenbank
                              (Vertrieb afolst oder Einkauf beblst).
      320 22.06.06 CALCMAI:   Absturz in der Forecastparametermaske beseitigt.
      321 26.06.06            Support von segmentierten Dantenbankdateien (>2GB) erweitert:
                   FFMANDAN:  Beim Mandanten neu Anlegen werden keine *.^?? Dateien mehr mitkopiert (Datenbaenke >2GB)
                   DFRECOVE:  Beim Datenbank regenerieren, werden jetzt auch *.^?? Dateien korrekt verarbeitet (Datenbaenke >2GB)
                   IFWTAB:    Textanzeige bei sehr grossen Tabellen korrigiert (API_WIN).
          27.06.06 IFWTAB:    Anzeigetraegheit der Baumdarstellung bei grossen Datenmenge beseitigt (Cache eingebaut).
      322 29.06.06 DFED2LIB:  Alles selektieren mit ALT-B in einer Liste (Stueckliste, Positionsliste ...) beendet automatisch den
                              Selektionslauf beim erreichen des Listenendes (bisher musste er bei grossen Datenbaenke manuell abgebrochen werden).
                   EMUMFRM:   Alt-E fuehrt nicht mehr zum Windowsmenue
                   FFDISPO    DeliverSalesOrder erzeugt keine Textposition "Auftrag xxx vom ..." im Lieferscheinen.
      323 30.06.06 VIDF:      Schutzverletzung in der IFW-Tabelle beseitigt.
      324 04.07.06 FFPERS:    Berechnung der Toleranzstundenkompensation im Personalwesen (PersonalToleranzKompensiertNegativeUeberzeit) angepasst.
          05.07.06 ITBPRG:    Kommando SetViewMode( INT $mode) aktiviert:
                                Damit laesst sich der Anzeigemodus des Baums einer Zeile steuern: 0 Daten, 1 Baum zu, 2 Baum aufgeklappt.
                                Das Kommando wird in OutRow() gewendet. Es schaltet den Anzeigemodus der Zeilendefinition ROWDEF um.
                                Der Wert gilt fuer alle nachfolgenden Ausgaben der Zeilendefinition ROWDEF.
                              Kommando setDbEdit( INT $feldnummer) eingebaut:
                                Damit kann das Feld der Datenbank in der Spalte eingegeben werden.
                              Kommando setDbEdit( INT $feldnummer, STRING $Programmname, INT $SprungLableNr, STRING $Parameter) eingebaut:
                                Beim Speichern des Satzes wird das Makroprogramm $Programmname aufgerufen. Es muss den Wert 1 zurueckliefern,
                                damit eine Speicherung erfolgt. Mit [Vt<] kann der Wert $Parameter im Makro verwendet werden.
      325 11.07.06 API:       Windowsfunktionen Part 2.
                   FFPROD2:   Bei Produktion Sollmengenaenderung wird bei Arbeitsgaenge "A" der Wert im Feld "Anzahl" auf auf die neue Menge gesetzt
                              und nicht mehr die Sollmenge im Verhaeltnis hochgerechnet. Voraussetzng ist dass die Menge im Feld "Anzahl" gleich der
                              Ursprungssollmenge des Fertigprodukt ist. Damit werden auch Arbeitsplaene mit Sollvorgaben 0 und Einmalzeiten korrekt
                              beruecksichtigt.
      326 13.07.06 FFWEG:     Zu mehreren Warenruecksendungen kann jetzt auch eine Sammelgutschrift angelegt werden.
                   COMSOCK:   Die TimeOut Zeit eines Pings vom Host zum Client von 5 Sekunden auf 15 Sekunden erhoeht.
                              Ausserdem wird jetzt im Kommunikationslogbuch COMxxxx.log der Vorgang mit der
                              Zeile "Ping Timeout 30 sec, close connection" protokolliert.
                              Zusaetzlich wurden zwei Neue Wert in der SERVER.INI des Hosts aufgenommen:
                              ;SendTimeOutSec: Wert 1/64000. Default 15.
                              ;Wenn der Host beim Senden von Daten ein Fehler gemeldet bekommt, versucht er es solange, bis
                              ;die Zeit SendTimeOutSec abgelaufen ist. Dann erst wird eine Fehlermeldung generiert und die
                              ;Verbindung beendet. Zusaetzlich bestimmt der Wert ab wann ein Ping zum Client gesendet wird.
                              ;HostPingTimeOutSec: Wert 1/64000. Default 15.
                              ;Wenn der Server keine Daten sendet, sendet er ersatzweise alle 15 Sekunden ein Ping an den Client.
                              ;Antwortet der Client nicht innerhalb der hier angegebenen Zeit in Sekunden,
                              ;so beendet der Host die Verbindung.
      327 18.07.06 FFWEG:     Korrektur bei "von Warenruecksendung Gutschrift schreiben".
                   API:       Windowsfunktion virtuelle Liste.
      328 19.07.06 FFPROD2:   Bei Produktionssplittung wird bei Arbeitsgaenge "A" der Wert im Feld "Anzahl" auf auf die neue Menge gesetzt
                              und nicht mehr die Sollmenge im Verhaeltnis hochgerechnet. Voraussetzng ist dass die Menge im Feld "Anzahl" gleich der
                              Ursprungssollmenge des Fertigprodukt ist und die Sollmenge Null. Damit werden auch Arbeitsplaene mit Sollvorgaben 0 
                              korrekt beruecksichtigt.
          21.07.06 PRGLOAD:   Das Kommando DispoSelection erweitert:
                              DispoSelection( Modus, DatumBis, DatumVon);
                              Es kann jetzt ein "DatumVon" angegeben werden. Der Dispostrahl wird dann nur in dem Zeitraum
                              DatumVon bis DatumBis untersucht.
                              Wird kein DatumVon angegeben, so wird immer der Dispozeitstrahl von Anfang an untersucht
                              (in der Regel ab Anfang des Jahres).
                              Das "DatumVon" findet in den folgenden Modis KEINE Verwendung:
                              Modus 2: Der Dispowert wird nur in der angegebenen KW geprueft, nicht in den Wochen davor
                              Modus 4: Der Dispowert wird in der angegebenen KW geprueft und zusaetzlich die Folgewochen des Jahres. Wird in den
                                       Folgewochen der Dispobestand wieder positiv, wo wird der Artikel doch nicht selektiert.
                              Modus 8: FORECAST: Es werden alle Artikel selektiert, die bis zum angegebenen Zeitpunkt laut Forecast-Bestellberechnung zu bestellen sind.
                                       Die Modis 1 2 und 4 spielen dabei keine Rolle.
                   FFBDEPRG:  Im BDE-Script gibt es zwei neue BDE-Events:
                              SerialKeyInputPersLogon: Ein Personalcode fuer Kommen/Gehen wurde mit dem Barcodescanner gescannt.
                                                       Diese Barcode haben ein fuehrenden . mit folgender Personalnummer.
                              SerialKeyInputPersProd:  Ein Personalcode fuer Produktion wurde mit dem Barcodescanner gescannt.
                                                       Diese Barcode haben ein fuehrenden % mit folgender Personalnummer.
                   FFBDE:     Es koennen jetzt in den personalspezifischen BDE-Zeittabellen auch die Kennzeichen A/B fuer
                              Autostop/Autostart der Produktionen und das Kennzeichen S fuer Zwischenzeit hinterlegt werden.
                              Es werden dann die der Personalnummer zugeordneten Pausenstopzeiten verwendet. Bisher galt fuer diese
                              Vorgaenge nur die globale BDE-Zeittabelle.
          25.07.06 IFWTAB:    Refresch der +/- Anzeige beim Umschalten korrigiert.
      329 26.07.06 BRECLIB2:  Index Segmenter (MAX_KEYSPEC) von 54 auf 119 erhoeht.
                              Umschaltung der Pagesize der Datenbank von 2k auf 4k bei mehr als 54 benoetigten Indexsegmente.
                   ITBPRG:    Beim Kommando GetRecord() und ForEachFromTo() werden die Paramater mit CharToOem() konvertiert.
      330 27.07.06 ITBPRG:    Korrektur von GetRecord() und ForEachFromTo().
                   API:       Windowsfunktion RichEdit Feld bei den Flexfeldern. Drag&Drop von Files mit UNC Name aktiviert.
      331 01.08.06 FFBDE2:    BDE Filescannservice zum Stechen aktiviert. Kommandos Kommen, Gehen und WechelKommenGehen
                   PRGLOAD:   Neues Kommando SetOneTimeFileScan()
                              SetOneTimeFileScan( Dateiname, Zeilenoffset);
                              Damit laesst sich eine Datei angeben, deren Textzeilen als "Netwerkmeldung" eingeblendet wird.
                              Das System scannt nach absetzen des Kommandos alle Sekunde die Datei. Ist sie vorhanden,
                              wird sie umbenannt, ausgelesen und geloescht. Die Textzeilen werden unmittelbar in der
                              Netzwerkmeldung angezeigt.
                              Nach auftreten der Datei wird der Scannvorgang beendet.
          02.08.06 FFPROD2:   - Beim automatischen Warenersatz in den Produktionen wird bei der Mengeneinheit "Stk" in der
                                Produktionsposition die verfuegbare Menge aus dem Artikelstamm immer abgerundet auf ganze Stuecke.
                              - Zusaetzlich wird aus der Ersatzposition die tatsaechliche Menge zurueckgeladen. Damit sind
                                evt. vorhandene Rundungen beruecksichtigt.
                              - Die Freigabeliste wird von oben nach unten durchlaufen, bisher wurde sie nach Atikelnummer sortiert
                                durchlaufen.
          03.08.06 FFBDE2:    BDE-Erfassungsmaske 1. Version
          04.08.06 FFDISPO:   RechnungBeton::automatik() extrahiert. 2. Menuepunkt in der BETON-Version 
                              MENUITEM " automatische Rechnungsstellung nach Auftraegen " 0x200b aktiviert.
      332 09.08.06 FFSTDVK:   Modul Kupfer-Teuerungszuschlag (KuO) bei Rechnungen und Gutschriften aktiviert.
                   WINLIB:    Funktion MA_BARCODE in input_mask_item aktiviert. In Verbindung mit dem Flag MAM_BARCODE im Maskenmodus
                              allgemein einschaltbar.
          11.08.06 FFBDE2:    Spezialmakro .$75 fuer die Barcodeeingabe in der BDE-Erfassungsmaske aktiviert.
          11.08.06 FFARTBCH:  Wareneingaenge zu stornierten Bestellungen buchen keine Bestellmengen mehr im Stamm.
                              Das Stornokennzeichen 'S' wird jetzt wie das Erledigtkennzeichen 'E' beruecksichtigt.
          15.08.06 FFBDE2:    Autopausenstechen bei Mehrfachtabellen geaendert:
                              Die Zeittabellen werden jetzt immer alle 10 Minuten in der 17. Sekunde eingelesen, um Kollisionen
                              mit dem Pausenbeginn zu verhindern.
          16.08.06 DFRW:      init_recdata() wird nicht mehr 2 mal aufgerufen beim Lesen einer Maske (BOOL bDone_init_recdata)
          18.08.06 FFSTATIS:  Artikel und Warengruppenstatistik: Die Lagerumschlagshaeufigkeit beim Berechnungsmodus "M" ueber Mengen
                              im Januar der Jahre korrigiert. Es wurde beim Jahresuebertrag fuer die Dezembermenge vom
                              Vorjahr die falsche Zeile verwendet.
      333 01.09.06 FFVERK:    Beim Kupfer-Teuerungszuschlag erfolgt eine Aktuallisierung des Kurs beim "Rechnung von Beleg" schreiben
                              nur noch wenn im Ursprungsbeleg ein Abrechnungsatz von 0 enthalten war.
                              Ist im Vorbeleg bereits ein Abrechnungssatz enthalten, so wird das Feld "letzte Monate" auf 0 gesetzt
                              und der Kupferkurs unveraendert belassen.
      334 06.09.06 FFBDEx:    BDE-Bildschirmerfassung ergaenzt.
                              Infokommando (280) im Filescanservice aktiviert.
          08.09.06 FFPROD2:   X-Artikelersatz begonnen
                   FFPPS3:    Das Kennzeichen '-' -> "nicht in PPS planen" geaendert auf Kennzeichen '#'
          11.09.06 DFEXTFNC:  Druckkommando Cxx.REC_OFFSET und Cxx.REC_SIZE verfuegbar (fuer SQL-Generierung).
          13.09.06 FFBSTLST:  Die Funktion DispoToOrderList bestellt nur noch Warenfehlmengen >0,0001
      335 14.09.06 DFED2LIB:  get_autoinc2_mainumber_() und get_autoinc2_mainumberNoAccess() auch fuer Zahlenfeldtypen verwendbar
                              Bei diversen Fehlermeldungen fuer doppelte Schluessel Zahlenfelder in Strings umgewandelt.
          18.09.06 DFEXTFNC:  Druckkommando Cxx.REC_VARTYP und Cxx.REC_NOTSAVE verfuegbar (fuer SQL-Generierung).
          19.09.06 DFEXTFNC:  Druckkommando Cxx.REC_ARCHIV verfuegbar (fuer SQL-Generierung).
      336 19.09.06 FFPERS:    Personal Tagesstundenerfassung eingebaut
          20.09.06 API_MSK:   F1-Userauswahl direkt am Feld wie eine Combobox plaziert.
                   PRGLOAD:   Das Makrokommando GetRecord() loescht die gesamte Maske wenn ein Fehler zurueckgemeldet wird
                              (auch bei KeyNotFound und EndOfFile).
          21.09.06 PINBOARD:  Beim Nachrichtenverschieben mit angehaengtem Projekt, wird der Jobeintrag jetzt auch bei mehrfachem
                              Weitervesand korrekt mitbewegt.
          21.09.06 DFOBJ:     Ein evt. vorhandenes Listenfenster wird jetzt beim Fensterrefresh ebenfalls aktuallisiert (edOpenMask).
                              Beim Belegschreiben wurde u.U. beim Verarbeitungsabruch das Listenfenster nicht mehr dargestellt.
                   DFED2LIB:  Bei der Autonummerierung von Belegen kann jetzt das Archiv mit beruecksichtigt werden (doppelte Nummernvergabe).
                              Dazu muss beim Datenbankobjekt das Kennzeichen PDF_CHKARCHIVAUTOINC gesetzt werden.
                              Dies kann durch das Kennzeichen 'G' in den Datenbankparametern unter "PDF-Flags an" erfolgen.
          22.09.06 PRGLOAD:   Der Datensatzfokus bleibt nach einem Selektionslauf erhalten.
                   PRGLOAD:   Neues Kommando GetRecordFilter( modus, feld1, inhalt1, feld2, inhalt2, feld3, inhalt3, feld4, inhalt4);
                              Es hat die gleiche Funktion wie GetRecord(), nur wird bei gesetztem Indexfilter das Ergebnis auf die
                              Filterkondition geprueft.
          25.09.06 PRGLOAD:   Kommando OrderCosting() erweitert. Als Datum kann jetzt auch eine Variable uebergeben werden.
          26.09.06 DFED2LIB:  Kommando GetNextFreeNumber() ermittelt jetzt auch einen Wert wenn in der Resourcedefinition kein
                              Indexpfad auf dem Feld angegeben ist (get_autoinc2_mainumber_()). In diesem Fall ist darauf zu achten, dass
                              der aktuelle Sortierpfad das angegebene Feld ist.
      337 26.09.06 FFBSTLST:  DispoToOrderList() beruecksichtigt jetzt auch keine stornierten Bestellungen mehr (Kennzeichen S).
                   FFREPARA:  Bei  Reparatur abschliessen wird jetzt das Makroprogramm
                              Repara.$76 aktiviert. Bei einem Rueckgabewert !=0 (End()) erfolgt keine Speicherung.
          27.09.06 FFPROD2:   Erste X-Artikel Ersatzfunktionen verfuegbar
                   PRGLOAD:   Makrokommando ProdCheckSelection erweitert um MOdus 4 und 5 (IFW Zusatzmodul "Globale Freigabeliste"):
                              ProdCheckSelection( Modus);
                              ProdCheckSelection( Modus, Pruefdatum);
                              ProdCheckSelection( Modus, Pruefdatum, ErsatzartikelVerwenden);
                              Damit koennen Produktionspruefungen durchgefuehrt werden.
                              Modus 0: Dispobestand auf Produktions-Dispotermin
                              Modus 1: Dispobestand auf vorgegebenes Datum
                              Modus 2: Materialprfung auf aktuelles Lager
                              Modus 3: Materialprfung auf aktuelles Lager ohne Beruecksichtigung verwendeter Unterbaugruppen.
                              Modus 4: Ein X-Artikelersatz wird durchgefuehrt. Der Parameter ErsatzartikelVerwenden wird ignoriert.
                              Modus 5: Ein X-Artikelreset durchgefuehrt. Der Parameter ErsatzartikelVerwenden wird ignoriert.
                              ErsatzartikelVerwenden:
                               Wird hier ein Wert von 1 angegeben, so werden Ersatzartikel aus der Freigabeliste bei Bedarf
                               immer verwendet und eingesetzt. Diese Funktion ist nur bei Modus 2 und 3 moeglich.
                   BRECLIB2:  makeReqData() verwendet jetzt rec->rootkey fuer einen gesetzten Filterschluessel, nicht mehr rec->rootmai->buff.
          28.09.06 PRGLOAD:   Kommando DocumentImportFile erweitert. Es koennen nun Variablen als Parameter angegeben werden
                   BDEPORT:   Die Serielle Kommunikation mit den BDE Terminals wurder erweitert:
                              - Es werden nicht zuordenbare Daten auf dem seriellen Buss geloescht
                              - Das erste Antwortzeichen vom BDE-Geraet wird nicht als Rahmenende des Telegramms ausgewertet. Wurde
                                es bisher durch eine Stoerung faelschlicherweise als Rahmenende erkannt, so entstand ein Pruefsummenfehler.
                                Das Zeichen wird jetzt statt dessen repariert.
          29.09.06 WINIFW:    Tabs im Browser, Selektion, ExtWindows aus anderer Datenbank
      338 04.10.06 FFPPS2:    PPS Zeittabelle Eingabe von abweichenden Zeiten in der Artikelstammliste: Bei Eingabe von 1 wird
                              der faelschlicherweise der Wert 10 eingegeben. Problem beseitigt.
                   ITBPRG:    Fehler -1359 wenn das Zeilenarray ueberlauft.
                              Anzeige des Stands der Zeilengenerierung in der Statuszeile.
          05.10.06 PRNLIB:    Die Kapazitaetsbegrenzung des Ausgabearray der Druckvorlagen und der ITB-Programmme entfernt.
                              Die Speichergeschwindigkeit in grossen Ausgabearrays optimiert.
                   POSNUM:    Die Autonummerierung von Ausgangsbelegen mit einer Positionsnummer groesser als 99.00 auf 00001-Nummerierung
                              umgestellt.
                              Somit wird beim Zusammenfuehren groesserer Belege die Positionsfolge bis maximal 9999 Positionen
                              korrekt abgebildet.
                   PRGLOAD:   Das Kommando Change() um Modus 256 erweitert:
                              Modus 1:   Bestaetigung der zu aendernden Menge durch den Benutzer.
                              Modus 2:   selektierte Eintraege nicht deselektieren.
                              Modus 4:   Es werden Eingabewarnungen beim Speichern eines Datensatzes unterbunden.
                              Modus 8:   Keine Ausgabe der Meldung "Keine Daten selektiert".
                              Modus 256: Der Aenderungslauf wird im Online-Buchungsmodus durchgefuehrt.
      339 05.10.06 FFSTDVK:   Das Kupferkurssystem um einen 2. Kupferkurs erweitert. Der Kurs kann in den Belgen mit einer 
                              negativen "letzte Monte" Angabe ausgewaehlt werden. Folgende Modis stehen somit zur Verfuegung:
                               x<0 -> Kurs der x letzten Monate der 2. Kursnotierung
                               x=0 -> Fixer Kurs aus dem Feld "Kurs fix".
                               x>0 -> Kurs der x letzten Monate der 1. Kursnotierung
          06.10.06 PRNLIB:    Fehler in der Beschleunigungsroutine von Vn beseitigt.
      340 13.10.06 WINLIB...: Eingabefelder mit alternativer Laenge moeglich (Scrolltext)
                              Umsetzung der Zeichen Pfeil links/rechts und Haken bei Nicht-Terminalfont durch 2-Byte Unicode
                              Auch noch Zeichen Unendlich und Punkt.
          16.10.06 STDPRJ2:   Die Parametermasken (Programmeinstellungen) werden jetzt automatisch zwangszentriert.
                   FFBDE2:    Bei der BDE-Bildschirmerfassung sind die Timeouts einstellbar (Programmeinstellungen 54)
          17.10.06 FFBDE2:    - Bei der BDE-Bildschirmerfassung werden keine Produktionszeiten mit Startzeit groesser Stopzeit
                                bis zu einer Stunde mehr angezeigt. In diesem Fall wird bisher abgelaufene Produktionszeit
                                mit 0 angezeigt. Beim Zeitversatz der Uhren zwischen dem BDE-PC und dem BDE-Manager PC kann dies auftreten.
                              - Es werden jetzt auch BDE-Logbucheintraege von internen Scriptkommandos beim Bildschirmstechen mitgeschrieben
                                (bei aktivierten erweiterten BDE-Logbuch).
                              - Die Stechzeiten beim kombinierten Produktions-/Kostenstellenstechen werden jetzt immer vom BDE-Hostrechner bestimmt.
                   WINIFW:    ParentWindows werden jetzt von der Bedienung her Abgeschaltet.
          18.10.06 WINIFW:    Listenrefresh bei PageUp/Down (m_bDrawOff) korrigiert.
          23.10.06 WINIFW:    RichEditView in ApiListFrame
                   FFPROD2:   - Rueckrechnen bei Eingabe der Sollmenge in der Produktionsproduktion mit Verschnittzuschlag ueberarbeitet.
                              - X-Ersatz Reset bringt jetzt die korrekte Menge auch bei Verschnittzuschlag
                              - Beim Fertigteile-Absplitten wird bei Verschnittzuschlag die verbleibende Menge entsprechend verringert.
          25.10.06 WINIFW:    RichEditView und Fensteranordnung
          26.10.06 WINIFW:    Neue Fensterpositionierung, Modale Bearbeitung erweitert, GoBack/Refresch Icon
      341 27.10.06 WINIFW:    Anzahlanzeige, Cachemanagement optimiert.
          30.10.06 PRNLIBx:   Ausgabe von Feldnummern vpn BYTE auf WORD erweitert (TheDvlTextErsatz.TransCTable.translate())
          31.10.06 FFSTDVK:   Meldung "e_get_codemai ==NULL !,8 >Kundennr  ><" beim Abrufen von Kunden auf eine Lieferschein ohne Nettofelder
                              beseitigt.
                   FFBETON:   Beim Wiegen wird in den Lieferscheinstapel die Uhrzeit mit in das Bemerkungsfeld eingetragen (H=SS:MM).
                              Sie steht als letzter Wert hinter Tara= und Id=.
          01.11.06 CONLIB:    close_window() umgebaut. Das geht jetzt nur noch mit Handle, ca. 90 Stellen im IFW angepasst.
          02.11.06 WINIFW:    BCMenu mit truecolor Icons aktiviert
          03.11.06 WINIFW:    Popupmenu mit F4/F10 aktiviert, Funktionen aktiviert.
                              IFW-Tabellenausgabe in CApiListFrame
          06.11.06 WINIFW:    IFW-Hauptmenu klassifiziert, Modal-level in Applikation und pro Menuepunkt eingebaut
      342 07.11.06 WINIFW:    doAPIEditExtWindow() und doAPICloseIgg(); Refeshknopf F5 aktiviert
                   WINIFW:    Tracken der IFW Routinen beim Klicken auf die Liste in einer Maske gerichtet.
                   FFBSTLST:  Bei "Von Bestelliste Bestellung schreiben" werden jetzt die Mengenangaben auf die in der
                              Bestellung verfuegbaren maximalen 3 Nachkommastellen gerundet.
          08.11.06 FFARTPR:   Modul "Kundenspezifische Preise" erweitert: In der Preisliste kann jetzt im neuen Feld
                              "Rabatt PG:" eine Preisgruppe hinterlegt werden, die bei der Rabattausweisung fuer den
                              Grundpreis verwendet wird. Bisher wurde bei Rabattangaben immer der Preis bezogen auf 
                              die PG00 berechnet. Mit dem Feld kann der Preis auch auf PG01 bis PG05 umgelegt werden.
                   FFPERS:    In der Personalstatistik koennen jetzt die Abgegoltenen Uberstunden monatsweise eingegeben werden.
                              Das bisherige Gesantfeld des ganzen Jahres bildet sich aus der Summe der Monatseintraege.
                              Die Werte sind auf der Seite "Arbeitszeituebersicht" einzugeben.
          09.11.06 WINIFW:    Neue Icons. Cache-Management bei gesetzten Filter angepasst. Bei geringer Menge auf alles gecacht umgestellt.
          10.11.06 WINIFW:    Sortierspalte grau eingeblendet.
                   FAKTSUB:   Bei "Inventur aktiv" koennen jetzt noch Angbeot, Auftraege, Anfragen und Bestellungen geschrieben werden.
          14.11.06 FFINVENT:  Neues Inventurmodul "Fortlaufende Inventur" implementiert.
          15.11.06 DFEDLIB:   Beim Papierkorb loeschen wird jetzt zusaetzlich das Archivierungsfeld geprueft. Bisher wurde nur auf den
                              Vermerk '.' geprueft.
                   FFPROD:    Bei aktiver Inventur kann jetzt kein Produktionsabschluss, Istwerteintragung, Lagerbuchung und Lagerumbuchung
                              vorgenommen werden.
      343 16.11.06 FAKTEDIT:  Schutzverletzung bei Erstellen einer neuen Nachricht mit Strg-N aus einem tief verschachtetlten Datenbankaufruf
                              beseitigt.
      344 16.11.06 PRNLIB5:   Uebersetzung der Feldnummern beim Ausdrucken korrigiert. Es wurde als Datenbankhaendle der volle Handle verwendet.
                              DFHANDLE_DFNRMASK als Maske verwendent.
          17.11.06 API...:    Selten vorkommende Schutzverletzung beim Schliessen der Druckvorschau beseitigt.
                   TOBITFW:   Bei Email versenden ueber DAVID wird der Fehler "Dateianhang nicht gefunden" wird jetzt als Text ausgegeben,
                              nicht mehr als "Unbekannter Fehler".
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                              EmailInOutFilter: Wert 0/1. Default 1
                              Mit dem Wert 1 werden nur noch Vorgaenge aus dem Verzeichnis Eingang oder Ausgang (in/out) vom David an
                              das IFW gemeldet.
                              Mit dem Wert 0 werden alle Vorgaenge gemeldet.
                   VIDF:      MAIC_SYMBOL und MAIC_COLOR implementiert. Zusaetzlich noch MAIC_SYSFLAGS und MAIC_ATTACHMENT vorgesehen.
          20.11.06 PRFLOAD2:  Neues Kommando CallDavidAPI() verfuegbar:
                              Damit kann der Terminkalender vom IFW mit dem Terminkalender vom Tobit-David sysnchronisiert werden.
                   DVAPI32:   Beim Terminkalenderabgleich mit CallDavidAPI() wird die Druckvorlage "tmbase_c.dvu" oder falls
                              nicht vorhanden "tmbase_c.dvl" aufgerufen. Dabei wir pro Eintrag der Hunk "HAUPT" ausgefuehrt.
                              Die Ausgabe wird mit der Zeile "##Informationen:" an den Text der Nachricht angehaengt.
                   PRGLOAD:   Funktion von DocumentImportFile() korrigiert.
                   DFIMP:     Beim Belegimport wird jetzt die Belegsummierung der Positionslisten zwischengespeichert.
                              Damit bleibt bei einem Speichermakro der Position im Import und Nachladen eines Artikels
                              die Summenbildung bestehen.
      345 21.11.06 API_MSK:   Die Druckvorschau der IFW-Tabelle korrigiert (wird wieder im Hauptfenster angezeigt).
                   FFPERS:    Personalstundenerfassung erweitert: Es koennen jetzt auch tolerantfreie Zeiten in der Stundenerfassung
                              eingtragen werden. In der Personalstatistik sind diese Zeiten separat ausgewiesen und werden durch die
                              Wochentoleranz nicht vermindert.
                              Bei der BDE-Uebertragung wird die Samstag/Sonntag-Arbeit (an den nicht regulaeren Arbeitstagen mit *)
                              automatisch als toleranzfreie Arbeitszeit gespeichert.
                              In der Personalstatistik ist jetzt das Ueberstundenkonto Monatsweise aufgefuehrt.
                              Die abgegoltene Ueberzeit kann jetzt dort auch Stundenweise eingegeben werden.
          24.11.06 API_MSK:   Erst Drag&Drop Dateiablageroutinen aktiviert.
          27.11.06 API_MSK:   Dateianhangfunktionen erweitert.
                   FFPROD2:   Bei der Produktionsanlage wird das Feld "Wert" vom Artikelstamm mit in den Produktionskopf
                              uebertragen, falls vorhanden.
      346 30.11.06 DFLIB..:   Feld MAIC_SYSFLAGS fuer das Papierkorbkennzeichen aktiviert.
          05.12.06 PRGLOAD:   Neues Kommando ProdConsignment()
                                ProdConsignment( Modus)
                                ProdConsignment( Modus, "Programmname")
                                ProdConsignment( Modus, "Programmname", "Sprungziel")
                                ProdConsignment( Modus, , "Sprungziel")
                              Damit kann von einer Produktion ein Kommissionierschein geschrieben und ausgedruckt werden.
                              Mit dem Progamm "Programmname" koennen Parameter vorm Speichern des Kommissionierscheins (z.B. Quell/Ziellager)
                              gesetzt werden. Als Ausdruck wird das Formular "Automatik" aufgerufen.
                                Modus 0:  Der Kommissionierschein wird nur erstellt.
                                Modus 1:  Der Kommissionierschein wird erstellt und sofort ueber das Formular "Automatik" gedruckt.
                                Modus 2:  Der Kommissionierschein wird erstellt und zum bearbeiten fuer den Anwender geoeffnet.
                                Modus 16: Keine Pruefung auf schon mal vorhandenen Kommissionierschein
                                Modus 32: Keine Loeschung der original Quellager
          07.12.06 PRGLOAD:   Das Kommando Change() um Modus 16 und 32 erweitert:
                                Modus 1:   Bestaetigung der zu aendernden Menge durch den Benutzer.
                                Modus 2:   selektierte Eintraege nicht deselektieren.
                                Modus 4:   Es werden Eingabewarnungen beim Speichern eines Datensatzes unterbunden.
                                Modus 8:   Keine Ausgabe der Meldung "Keine Daten selektiert".
                                Modus 16:  Keine Zaehl- oder Fragebox wird geoeffnet
                                Modus 32:  Kein Benutzerabbruch moeglich
                                Modus 256: Der Aenderungslauf wird im Online-Buchungsmodus durchgefuehrt.
                              Neues Kommando SearchExt()
                                SearchExt( Modus)
                                SearchExt( Modus, "Programmname")
                                SearchExt( Modus, "Programmname", "Sprungziel")
                                SearchExt( Modus, , "Sprungziel")
                              Es hat die gleiche Funktion wie Search(). Es Muss aber ein Funktionsmodus angegeben werden
                              Es ist zur Zeit nur eine Option vorhanden:
                                Modus 32:  Kein Benutzerabbruch moeglich
                   FFPROD2:   Bei der Produktionspruefung auf Dispobestand wird jetzt eine Toleranzmenge von 0,0005 beruecksichtigt.
      347 08.12.06 DFPRN:     Beim Drucken wird nach dem Laden des Datensatzes das Makro .$04 aufgerufen. Damit wird eine
                              Einschraenkung der Rechte im Makro .$04 auf Datensatzebene beim Drucken beruecksichtigt.
                   WINIFW:    Refresh der Sichtbarkeit der Felder in der Maske in der Windowsversion bei aktivem .$04 Makro korrigiert.
          09.12.06 DFPDF:     Neues Flag PDF_OWNER 0x08000000: Damit geflagte Datenbanken werden lese-verschluesselt
          11.12.06 WINIFW:    Nur Lesefelder werden grau dargestellt. Untermasken mit editiermodus versehen.
                              Fensterpositionierung nach oben und links begrenzt (GetDesktopRect()).
          12.12.06 DFED2LIB:  Eintrag "ID:" im Logbuch nur noch bei Feldern "ArtID" 135.
                              Anzeige der langen Postleitzahl korrigiert.
                              Umlaute in den Dateinamen der Dateiablage
                   DFED2LIB:  Beim Suchen wird jetzt auch die durchsuchte Anzahl angezeigt.
                   PRNLIB3:   Neue Druckausgabe [Xnn. 
                              Das Kommando greift auf ein Dantenbankfeld genauso wie das Kommando [Cnn zu.
                              Der Wert wird dabei immer im ANSII-Format ausgegeben, egal ob die Datenbank in OEM oder ANSII erstellt ist.
                   DFLIB:     Beim Suchen wird im Zaehler auch die Anzahl durchlaufene Datensaetze angezeigt (000000/000000)
          13.12.06 EMUC:      Der Pfadname des gestartetetn EXE wird in der Windows-Programminformationsbox angezeigt.
                   IFWSTART:  Der neue IFW-Programmlader kopiert jetzt die IFW Dateien auf die Lokale Festplatte in 
                              "Eigene Dateien / lokale Applikationsdaten" und startet dort das IFW.
                              Mit der Option /network fuehrt der Starter das Programm wie bisher auf dem Netzwerklaufwerk aus.
                   EMUC:      Wenn das IFW Handbuch "handbuch.chm" lokal vorhanden ist, wird diese aufgerufen, nicht das 
                              Handbuch vom Netzwerklaufwerk.
      348 14.12.06 IFW:       Alle Text aus SYSTXT deaktiviert und in die Dateien aufgenommen.
                              Bei einem Netzwerkabriss wird der Betrive Fehler -3006 ausgegeben. Beim oeffnen einer Datenbank
                              in der Situation wird mit der Meldung "Zugriffsfehler: Die Netzwerkverbindung scheint gest”rt zu sein!" angezeigt.
                              Wird die Netzwerkverbindung wieder hergestellt, werden die Datenbankzugriffe automatisch wieder hergestellt.
          15.12.06 WINIFW:    Der blaues Eingabecursor in der Liste wird nur noch angezeigt wenn die Spalte nicht die
                              sortierte Spalte ist oder die Zeile in der Datenbank selektiert ist.
          19.12.06 FFKDSTAT:  Fehlermeldung -4 bei der Kundestatistikberechung wird jetzt im Klartext ausgewiesen.
                              Sie ruehrt von geloeschten Artikel/Warengruppen her, die verkauft wurden.
          20.12.06 FFVERT:    vertreterermittlung() beruecksichtigt jetzt 10-Stellige Postleitzahlencode (rechtsbuendig ausgerichtet).
                   API_WIN:   Beim Listendruck wurden Tabellen mit weniger als 20 Zeilen auf einer Seite (ueberhohe Zeilen) wurden nicht alle Zeile
                              gedruckt. Problem beseitigt.
                   WINIFW:    DropDown Menues fertig.
                              Erst SubMask-Funktionen (z.B. "brutto.msk") aktiviert.
          21.12.06 DFFNC:     Die Watchdog Routine meldet einen Fehler an der statio.rec erst nach schliessen der Datei. Dadurch haellt eine
                              Station die Datei waehrend eines Fehlerfalls nicht offen.
                   DFED2LIB:  Noch weitere TEXT() Meldungen gefunden und entfernt.
                   WINIFW:    Brutto und Rabattbetragseingabefleder aktiviert.
                   WINIFW:    Bei veraenderter Schriftgroesse in der IFW-Tabelle wird jetzt das Raster korrekt angezeigt.
                              In der Windows-Datenbankliste laesst sich die Schriftgroesse ueber das Systemmenue des Fensters einstellen.
          22.12.06 WINIFW:    doAPIListBox aktiviert.
                   LISTEINT:  Das Einfuegen der Datensaetze im Cacheanfang war so lahm ->
                              ListeInt::InsertCnt() und ListeInt::SetAt() eingefuert.
          02.01.07 FAKTSUB:   Die Mehwertssteuermaske laesst sich jetzt auch mit F2 speichern.
                   WINIFW:    Funktion F3 - Neu Positionieren eingebaut.
                              Komplett-Refresh der Liste beim Speichern neuer Positionen aktiviert.
          03.01.07 WINIFW:    Refresh bei leerer Liste
                              Shift-Insert, Shift-Delete im Editorfeld
      349 04.01.07 WINIFW:    PopUp Menues, neue Icons auf Edit und RichEdit-Feld
                              Funktion "naechste Freie Nummer"
                              Cache-Probleme bei "nur Selektiert" beseitigt.
          04.01.07 WINIFW:    Selektionsfunktion Shift Up-Down Space angepasst
                              Horizontale Positionierung beim Liste oeffnen korrigiert (Zentrales Dateiregister)
                              Feldinput (input_maibuff_) Werteuebernahme gerichtet.
                   FFVERK:
                   FFEINK:    Beim Speichern eines Ausgangs oder Einkaufsbelegs wird die Summenberechnungsfunktion
                              (Feld 5) sicherheitsghalber nochmals aufgerufen. Damit wird die korrekte Summe sichergestellt.
                              Bei der Mehrwertssteuerumstellung kam es vor dass bei Manipulation des Datums uns sofortiger
                              Speicherung die MwSt nicht neu berechnet wurde.
                   WINIFW:    Funktion "Beleg der Position anschauen" in der Listenuebersicht eingebaut
          05.01.07 WINIFW:    Menu-Shortkeys aktiviert
                   STDCON:    Das Statistikdatum-Aenderungsignal wird jetzt auch ohne BDE-Modul verarbeitet.
      350 08.01.07 FFEINK:    Modulschalter FAKT_AKKREDITIVE aktiviert. Funktion zur Fremdwaerungsumrechnung aktiviert.
                   DFPRN:     Neues Kennzeichen @R in den Druckvorlagen.
                              Mit dem Kennzeichen @R wird der Aufruf des Systemmakros .$04 aktiviert. Mit ihm koennen
                              Datensatzabhaenge Benutzerrechte gesteuert werden. Es wird global gesetzt und alle
                              beteiligten Datenbankobjekte geprueft.
                              Wenn es aktiviert ist wird beim Drucken wird nach dem Laden des Datensatzes geprueft
                              ob das Makro .$04 existiert. Existiert es nicht, so wird ein Kennzeichen im Datenbankobjekt
                              gesetzt und die Aufrufroutine komplett uebergangen. Damit wird der langsamere Druckvorgang bei 
                              gesetztem @R optimiert und beschleunigt.
                              Die Pruefung auf Existenz wird bei jedem Schleifenstart vorgenommen.
          09.01.07 PINBOARD:  Es koennen Termine von anderen jetzt an sich selbst geschickt werden.
                              (Es wird nicht mehr der Empfaenger mit dem aktuellen Benutzer verglichen,
                              sondern der Besitzer der Nachricht mit dem Empfaenger).
                   WINIFW:    Tastaturbedienung des Window-IFW Menues aktiviert:
                              ALT-0 fuehrt zum Navigationsmenue
                              ESC im Navigationsmenue fuehrt zum TopLevel APIWindow
                              ALT-Menukuerzel aktiviert das Menue im Hauptfenster
          10.01.07 WINIFW:    Fortschrittsbalken im Zaehlrequester aktiviert.
                              Ok/Abbruch Knopf per Parameter gesteuert.
                              Requestbox in df-Loop teilweise integriert
                              Problem mit F4/F10 mit langer Wartezeit ListView_SubItemHitTest() ausserhalb korrigiert.
          12.01.07 FFART:     In der erweiterten Kalkulationsmaske im Artikelstamm wird jetzt immer der Verkaufspreis
                              mit den angegebenen Gewinnprozenten berechnet, unabhaengig des Berechnungstyps
                              (bisher nur bei Typ V).
                              Die Uebernahme des berechneten Verkaufspreises wird bei Typ V in den VK0 vorgenommen, auch
                              beim Verlassen der Kalkulationsmaske oder Aenderung der Kalkulationscharge
                   FFVERK:    In den Angebotspositionen wird bei Typ V der Verkaufspreis aus der Kalkulationsmaske uebernommen.
                              Die Berechung ist abhaengig von der Menge. Es wird jetzt zusaetzlich der Text "Kalkulation"
                              als Preisfindungshinweis ausgegeben.
          15.01.07 FAKTSUB:   Die Texteingabehilfe wird nur noch auf Ueberlangen Eingabefeldern aufgerufen. Ansonsten
                              bleibt der Taschenrechner aktiv.
                   WINLIB2:   Eine Untermaske wird nicht mehr geschlossen, wenn der Taschenrechner auf einem automatischen
                              Eingabefeld aufgerufen und wieder geschlossen wird.
                   WINIFW:    Die Progressbox auf eine globale Box umgelegt.
                   DFEDLIB:   Das Systemmakro .$00 wird jetzt auch beim Aufruf einer Liste in einer Maske fuer die Liste sofort aufgerufen.
                   DVAPI32:   David-Kalendersynchronisierung beschleunigt.
                   TERMINPL:  Spezialmakro .$77 fuer eine Terminsynchronisation aktiviert.
                               Spezialprogramm bei Oeffnen und Schliessen des Terminkalenders (Programmname tmbase.$77).
                               V1 ist 1 beim Oeffnen und 2 beim Schliessen.
                               Der aktuelle Datensatz ist undefiniert.
      351 16.01.07 FAKTEDIT:  Die Zwangsloeschung eine haendisch gesetzten Kennzeichen 'A' findet jetzt bereits bei der Belegspeicherung statt.
                              Die Sicherung innerhalb der Buchungsroutine beleg_materialbuchen_() zieht nicht, da im Fehlerfall das TTS System
                              die Korrektur wieder entzieht.
                   DVAPI32:   Die David-Kalendersynchronisierung um eine Benutzerkontrolle erweitert. Es wird nur noch der
                              Benutzer abgeglichen, wenn der IFW Benutzer gleich dem David-Benutzer ist.
                   PINBOARD:  Schutzverletzung bei Nachrichten mit ungueltigen Datum beseitigt.
          18.01.07 DFFNC:     Spezialmakro .$77 beim Ein- und Ausloggen aktiviert.
                               Spezialprogramm bei Ein- und Auslogggen eines Benutzers (Programmname user.$77).
                               V1 ist 1 beim Einloggen und 2 beim Ausloggen.
                               Der aktuelle Datensatz ist der eingeloggte Benutzer.
                   STDCON:    Pruefung der Datei "stopifw.ini". Sie wird jetzt auch bei IFW-Sessions die uneingeloggt im
                              Ruhezustand sind alle 4 Sekunden geprueft. Existiert sie, wird das IFW beendet.
          19.01.07 PRFLOAD2:  Kommando CallDavidAPI() erweitert:
                              CallDavidAPI( Modus, TerminBesitzer, DavidBenutzer, DatumVon, DatumBis);
                              Modus:
                               1 DAVID-API wird initialisiert/geoeffnet
                               2 DAVID-API wird geschlossen
                               3 Die Kalendersynchronisation wird durchgefuehrt
                                
                              Mit dem Kommando wird die Terminkalendersynchronisation zwischen IFW und DAVID durchgefuehrt.
                              Im IFW wird nach der Synchronisierung das Kennzeichen # im Termin gesetzt. Daran wird erkannt
                              ob der Termin zum DAVID uebertragen wurde. Beim Bearbeiten und speichern eines Termins im IFW 
                              wird das Kennzeichen geloescht.
                              Im David wird in der Betreffzeile die IFW-ID des Termins im Text gespeichert. Damit wird die
                              Verbindung von den Terminen im IFW zum Termin im DAVID verwaltet.
                              Funktionen IFW -> DAVID:
                              -Neuer Termin
                              -geaenderter Termin (Abgleichskennzeichen # nicht gesetzt)
                              -geloeschter Termin -> wir im David geloescht (er findet im DAVID einen Termin mit IFW-ID der im IFW nicht mehr existiert).
                              Funktionen DAVID -> IFW:
                              -Neuer Termin       (Termin ohne IFW-ID in der Betreffzeile)
                              -geaenderter Termin (Termin mit IFW-ID in der Betreffzeile, der Termininhalt weicht vom IFW-Termininhalt ab)
                              Zuerst wird die Funktion IFW -> DAVID ausgefuehrt. Werden Termine gleichzeitig in beiden Systemen
                              geaendert, so hat die IFW-Terminaenderung vorang und ueberschreibt die Aenderung im DAVID.
                              Werden im David Termine geloescht, dann erscheinen sie nach der Synchronisierung wieder im DAVID, da
                              sie im IFW noch vorhanden sind. Loeschen sie die Termine im IFW um sie dauerhaft zu entfernen.
          22.01.07 DFED3LIB:  edit_extwindow() liefert jetzt immer den gleichen abgeleiteten Df-Handle zuerueck, egal ob ein Initaufruf
                              Global oder ueber ein Maskenfeld erfolgt. Bisher wurde das Temporaerbit nur bei Maskenfeldaufrufen mit
                              uebergeben. (Fehler Inhalte der Untermasken leer bei der WIN-API bei der Belegbearbeitung).
                   API_MSK:   Tastenkonvertierung im Feld aktiviert.
      352 23.01.07 TOBITFW:   Fuer den elektronischen Datenaustausch EDI die Verarbeitung von Dateianhaengen implementiert:
                              Im Betreff muss der Tag <EDInnn> als erste Zeichen stehen.
                              Ist der Tag enthalten, so werden alle Dateianhaenge mit dem Importfilter nnn in die Auftragseingangsliste
                              oder die Bestellbestaetigungsliste eingelesen, je nach dem fuer welche Datenbank der Importfilter nnn existiert
                              (Auftragseingang -> afolst$e.nnn oder Bestellbestaetigung -> beblst$e.nnn). 
                   API_MSK:   Tastenkonvertierung im Feld korrigiert (OnKeyDown -> OnChar verlagert).
                   API_REQ:   Eingabebox fuer Datumsangaben "von - bis" implementiert.
                   API_REQ:   Die Progressbox wird jetzt bei einer einfachen Datenbankschleife, wenn moeglich,
                              auch mit der Maximalanzahl angezeigt (WL_USEPROGRESSMAXCNT).
                              Fensterfokus beim schliessen der Box auf as TopLevelWindow korrigiert.
          25.01.07 API_MSK:   Darg&Drop und Paste von OLE Objekten (z.B. David Email) in die IFW-Dokumentenablage implementiert.
                   VIDF:      Beim Uebertragen der IFW-Tabelle zum Excel wird jetzt die Formatierungsoptin Euro und Prozent mit ausgegeben.
                              Das Excel interpretiert die Formate korrekt.
          26.01.07 API_REQ:   Icons in den Requestboxen, abhaengig vom Box-Titel
      353 29.01.07 PRNPAR:    Neues Kommando @#GetFileName;
                              Damit laesst sich ein Dateiname abfragen. Es sind Jokerzeichen wie * und ? in der Namensangabe moeglich.
                              Syntax:
                              @#GetFileName Vt;
                              Der Dateiname in Vt wird gesucht. Es wird der erste physikalisch Dateiname gefunden der zu evt. vorhandenen
                              Jokerzeichen passt.
                              Der Dateiname wird in Vt zurueckgegeben.
                              Wird keine Datei gefunden, so wird Vt geloescht und leer zurueckgegeben.
                              Pfadangaben in Vt sind vollstaendig moeglich und werden entsprechend beim zurueckgegebenen
                              Dateiname uebernommen.
                   CONSOLE.H: Der Wert mai->group im Maskenfeld von char auf short erweitert.
                              Wertebereich der Ausloesegruppen der Nachladefelder von 112+ auf 200+ verlegt.
                              Somit ist das Problem das manchmal mehrere F1-Auswahldateien ihren Wert in weitere F1-Auswahlfelder
                              ablegen beseitigt.
          30.01.07 API_WIN:   -Popup-Menue fuer Dateianhaenge erweitert. Im Zentraldatenregister ein spezielles Popup-Menu.
                              -Icons in den Requestern korrigiert.
                              -Popup-Menu mit einem Default-Menueitem versehen
                              -Default-Menueitem werden jetzt im BCMenu in Fettschrift ausgegeben
                              -Scrollfehler im Cache beim zurueckscrollen beseitigt.
          31.01.07 VIDF:      Letzte Zeile "Neuer Eintrag aufnehmen" bei Neueingabe in die Windows-Listenroutine eingebaut (VirtualDB und Cache Modus).
                              Es wird ein Eintrag mit der Recordadresse REC_BOTTOMNEWLINE erzeugt.
                              Focustracking beim Archivaufruf in einer OpenList (Kundenmaske Mitarbeiter -> Archiv) korrigiert.
          01.02.07 FAKTMAIN:  Default Leitwaehrung und alternative Waehrung auf EUR, Kursverhaeltnis auf 1,0 eingestellt.
                              IFW-Nachrichten auf dem WinMain Fenster CApiMessageWnd()
     354  02.02.07 VIDF:      Fehler bei mehrfachen einlesen (Maske generieren) von CSV Dateien beseitigt (z.B. war die Baumbezeichnung zu kurz).
                   API_WIN:   Angezeigte Listenlaenge bei Autoumschaltung von virtueller Liste auf gecachte Liste korrigert.
                   API_REQ:   Zusaetliche Icons im Requester
                   API_MSK:   Fenster werden jetzt auch rechts unten kaskadiert geoeffnet.
          05.02.07 DFFNC:     Fehler -43 beim Einlogversuch mit falschen Benutzernamen beseitigt.
          06.02.07 API_WIN:   Bei den Datenbankobjekten im Popupmenue die FUnktion "Verknuepfungen" aktiviert.
     355  08.02.07 API_BMNU:  Tastenbedienung bei mehrfach vorkommenden Buchstaben angepasst.
          09.02.07 STDPRJ:    Neues Flag MAI_EXT2_TRAILINGSPACE. Damit koennen Btrieve Felder mit anhaengenden Leerzeichen ohne 0-Byte realisiert werden.
                              Das Flag wird bei den Textfelderb der SQL-Dateien aktivert (Kennzeichen "Leerzeichen nicht entfernen" bei den Feldern gesetzt).
          13.02.07 DFPRN:     Ausdruck beschleunigt, diverse Datenbank Oeffnen-/Schliessvorgaenge beseitigt.
          14.02.07 PRGLOAD:   Neues Kommando SetRepairOpenState()
                                SetRepairOpenState( Modus, "Reparaturnummer")
                                SetRepairOpenState( Modus, "Reparaturnummer", "Lieferscheinnummer", "Rechnungsnummer")
                              Oeffnet oder Schliesst eine Reparatur (Status 'E'). Eine geschlossene Reparatur ist buchungsneutral.
                                Modus  0: Die Reparatur wird geschlossen
                                Modus  1: Die Reparatur wird geoeffnet
                                Modus  2: Lieferscheinnummer setzen
                                Modus  4: Rechnungsnummer setzen
                                Modus 16: Eigengeraet auf Ja setzen
                                Modus 32: Eigengeraet auf Nein setzen (werden beide Modies gesetzt, wird keine Aktion vorgenommen)
     356  15.02.07 PRGLOAD:   Kommando DocumentImportFile erweitert: 
                              Modus 128 (IMPORT_SELECT)
                                Es werden alle importierten und geschrieben Belege hinzuselektiert.
                              Modus 256 (IMPORT_NOUSERBREAK)
                                Der Benutzer kann den Einlesevogang nicht abbrechen
                   PRGLOAD:   Kommando ImportFile erweitert: 
                              Modus 256 (IMPORT_NOUSERBREAK)
                                Der Benutzer kann den Einlesevogang nicht abbrechen
                              Kommando SelectRecord() erweitert:
                                Es oeffnet jetzt auch eine geschlossene Datei
                   PRGLOAD:   Kommando DocumentEdit() erweitert.
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              VerarbeitungsModus:
                               1: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                              Es kann nun auch fuer Lieferscheine angewendet werden.
                              Modus 4:
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                                  Bei Lieferscheine kann nur die Auftrags oder Reparaturdatenbank als Quelldatei angegeben werden.
                   DFIMP:     dfimport() und belegImport() wandeln jetzt Quelldateinamen mit Pfad c:\\temp in den benutzerspezifischen
                              Pfad um, falls das Systemflag "ErzeugeCTempInEigeneDateien" gesetzt ist.
          16.02.07 FAKTEDIT:  Systemmakro .$25 angepasst.
                              Bei Belegbearbeitung "Beleg kopieren" oder "von Beleg schreiben" wird es vor dem Speichern
                              einer Position aufgerufen. Die Quelldatei kann mit SetFileBackToMarkedFile() aufgerufen werden.
                              Werden Kopfpositionen des Quellbelegs im Zielbeleg gespeichert, so ist das MarkedFile
                              jetzt die Kopfdatei des Quellbelegs. Bei den Positionen des Zielbelegs die die Positionen
                              der Quellbelegs beinhalten ist das MarkedFile wie bisher die Position des Quellbelegs.
      357 19.02.07 WIN_API:   CCustomControlSite() und CImpIDispatch() eingefuehrt. Damit ist ein direkter Zuriff
                              von der HTML Seite in die IFW-Applikation moeglich.
          22.02.07 WIN_API:   Nachrichten als HTML-Fenster im WinIFW-Hauptfenster aktiviert.
          26.02.07 WIN_API:   Nachrichten als HTML-Fenster ausgebaut, Popup-Menue aktiviert
          27.02.07 WIN_API:   Nachrichten als HTML-Fenster ausgebaut, Popup-Menue aktiviert
          28.02.07 WIN_API:   Terminkalenderfenster und Hauptmenue bei aktivem Nachrichtenfenstern aktivert.
          01.03.07 WIN_API:   Popup-Messages und Nachrichtenticker aktiviert
      358 02.03.07 TOBITFW:   Kommunikationsbasis eingerichtet. Neues Address-Zentralregister, Telefon und Davidlogbuch
          05.03.07 DFED3LIB:  Das Makro Lieschf_.$00 wird wieder aufgerufen. Es wurde statt dessen das temporaere Makro 185000.$00
                              aufgerufen. Problem mit dem Datenbankhandle in Verbindung mit der Windowsversion beseitigt.
                              Funktionsaufruf beim Verlassen der Waagenerfassung in anderen Lieferscheinunterfenstern unterbunden.
                   DFFNC:     Das Benutzermakro user.$77 fuer den Kalednerabgleich wird nicht mehr beim dirketen Schliessen des IFW's mit [X]
                              aufgerufen. Es wird nur beim normalen Beenden mit Alt-X oder Beenden ausgefuehrt.
                              (Fehler Error -624 on PROGRAMM\User.$77 line 68 unterbunden).
                   API_MFRM:  Die Dockerfunktion der Nachrichten wird nur noch bei gedrueckter Strg-Taste ausgefuehrt.
                   PRGLOAD:   Kommando DocumentEdit() erweitert.
                              VerarbeitungsModus:
                               2: Bei "von Beleg schreiben" keine Auswahlliste oeffnen. 
                                  Es kann jetzt auch bei "aendern", "kopieren" und duplizieren angewandt werden.
                   DFLOADZW:  Beim "von Beleg schreiben" bleibt beim Uebertragen der "bestehend aus" Stuecklisten das vorgegebene
                              Lager erhalten. Bisher blieb es nur bei der Produktionsuebertragung erhalten und wurde bei direkter
                              Uebertragung ohne Produktionsmodul mit der Vorgabe aus dem Artikelstamm ueberschrieben.
                   BRECLIB2:  get_cmprec() erweitert so dass auch RAM-Listen gehen. Bei select_records() bei RAM-Listen Fehler -219 beseitigt.
      359 06.03.07 FFDISPO:   Den Liefervorlauf und die automatische Lieferscheinerstellung beruecksichtigt jetzt auch Variantenstuecklisten
                              in den Auftragspositionen.
                   BRECORD:   Die Linearfilterfunktion von einer Filterdefinition auf 8 Filterdefinitionen erhoeht.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              LiefervorlaufLagerbezogen: Wert 0/1. Default 0.
                              Der Liefervorlauf und die Lieferscheinautomatik ermittelt die Auslieferbarkeit der Auftragspositionen
                              anhand der im Artikelstamm im Feld Lagerbestand stehenden Menge.
                              Sind in den Auftragspositionen abweichende Auslieferlager angegeben, so kann
                              mit dem Wert 1 die Auslieferbareit direkt auf die in den angegebenen Auslieferlaegern liegenden Mengen
                              ermittelt werden.
                              Mit dem Wert 0 bleiben die abweichenden Auslieferlaeger unberuecksichtigt und die Menge wird komplett
                              mit der Lagerbestandsmenge aus dem Artikelstamm verglichen.
                              Unabhaengig von der Einstellung werden Auftragspositionen ohne abweichenden Auslieferlagern immer
                              mit der Lagerbestandsmenge aus dem Artikelstamm verglichen.
      360 08.03.07 FFDISPO:   Selektion beim automatischen Lieferlauf korrigiert.
                   FFVERSND:  Standard des Paketmodus von "Buytaert" auf "Sintron" umgestellt.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                              LieferscheinautomatikKeinAuftragspositionstext: Wert 0/1. Default 0.
                              Werden mit der Lieferscheinautomatik Lieferscheine erzeugt, so wird pro Auftrag eine Textposition
                              "Auftrag #xxx vom yyy" eingefuegt. Auch dann, wenn kein Sammellieferschein zu mehreren
                              Aufrtraegen erzeugt wird.
                              Mit dem Wert 1 kann diese Position unterbunden werde. Wird ein Sammellieferschein erzeugt,
                              so werden immer eine Textposition pro Auftrag erzeugt, unabhaengig von der Schaltereinstellung.
          09.03.07 IFWTAB:    AddColumn() um Typ 49 erweitert -> kaufmaennisches Format ohne Nachkommastellen
          12.03.07 IFWTAB:    IFW-Tabellen Werte im Parameterfeld um 0x1000 erweitert
                              Attribute im Parameterfeld:
                               0x0001    1 -> nicht anzeigen
                               0x0002    2 -> Fettdruck
                               0x0004    4 -> Euro-Zeichen anhaengen
                               0x0010   16 -> Text Rot
                               0x0020   32 -> Text Gruen
                               0x0040   64 -> Text Blau
                               0x0100  256 -> Hintergrund Rot
                               0x0200  512 -> Hintergrund Gruen
                               0x0400 1024 -> Hintergrund Blau
                               0x1000 4096 -> Wert <0 Rot anzeigen
                              Bei Kombination der Farbwerte entstehen die entsprechenden Mischfarben
                   ITBPRG:    Bei Spaltenmodus mit Zahlenausgabe in Rot bei negativen Werten, werden die Zahlen jetzt auch in Verbindung 
                              mit dem EUR oder % Zeichen in Rot ausgegeben.
                   WINLIB:    convDateStr() verwandelt jetzt das Format jjjjmmtt.* ebenfalls korrekt in ein Datum
          16.03.07 DVAPI32:   Erweitertes Logbuch mit Kennzeichen ~ aktiviert. Damit wird weitere Information beim Schliessen des IFW's
                              in Verbindung mit der David-Kalendersynchronisation mitgeschrieben.
      361 20.03.07 ITBPRG:    Kommando BOOL IsRow() aktiviert:
                                Mit IsRow() kann abgefragt werden ob die Zeile bereits existiert, ohne sie neu anzulegen.
                   ITBPRG:    Kommando BOOL Column[x].setTxtColorCell() und Column[x].setBkColorCell() aktiviert:
                                Damit laesst sich die Schrift und Hintergrundfarbe einer Zelle einstellen.
                                Das Kommando muss in der Init() Funktion einmal mit dem Wert 0 als Textfarbe ( Column[x].setTxtColorCell( 0x000000)  ) aktiviert werden.
                                Die Farbe kann in der OutRow() Funktion verstellt werden.
                                Ein Farbwert von 0 (Schwarz) fuer den Hintergrund ist nicht moeglich.
                                Zur Zeit sind nur die massiven Grundfarben rot, gruen, blau und Kombinationen daraus moeglich.
                                Ab dem Farbwert 0x80 wird die Farbe eingeschaltet. Werte unter 0x80 bleiben wirkungslos.
                   ITBPRG:    Die Anzahl moeglicher Spalten auf 51 erhoeht. Werden mehr Spalten als moeglich angegeben, so wird bereits bei
                              dem Kommando AddColumn() eine Fehlermeldung -1360 ausgegeben.
      362 22.03.07 ITBPRG:    Die Anzahl moeglicher Spalten auf 113 erhoeht.
                   PRNLIB4:   Die Druckausgabe von Zeichenketten in eine Datei beschleunigt. Damit wird auch selterner die Taste zur Unterbrechung der Ausgabe aufgerufen.
                   COMCON:    Datenuebertragung von Ausgabedateien vom Host zum WWW-Client im Ruhezustand erhoeht.
                   PRGLOAD2:  Bei der ITB Ausgabe den Wechsel des Suchpfades bei Verwendung der selektierten Eintraege unterbunden. Es wurde
                              faelschlicherweise der "root" Pfad nochmals in einer Zeilendefinition ROWDEF verwendet.
          29.03.07 PRNLIB:    Formatierungsoptionsauswertung bei Fliesstextausgabe korrigiert. Die Option # wurde ohne Angabe von Option - verschluckt.
                              Folgende Kombinationen sind moeglich:
                              - Keine fuehrenden Leerzeichen.
                              # Keine automatischen Zeilenumbrueche
                              % CSV Konvertierung, fuerende Hochkommas und Doppelhochkommas.
                              Die Kombination #% wurde faeschlicherweise nur als % erkannt. Sie funktionierte nur
                              in Kombination -#% korrekt.
                              Problem behoben.
          30.03.07 DVAPI32:   David Logon umgeschrieben wegen Application Exit.
          02.04.07 ITBPRG:    in CITabFuncData::GetRecord() uninitialisierter Wert BOOL bCompareErg; auf FALSE gesetzt.
                              Bisher wurde immer ein zusaetzlicher Ergebnisvergleich druchgefuert, jetzt nur noch bei
                              Laden mit einem unvollstaendigem Indexpfad.
      363 03.04.07 DVAPI32:   Beim David Kalenderabgleich wird jetzt der David-Benutzer aus der Benutzerliste als
                              zum Authentifizieren verwendet, nicht mehr der IFW-Benutzer.
                   ITBPRG:    Kommando SetViewMode( INT $mode) korrigiert:
                                Der Modus 2 funktioniert jetzt ohne Fehlerausgabe.
                              Bei der ForEachFromTo-Schleife werden defekte Datumseintraege aus der Datenbank korrigiert
                              (das Bezahltdatum in den OPs enthaelt JJJJMMTT.0 als Eintrag ... .0 wird abgeschnitten).
          04.04.07 PRNLIB:    Die maximale Groesse von verarbeitbaren Druckvorlagen oder Ifw-Tabellenprogramme von 60k auf 600k erhoeht.
                   ITBPRG:    Es koennen jetzt auch auf RAM-Listen zugegriffen werden. Dabei ruft das Kommando ForEachFromTo alle Eintraege der Liste ab.
                              Das vorherige Datenbankelement muss im Baum die Datenbank, in der die Liste gespeichert ist, sein. Beim Aufruf der Liste
                              wird automatisch auf den aktuellen Datensatz aus der vorherigen Liste verwiesen.
          05.04.07 ITBPRG:    Ausgabe der Baumspalte mit maximal 100 Zeichen statt mit 80. Bei tiefen Verschachtelungsstruckturen wurde zu kurze Textstuecke
                              in der Baumspalte angezeigt.
      364 11.04.07 ITBPRG:    Ausgabe der Baumspalte mit maximal 120 Zeichen statt mit 100.
      365 12.04.07 WINIFW:    WWW-Clint Rev. 1.3-03 aktiviert: Ueber das Clipboard koennen jetzt bis zu 128000 Byte uebertragen werden (bisher 61000 Byte).
                              Ein WWW Client mit Rev. 1.3-02 auf einem Host mit Rev. 1.3-03 wird NICHT mit der Meldung einer alten Version angezeigt.
                   TEXTEDI2:  Shift-Ctrl-Y loescht jetzt den gesamten Text.
                   SYSLIB:    Am Host die Keyboard-Tastenflagbestimmung mittels getKeyStat() bei verbundenen Client optimiert.
      366 13.04.07 ITBPRG:    Kommando SetVisibility( INT $mode) aktiviert:
                                Damit laesst sich die Ausgabe von Zeilen steuern. Die Zeilen werden intern bei der Erstellung generiert,
                                aber bei der Ausgabe zur Anzeige unterdrueckt. Das Kommando muss in der Funktion OutRow() aufgerufen werden.
                                Modus 1: Die Zeile selbst wird nicht ausgegeben.
                                Modus 2: Alle Zeilen der tieferene Ebene (Childs) werden nicht ausgegeben.
                                Modus 4: Es werden keine weiteren Zeilen nach der Zeile ausgegeben.
                                Mehrere Modis koennen kombiniert werden.
                                Z.B. Modus 5 -> Diese Zeile nicht ausgeben und keine weiteren Zeilen mehr ausgeben.
      367 16.04.07 PRNLIB:    Adressausgabe nach DIN 5008 eingefuehrt (Keine LKZ Ausgabe mehr, sondern das Land als extra Zeile zum Schluss ueber [Vadr])
                              Fuer die Ausgabe muss die Kartei lkzdat vorhanden sein (Menuepunkt Vertrieb/Verkaufsparameter/Laenderverzeichnis).
                              Dort kann der Landesname und die Adressformatierungsoptionen gesteuert werden.
                              Erweiterung der Druckvaribale [Vadr:
                              [Vadr5008<] -> "1" wenn die Ausgabe nach DIN 5008 aktiv ist.
                              [Vadr00<]   -> die erste moegliche Zeile der Adresse wird ausgegeben (meist leer)
                              [Vadr0<] bis [Vadr7<] -> weiter Zeilen der Adresse werden ausgegeben, die Adresse wird von unten nach oben, von 7 nach 0 aufgefuellt.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Print":
                                DruckenAdresseLand: Wert 0/1. Default 1.
                                Der Wert steuert die Ausgabe der Adresse beim Drucken ueber die Variable [Vadr].
                                Der Wert 0 gibt die Adresse wie bis zum Jahr 2000 ueblich mit der Zeile LKZ-PLZ Ort aus.
                                Mit dem Wert 1 wird das Laenderkennzeichen LKZ nicht mehr in der Zeile Ort ausgegeben.
                                Das Land wird als letzte Zeile abhengig zum Laenderkennzeichen ausgegeben (Ausgabe nach DIN 5008).
                                Voraussetzung ist dass die Referenzdatei fuer Laenderkennzeichen mit dem Landesnamen ausgefuellt ist.
                                Ansonsten wird nur das Laenderkennzeichenkuerzel als Landesname als letzte Zeile ausgegeben.
                   CALCMAI:   Die Funktion cpy_mai() die Felder von einer Maske in eine andere kopiert, setzt jetzt LKZ oder PLZ
                              Felder von "Rechtsbuendig mit fuehrenden Leerzeichen" auf Linksbuendig Text durch loeschen
                              der fuehrenden Leerzeichen um.
          17.04.07 FFDISPO:   Die Rechnungs- und Lieferscheinautomatik um sicheres Beenden beim direkten Schliessen der Applikation erweitert
                              (isAPPExitKey() beruecksichtigt).
                   FFFIBUDV:  Beim erzeugen des Fibu-Stapels von Belegen wird jetzt auch auf exportiert Daten im FIBU-Stapel geprueft. Sind von 
                              der FIBU Daten in den Stapel exportiert, diese aber noch nicht auf Datentreager geschrieben, so bleibt der
                              FIBU-Stapel geschuetzt bis dieser geschrieben wurden
                              (Meldung "Im Stapel befinden sich noch exportierte Daten (Status J~D)! (Abbruch)").
          18.04.07 PRGLOAD:   Zeilen die mit einem '<' Zeichen beginnen werden jetzt als Kommentarzeilen intrepretiert (wie Zeilen mit ';').
                   PRGLOAD:   Neues Kommando DoHtmlRequest()
                                DoHtmlRequest()
                                DoHtmlRequest( "HtmlDatei")
                                DoHtmlRequest( "HtmlDatei", "Parameter")
                              Oeffnet einen Html-Requester zur Benutzereingabe oder Anzeige.
                              Im Html-Requester wird die angegebene Html-Datei angezeigt. In der Html Datei kann unter Java mit
                              dem Kommando window.external.Vtxx mit xx von 0 bis 32 auf die Druckvariablen Vtxx zugegriffen werden.
                              Es koennen auch Werte zur Rueckgabe zugewiesen werden.
                              Wird kein Dateiname angegeben so wird das Makro selbst als Html-Datei aufgerufen. In ihr
                              kann der Html Code mit eingetragen sein. Dazu muss er ganz am Anfang stehen und die Datei in der aller
                              ersten Zeile mit <HTML><!-- beginnen.
                              Danach erfolgt der Makrocode im Bereich des HTML Kommentars <!--
                              Der Makrocode endet mit ;-->. Der Strichpunkt wird fuer den Makrointerpreter benoetigt.
                              Beispiel:
                                <HTML><!-- Funktion mit HTML-Requester
                                  DoHtmlRequest();
                                  End();
                                ;-->
                                <BODY> 
                                  <script type="text/javascript">
                                    var userName = window.external.Vt10;
                                    document.write( "<br><h1>" + userName + "</h1>");
                                  </script>
                                  ...
                                </BODY>
                                </HTML>
                   ITBPRG:    Kommando GetRecordByRowdef( ROWDEF $sourceRowdef) aktiviert:
                                Damit kann ein Datensatz in einem anderen ROWDEF direkt vom einem Quell-ROWDEF geladen werden.
                                Dies wir vor allem beim Sammeln von Daten in zwei getrennten Zweigen mit dem gleichen 
                                Datenbankobjekt benoetigt, vor allem wenn die Datenbank keinen Primaerschluessel besitzt
                                (z.B. Beleg-Positionsdatenbanken).
          19.04.07 DFEDLIB:   Systemmakro .$27 / .$28  implementiert: Das Systemprogramm wird nach dem Speichern eines Datensatzes
                              aufgerufen.
                              Die Speicherung erfolgt immer. Wird mit dem Kommando End() ein Rckgabewert !=0
                              zurckgeliefert, wird die naechste Aktion nach dem Speichern nicht ausgefuehrt
                              (z.B. Speichern bei Aenderung und BildNachUnten-Taste -> Bild nach Unten wird nicht 
                              ausgefuehrt.
                   ITBPRG:    Es koennen jetzt ROWDEF Variablen deklariert werden.
                              ROWDEF Objekte koennen jetzt ROWDEF Variablen zugewiesen werden.
                   IFWTAB:    AddColumn() Typ 49 kaufmaennisches Format ohne Nachkommastellen korrigiert. Der Parameter< ist jetzt auch ohne Parameterspalte verfuegbar.
      368 20.04.07 IFWTAB:    Cachen der Sprungziele von if und while aktiviert.
                   LISTEINT:  Das Adden von Zeilen ueber Intervallschachtelung und Insert beschleunigt.
                   DFREQUEST: Ausgabe der geschaetzten Zeit beim Zaehlerrequester bei sehr grossen Werten korrigiert.
                   IFWTAB:    Die IFW-Tabellebdateien erhalten jetzt die Erweiterung *.icsv.
                              Das Speichern und Oeffnen von IFW-Tabellen wird jetzt korrekt unterstuetzt. Das Default-Verzeichniss ist
                              das IFW-Temporaerverzeichnis.
      369 20.04.07 API_WIN:   Mit "Liste oeffnen" wird sie jetzt auch dann nach vorne geschaltet, wenn sie bereits besteht.
                              Tasten und Mauseingaben in der IFW-Tabelle aktuallisieren die Zeit vom Autologout.
                   FFPROD:    Rueckrechnen bei Eingabe der Sollmenge in der Produktionsproduktion mit Verschnittzuschlag ueberarbeitet.
          23.04.07 WINIFW:    Aufrufbare Kommandos aus HTML-Seiten im IFW erweitert:
                              Sie werden mit window.external. in der HTML Seite aufgerufen.
                              Z.B. "window.external.PinMessageText( pinId)", wobei pinId die uebergebene Nachrichtennummer 
                              im Aufrufparameter der HTML Seite ist.
                              Ausgabe des aktuellen Benutzers (kein Parameter erforderlich):
                                "UserName",               //1
                              Ausgabe von Daten zu einer Nachricht auf dem Desktop des IFW's (pinId als Parameter erforderlich):
                                "PinMessageRaw",          //2
                                "PinMessageTitle",        //3
                                "PinMessageFrom",         //4
                                "PinMessageTo",           //5
                                "PinMessageTermin",       //6
                                "PinMessageCustomer",     //7
                                "PinMessagePhone",        //8
                                "PinMessageCustOffer",    //9
                                "PinMessageCustOrder",    //10
                                "PinMessageCustDelivery", //11
                                "PinMessageCustInvoice",  //12
                                "PinMessageText",         //13
                                "PinMessageHandle",       //14
                                "PinMessageType",         //15
                                "PinMessageTypeId",       //16 0 sonstiges;  1 erinnerung; 2 termin; 3 nachricht; 4 system-info; 5 email
                                "PinMessageColor",        //21
                              Ausgabe von eingehenden Nachrichtenmeldungen rechts unten im Popup-Fenster (Zeilennummer als Parameter erforderlich):
                                "PopupMessageRaw",        //17
                                "PopupMessageText",       //18
                                "PopupMessageType",       //19
                                "PopupMessageTypeId",     //20 0 sonstiges;  1 FAX-Quittung; 2 Email-Quittung; 3 Waehl-Quittung; 4 DavidEingang; 5 DavidAusgang
                   PRGLOAD:   Kommando DoHtmlRequest() geaendert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                   SYSLIB:    Funktion viewMessageOff() und viewMessageOn() aktiviert. Damit werden IFW-Nachrichtenfenster im Hintergrund nicht mehr
                              angezeigt, wenn im Vordergrund ein HTML-Requester aktiv ist.
      370 27.04.07 STDCON:    Zusaetzlich Ueberwachung der Scheduleraktivitaet:
                              Wird einmal ein Scheduler-Event mit einer Makrofunktion ausgefuehrt, wird ein Kennzeichen gesetzt. In der Statusanzeige
                              des IFW's erscheint rechts oben die Azeige #-on oder #-off.
                              Das Symbol #-on zeigt das korrekte aktive Warten auf den den naechsten Event an.
                              Das Symbol #-off zeigt das Fehlen einer naechsten Eventzeit an. In diesem Fall wird jede volle Minute versucht die
                              naechste Eventzeit zu ermitteln und zu aktivieren.
                   IFWTAB:    Das Laden von XML-Dateien probehalber aktiviert.
      371 30.04.07 WINIFW:    Dateianhang bei Nachrichten aktiviert.
                              Uebertragen der Anhaenge beim Nachrichtenversand.
                              Aufrufbare Kommandos aus HTML-Seiten im IFW erweitert:
                                "PinMessageAttachment",   //23
                              Dateianhang bei Jobs aktiviert.
                              Die Dateianhaenge zwischen Nachricht und Jobs wird jetzt sysnchronisiert.
          02.05.07 DFEDLIB:   Beim Suchen eines Eintrags in der Datenbankuebersicht wird jetzt die Eingabe mit dem gefunden Datensatz mit den
                              eingegebenen Zeichen verglichen. Stimmt das Teilwort nicht ueberein wird ein Signalton ausgegeben. Bisher wurde er nur
                              bei eindeutigen (Primaersuchpfaden) ausgegeben (z.B. Artikelnummer, Kundennummer). Das Signal wird auch beim
                              abrufen einer Eingabe mit F1 aus einer Belegposition heraus ausgegeben.
      372 02.05.07 POPUPMNU:  Neues Datenbankrecht 'E' implementiert:
                              Im F4 Druckmenue erscheinen die Menuepunkte fuer "Meine Liste" nur noch wenn der Benutzer das Recht "0-Jedermann"
                              bestitzt, oder explizit das Datenbankrecht 'E' beim betroffenen Datenbankobjekt dem Benutzer zugeordnet ist.
                              Bisher konnte der Menuepunkt "Meine Liste" im F4 Druckmenue nicht deaktiviert werden.
                              Die Funktion ALT-F10 (Selektierte Daten zur IFW-Tabelle) und 
                              Strg-C -> Copy in der IFW-Uebersicht (Selektierte Daten in das Windows-Clipboard) ist ebenfalls von der
                              Rechtefreigabe auf 'Meine Liste' abhaengig.
                   TOBITFW:   Mit dem Flag '*' beim Benutzer kann der Nachrichten-Popup (blaues Fenster) abgeschaltet werden.
                   FFPROD2:   In der Ersatzartikelverwendung der Produktionspruefung (normal und X-Ersatz) eine TTS-Kapselung beim Ersatz speichern eingebaut.
          03.05.07 DOCUSTORE: Dateien vom Typ *.icsv werden jetzt in der IFW-Tabelle geoeffnet.
                              Dazu wird ein Datenfenster nur mit der IFW-Tabelle geoeffnet.
          04.05.07 WINIFW:    Das IFW-Tabellen Datenfenster mit eigener kurzer Buttonleiste.
                              Oeffnen/Speicherfunktion der IFW-Tabelle im Extra Fenster aktiviert.
          07.05.07 WINIFW:    Darg&Drop auf das IFW-Desktop erzeugt eine Neue Nachricht mit Dateianhang vom Typ "Datei"
                              Drag&Drop auf eine Nachricht haengt diese an die Nachricht an.
          08.05.07 WINIFW:    Emailanhaenge koennen jetzt direkt zur Emailnachricht im IFW abgerufen werden.
                              Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                PinMessageAttachmentEmail( pinId)
                                Es zeigt an ob ein Emailanhang eines eingegangenen Emails abrufbar ist ("1", ansonsten "").
                              Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                PinMessageMinimized( pinId)
                                Es ist auf 1 gesetzt wenn die Nachricht minimiert angezeigt wird.
          08.05.07 WINIFW:    Beim Loeschen von Anhaengen wird bei Linkanzahl 0 der Eintrag im Dokumentenregister ebenfalls gesloescht.
                              Die Dateien in der IFW Ablage werden dabei auch von der Festplatte geloescht.
                   PRGLOAD:   Kommando ExecutePrintText() angepasst. Es werden keine Child-Datenbanken mehr geschlossen (closeAllNotAutoChildDf() entfernt).
                              Dies fuehrte unter Umstaenden beim Archivieren mit $67 - Systemmakro zu einem Fehler -219 (Datenbank geschlossen) im Archiv.
      373 09.05.07 PRGLOAD:   Beim Drucken werden Dateien die vom Druckvorgang geoeffnet werden mit dem Kennzeichen DFF2_CHILDPRINTOPEN versehen.
                              Beim Kommando ExecutePrintText() werden jetzt nur noch die datetein egschlossen die das Kennzeichen DFF2_CHILDPRINTOPEN vom
                              Druckvorgang erhalten haben.
          10.05.07 IFWTAB:    Der Requester zum Speichern von den Tabellen oeffnet sich jetzt immer, auch wenn noch kein Dateiname vorhanden ist.
                   DOCUSTORE: Ist ein Kategoriefeld in der Anhangsdatenbank vorhanden, so koennen ganze Verzeichnisbaeume im IFW abgelegt werden.
                              Es werden dann alle Dateien einzeln abgespeichert und die Unterverzeichnissangaben von weiteren enthaltenen Verzeichnissen
                              im Kategoriefeld gespeichert.
          11.05.07 BRECLIB2:  Feldvergleich MAI_CMP_STRAND auf Mehrzeichenvergleich erweitert.
                              Neuer Feldvergleich MAI_CMP_STROR. Selektion wenn im Feld einer der angegeben Buchstaben vorhanden ist.
                              Implementation der direkten Datenbankanfrage auf 1 Zeichen lange Felder.
                   PROGLOAD:  Kommando erweitert:
                              SetLinearFilter( Modus, Feldnummer, Inhalt);
                              kann der Filter gesetzt und geloescht werden.
                              Modus: 1 Inhalt von Feld Feldnummer == Inhalt
                              Modus: 2 Inhalt von Feld Feldnummer != Inhalt
                              Modus: 3 Inhalt als Teilwort im Feld Feldnummer enthalten (exakter Vergleich).
                              Modus: 4 Einer der Buchstaben ist im Feld enthalten. Geht nur mit Felder der Laenge 1.
                   DOCUSTORE: Den Dateien kann jetzt eine Ablage zugeordnet werden. Sie wird mit einem Buchstaben gekennzeichent.
                              Die Ablage wird im Dateiverzeichnis unter dem Verzeichniss mit dem Buchstaben als Name gefuehrt.
                              Das IFW bewegt die Datei automatisch zwischen den Verzeichnissen.
          08.05.07 WINIFW:    Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                PinMessageDoAttachment( pinId)
                                PinMessageDoAttachmentEmail( pinId)
                              Damit kann aus der Html-Seite heraus direkt per Links das Anhangsverzeichnis geoeffnet werden, oder der
                              Email-Anhang uebertragen werden.
                   WINIFW:    Die Initial-Fenstergroesse um 10% verbreitert.
                   FFEINK:    Die Bestellisten Online-Buchungsfunktion um die TTS-Kapselung erweitert.
          14.05.07 BRECLIB2:  Feldvergleich MAI_CMP_STROR geht jetzt als Linearfilter auch in verbindung mit einem Indexfilter
                   PROGLOAD2: SetLinearFilter und ClrLinearFilter loescht den aktuellen Datensatzfokus nur noch wenn das Listfenster offen ist.
                              (das INIT-Makro konnte bisher den aktuellen Satz loeschen -> Error -43).
                   WINIFW:    Die Datenbank-Listenanzeige wird jetzt Spaltenbreitenoptimiert geoeffnet (ausser in eingebetteten Listen in Masken).
                   WINIFW:    Die Nachrichten lassen sich mit einem Doppelklick auf dem Rahmen verkleinern und vergroessern.
      374 15.05.07 FFART:     Die Vorkalkulation im Produktionsbereich mit erweiterter Kalkulationsmaske erweitert (funcExtKalk()):
                              Es kann jetzt auf die Fremdleistungskosten ein Gemeinkostenzuschlag berechnet werden. Die Erweiterung
                              Der Artikel und Angebostdatenbank wird benoetigt.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                                AutomatischeVertreterermittlung: Wert 0/1. Default 0.
                                Beim Eingeben eines Belegs kann anhand der Postleitzahl und des Laenderkennzeichens ein
                                Vertreter aus dem Vertreterstamm ermittelt werden. Dazu muss im Vertreterstamm der Bereich
                                "Gebiet und Land nach PLZ" ausgefuellt sein.
                                Mit dem Wert 0 ist die Funktion deaktiviert.
                                Ist eine Vertreterermittlung erwuenscht, so ist der Wert auf 1 zu setzen.
          18.05.07 WINIFW:    Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                DeskBackgroundImage()
                                  Dateiname des eingestellten IFW-Hintergrundbilds
                                DeskBackgroundImageMode()
                                  IFW-Hintergrundbildeinstellung, "0" gekachelt, "1" Vollbild (gestreckt)
                   WINIFW:    Diverse Funktionen realisiert/korrigiert:
                                x ALT-F7 Archiv geht nicht wenn Liste leer
                                x F1 Textblock abrufen in Fliesstext richten
                                x Feld "Umsaetze" auf der Artikelmaske nicht sichtbar
                                x F1 Felder ohne Eingabefeld sind mit dem Cursor durchfahrbar
                                x Fliesstext betreten scrollt den text ganz nach unten, oben bleiben
                                x Ok Button aktivieren, auch wenn nur im Feld was geaendert
                                x Rechtklick Menu in den Nachrichtenfenstern auf dem Rahmen
                                x Shift Entfernen im Fliesstext
                                x STRG-Return auf Artikelstamm KBez (Exit-Feld)
                                x Selektionsmodus mit Button umschalten -> stuerzt als ab
                   WINIFW:    Flackern der HTML-Seite beim Resize entfernt.
          19.05.07 WINIFW:    - Beim Verschieben von Nachrichtenfenstern werden jetzt immer alle Fensterinhalte
                                optisch angezeigt, auch ohne Windowseinstellung "Fensterinhalte beim verschieben anzeigen".
                              - aktive Funktionen Popup Menu bei Datenauswahl gerichtet
                              - Eingabe auf "Neuer Eintrag" fuehrt bei Datenauswahl nicht mehr zur Datenuebernahme des letzten Satzes.
                              - Die Spaltenoptimierung geht jetzt auch bei weniger als 20 Saetzen auf die 20 vorherigen Eintraege
                                zurueck.
          22.05.07 WINIFW:    Splitter in der IFW-Tabelle aktiviert. In der Datenbank-Tabellenansicht und in der icsv-Dateiansicht.
                              Strg-N auf dem Desktop oeffnet jetzt eine neue Nachricht.
                              - Beim refresh/sortieren die Zeile "NEUER EINTRAG" immer ans Ende gestellt (im compare() immer der groesste Eintrag).
          23.05.07 WINIFW:    Bei Neueingabe einer Belegposition wurde bei ESC-Zurueck ggf. der Inhalt verworfen -> korrigiert
                              - Taschenrechnerfenster ueber das Menue aufrufbar.
      375 23.05.07 DFLIB2:    Bei Verwendung von direkt nacheinander aufgerufenen Normal und Archivobjekten beim Drucken konnten abgeleitete Datenbankobjekte
                              offen zurueckbleiben. Abgeleitete Objekte werden jetzt entsprechend geschlossen.
          25.05.07 FFBSTLST:  Kommando DispoToOrderList() im Forecastmodus (0x08) erweitert:
                              Es werden jetzt Belege bis zum angegebenen Grenzdatum + Lieferzeit des Artikels beruecksichtigt. Als Grenzdatum wird
                              automatisch das Ende der Kalenderwoche (der Sonntag) verwendet. Damit werden alle Bestellungen in der Grenzwoche mit
                              angegebenen Tagestermin beruecksichtigt, auch wenn er am Ende der Woche liegt.
                   FFFOCAST:  Forcastberechnung erweitert. Es kann jetzt das Kennzeichen "L" in den Forecastparameter eines Artikels gesetzt werden.
                              Mit aktivierter Planzahlkompensation und Kennzeichen "L" werden Mengen aus dem Forecast um die Mengen aus Uebergeordneten
                              Produkten (Zeile SListe) verringert, so wie es auch Auftragsmengen aus der Zeile "Order".
                              So kann bei einer verbrauchorientierten Einlastung von Einkaufartikel die bedarfsorientierte Vorgabe aus uebergeordneten
                              Produkten beruecksichtigt werden.
                   FFFOCAST:  Bei der Forecastberechnung von Einkaufartikeln wird jetzt zusaetzlich ihre Einlastungsliste aus deren Halb- und -Fertigerzeugnisse gepreuft.
          26.05.07 FAKTMAIN:  Neuer INI Schalter ForeCastStuecklistenkompensation in der Sektion [Belege]
                              ;ForeCastStuecklistenkompensation: Wert 0/1/2. Default 0.
                              ;Wird ein Forecastplan zu Einkaufsartikel oder Hablberzeugnisse hinterlegt (z.B. bedarfsgesteuerte Beschaffung), so
                              ;werden diese Planzahlen zusaetzlich zu den uebergeordneten Produkten eingelastet. Mit dem Schalter ForeCastStuecklistenkompensation
                              ;kann die Beruecksichtigung dieser Mengen zum Forecastplan gesteuert werden.
                              ;Wert 0: Forecastkennzeichen 'L' wird geloescht: Mengen aus Stuecklisten (Zeile SListe) werden nicht von den Forecast-Planzahlen abgezogen.
                              ;Wert 1: Forecastkennzeichen 'L' wird gesetzt:   Mengen aus Stuecklisten (Zeile SListe) werden von den Forecast-Planzahlen abgezogen.
                              ;Wert 2: Forecastkennzeichen 'L' kann manuell beim Artikel gesetzt werden, Auswirkung wie unter Wert 0 und 1 beschrieben.
          05.06.07 WINIFW:    Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                SetWindowSize( winHandle, width, hight)
                                  Stellt das Fenster in der Groesse ein und macht es sichtbar (falls vorher unsichtbar).
                                CalculatorGetVar( index);
                                  Lesen der Taschenrechnervariablen (index 0-9, 0 ist die Uebergabe-/Rueckgabevariable)
                                CalculatorSetVar( index, val);
                                  Schreiben der Taschenrechnervariablen (index 0-9, 0 ist die Uebergabe-/Rueckgabevariable)
                                CalculatorRndVar( val, rnd);
                                  Zahl val runden. rnd muss ein Wert >=0 sein.
          06.06.07 WINIFW:    Aufrufbares Kommando aus HTML-Seiten im IFW erweitert:
                                CloseWindow( winHandle, iRetValue);
                                  Der Wert iRetValue wird als Rueckgabewert verwendet. Standardmaessig gilt: 0 - Abbruch, 1 - Ok.
      376 11.06.07 STDCON:    Tritt im HOST-Modus mit laufendem Scheduler ein Btrievefehler -3006 auf (Netzwerkverbindung unterbrochen) so wird der
                              Host restartet. Es wird die Meldung "Tron: error -3006, btrieve is disconnected from HOST. Host shutdown." im Fehlerlogbuch
                              eingetragen.
          12.06.07 PRGLOAD:   Neues Kommando SupplierQualityCalculation()
                                SupplierQualityCalculation( vonDatum, bisDatum);
                                Fuehrt die QM-Bewertungsberechnung beim Lieferant durch. Die Datumsangaben muessen im aktuellen Statistikjahr liegen.
                                das vonDatum wird automatisch auf den Monatsanfang und das bisDatum auf das Monatsende gesetzt.
                                Das vonDatum muss kleiner als das bisDatum sein.
                                Ist eine der Datumsbedingungen nicht erfuellt, so wird der Fehler -1 zurueck gegeben.
                   FFREPARA:  Beim Reparaturen speichern werden jetzt die Positionen auf gleiche Preisgruppenkennung geprueft.
                   FFSTDVK:   Bei Reparaturpositionen fuehrte das Abrufen von Artikeln mit Sachnummernmodul und aktivierte Sachnummernautomatik
                              zu einer Fehlermeldung, da die Reparaturpositionen ohne Sachnummernfeld ausgefuehrt sind.
                              Fehlermeldung beseitigt.
                   PINBOARD:  Bei einer Nachricht in der Windowsversion wird bei einer heutigen Terminangabe kein "@A." mehr als Anhang ausgegeben.
                   FAKTMAIN:  INI Schalter ProdInExterneLagerKeineBedarfe erweitert:
                              ;ProdInExterneLagerKeineBedarfe: Wert 0/2. Default 0.
                              ;Mit dem Wert 1 werden Produktionspositionen die auf ein externes Lager verweisen nicht 
                              ;in Bedarf oder in Gebrauch (reserviert) gestellt (das externe Lager stellt die Ware
                              ;bereits in Gebrauch).
                              ;Mit dem Wert 0 werden die Waren in den Produktionspositionen immer in Bedarf oder
                              ;in Gebrauch gestellt.
                              ;Mit dem Wert 2 wird die Funktion wie unter Wert 1 beschrieben aktiviert.
                              ;Nur werden mit dem Wert 2 K-Produktionspositionen (hergestellte Artikel) als Zugang im Bedarf oder Gebrauch
                              ;gebucht, wenn der Artikel ein Verkaufsartikel (Artikeltyp V) ist.
                   FFWEG:     Kommissionierscheine buchen jetzt Produktionen aktiv mit um, wenn
                              ProdInExterneLagerKeineBedarfe ungleich 0 gesetzt ist.
          13.06.07 PRNLIB:    Neues DVL Kommando ':Q' [Vt:Q""] verfuegbar. Damit wird in Vt der CRC-Code des Strings ausgegeben (8-stellig Hexadezimal)
      377 14.06.07 FFFOCAST:  In der erweiterten Forecastmask kann mit dem Kennzeichen 'M' die Monatsmenge aus dem Dezember auf das Folgejahr
                              pro Monat eingeplant werden. Es wird dabie die woechentliche Menge im Schnitt berechnet. Die Mengen werden nur
                              bei Planungen auf das aktuelle Forecastjahr in das Folgejahr uebertragen. Dadurch wird verhindert, dass sich
                              veraltete Forecasteintraege aus dem Vorjahr im aktuellen Jahr eingelasten.
                   FAKTMAIN:  Neuer INI Schalter ProdFremdleistungWunschterminProduktionsende in der Sektion [System]
                              ;ProdFremdleistungWunschterminProduktionsende: Wert 0/1. Default 1.
                              ;Mit dem Wert 0 wird in der Bestellung im Bestellkopf als Wunschtermin der Produktionsbeginn vorgegeben.
                              ;Mit dem Wert 1 wird in der Bestellung im Bestellkopf und in den Bestellpositionen
                              ;als Wunschtermin das Produktionsende vorgegeben.
                   WINIFW:    Bei ESC und allen Fenstern zu wird jetzt das letzte Hauptmenu geoeffnet, Erstimplementation.
          15.06.07 WINIFW:    - Hauptmenue oeffnen optimiert.
                              - IFW-Tabelle Zeilenversatz bei ueberhohen Zeilen bearbeitet.
                              - Einfaerbung der Sortierspalte im Kopf
          16.06.07 WINIFW:    Die Spaltenbreite wird nicht mehr auf "Neuer Eintrag" in der Breite optimiert.
          18.06.07 WINIFW:    -IFW-Tabelle Zeilenversatz bei ueberhohen Zeilen beseitigt.
                              -Sortierpfeil in der Windowsuebersicht beseitigt
                   STDPRJ:    Das Dateianhangskennzeichen wird jetzt als 1. Spalte eingeblendet (Symbol *).
                              In der Windowsversion wird die Spalte unterdrueckt.
                   EMUCVIEW:  Mit aktiviertem Windows-Popup Menue kann jetzt der Dateianhang mit Rechtsklick im Text-IFW aufgerufen werden.
                              Die Anhangsdatei wird im Windowsmodus geoeffnet.
          20.06.07 WINIFW:    Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                PinMessageTextTooltip( pinId)
                                 Gibt den Text mit crlf ohne <br> aus. Er wird auf 40 Zeileb begrenzzt mit "...." am Ende falls laenger.
                                PinMessageSubject( pinId)
                                 Gibt den Betreff aus.
                              Minimierte groesse von Nachrichten fixiert.
                   WINIFW:    -Bearbeiten von NewWindow-Masken (editNwOpenAsk()) in der Windowsversion implemetiert.
                              -Neueingabeposition beim Masken betreten auf erstes editierbares Feld gestellt.
                              -EWindows Emulation fuer Beleg rueckgaengig machen und Auftrag erledigen implementiert
                               (Maske nur zum Anzeigen oeffnen: enterc==(KEYSFLG|KEY_RET|KEYFLG_EXIT) || enterc==(KEY_RET|KEYFLG_EXIT))
      378 21.06.07 WINIFW:    Icons-Support implementiert. Es wird jetzt auf die Icons in ifwicons.dll zurueckgegriffen.
                              Suchreihenfolge:
                                1. Icon im Verzeichnis icons
                                2. Icon in der ifwicons.dll
                                3. Icon im Programm-Exe
          22.06.07 WINIFW:    Belegbearbeitung ueberarbeitet:
                              -F2 Speichern in der Liste blockiert.
                              -Online-Summierung beim Speichern einer Position im Beleg.
                              -Synchronisierproblem beim Liste betreten per Mausklick und wieder verlassen mit
                               der Programm-Emulation beseitigt.
                   FFBDE:     Neuer Menuepunkt " BDE BSC IP-Taskmanager Adresse 2 " 0x7b70
                              Dabei wird die IP-Adresse aus der server.ini Datei aus den Werten BDEServerAdr2 und BDEPort2 geladen.
                              Mit dem bisherigen Menuepunkt " BDE BSC IP-Taskmanager"  werden die Werte aus BDEServerAdr und BDEPort geladen.
      379 22.06.07 BRECLIB2:  Bei Stammdatenarchiv auf einen Indexpfad mit "exclude segment" werden jetzt alle Segmente auf exclude gestellt.
                              Dadurch ist z.B. in den Kundenansprechpartnern der Login-Pfad moeglich.
          25.06.07 WINFIW:    Der Zeitpunkt der zuletzt aktivierten Fenster wird jetzt vermerkt. Damit wird beim schliessem eines Fensters immer
                              zum korrekten vorherigen Fenster zurueckgekehrt.
      380 27.06.07 FFEINK:    Bei ProdFremdleistungWunschterminProduktionsende=1 wird jetzt als Produktionsende der Wert aus dem PPS-Ende verwendet.
                              Ist das Feld nicht vorhanden oder leer, wir der Produktionsbeginn eingesetzt.
                   WINIFW:    Nachrichtenrefresherkennung von Sekunden auf Millisekunden umgestellt
          28.06.07 API_MFRM:  Refresh und Positionskorrektur der Nachrichten ueberarbeitet.
                              Nachrichten koennen jetzt auch unten und rechts ueber den Rand hinaus ragen
                   API_MFRM:  Neues aufrufbares Kommando aus HTML-Seiten im IFW:
                                ExecuteProgram( winHandle, "ProgrammName", "Label", "Parameter");
                                Fuehrt das Makro "ProgrammName" aus. Mit "Label" kann eine Sprungziel im
                                Programm angesprungen werden. "Parameter" wird vor dem Aufruf in Vt gespeichert.
                   API_MSK:   Die Selektionsreihenfolge der Datensaetze auf dem lokalen Bildschirm werden vorm Start einer IFW Funktion
                              (z.B. Ausdrucken, Makro) zur Datenbank uebertragen.
          02.07.07 API_MSK:   In der Lieferantenuntermaske mit den Texten sind die Felder beim Maske-vergroessern ueberlappend.
                              Zoomfunktion angepasst.
                   VIDF:      Suchen in nicht datenbanksortierten Spalten aktiviert (im Cache suchen).
                   FFBETON:   Bei der Waagenerfassung in den Lieferscheinstapel mit '~' (Edit des Stapels) Fehlermeldung 27 von KEY_ESC entfernt
          03.07.07 WWW_HOST:  Den Systemaufruf fuer die Datenuebrtragung von 50ms auf 200ms erhoeht (CEmuCView::OnTimer()).
          04.07.07 API_WIN:   Mehrfach gelbe Spalten beim Umsortieren durch Mausklick beseitigt.
                   API_MSK:   Feldzoom geaendert, Reparaturmaskennanzeige gerichtet.
                   FFBDE:     Beim sekundaeren BDE-Manager (BSC - Addresse 2) wird keine naechtliche BDE Zeituebertragung vorgenommen. Nur noch beim primaeren (Addresse 1).
          05.07.07 WINLIB:    Ueberschriftsfelder mit horizontaler Linie (Zeichen '\xc4') und eine '#' Zeichen werden ab dem '#' Zeichen bei der Ausgabe abgeschnitten.
                   API_MSK:   Ueberschriftsfelder mit horizontaler Linie (Zeichen '\xc4') werden als Boxen dargestellt. Dabei wird die
                              Hoehe automatisch berechnet. Mit eine '#' Zeichen koennen Parameter fuer die Boxengroesse uebergeben werden.
                              Ein Zahle nach dem '#'-Zeichen wird dabei automatisch als Hoehe der Box verwendet.
                   API_MSK:   Design der Masken ueberarbeitet, Boxen und Fliesstextfelder, Felder in Boxe mit einem Zeichen Beschriftung, Fliesstextueberschriften.
      381 09.07.07 FFFIBU2:   Kostenstellen in der FIBU:
                              Bei Skontozahlungen werden jetzt die Kostentellenangabe bei den Nebenbuchungen auf die Konten der Erloesminderung mit angegeben und bebucht.
                              Bisher gingen die Erloesminderungen durch Skonto nicht auf die Kostenstellen.
                   VIDF:      Die maximalen Feldlaengen beim XML-Einlesen in die IFW-Tabelle auf 4kB erweitert.
          12.07.07 FFBETON:   2-Wiegeverfahren fuer die Woehwa Waage ohne eigener WaagenID realisiert. Diese Waage hat keine eigenen WaagenID. Dort wird die 
                              Lieferscheinnummer als WaagenID verwendet und ueber einen Portokolldrucker eichfaehig verwaltet. Fuer das
                              2-Wiegerverfahren wird jetzt im IFW bei der Erstwiegung ein Dummylieferschein mit dem Vermerk '-' und dem Hinweis "Erstwiegung" gespeichert.
                              Bei der Zweitwiegung wird dieser Lieferschein in den echten Lieferschein umgewandelt.
                   API_MFRM:  Diverse IFW-Kalenderfunktionen fuer HTML aktiviert:
                                SetTableMode( winHandle, mode);  mode 1:Day; 2:Week; 3:6-Weeks
                                GetTableData( winHandle, func, column);  func 0:mode; 1:date; 2:columnCnt; 3:itemCnt from column; 4:date from column; 10:user itemCnt
                                GetTableItemData( winHandle, func, column, index);  func 0:x,y,width,height,x-resolution,colorHex; 1:title, 2:text, 3:user; 10:userName( index), column immer 0; 11:userActive( index), column immer 0
                                SetTableItemData( winHandle, func, column, index);  func 1:itemEdit(column,index); 10:userOn( index), 11:userOff( index), 12:userToggle( index)
      382 13.07.07 FFBETON:   2-Wiegeverfahren bei der Erstwiegung den Protokolldruck aktiviert.
      383 13.07.07 FFBETON:   2-Wiegeverfahren serielle Verarbeitung korrigiert.
          16.07.07 API_MFRM:  Diverse IFW-Kalenderfunktionen fuer HTML aktiviert:
                                SetTableItemData( winHandle, func, column, index);  func 1:itemEdit(column,index);
      384 16.07.07 FFBETON:   Text geandert: "Erst Wiegung" -> "Erst-Wiegung (voll)", "Zweit-Wiegung" -> "Zweit-Wiegung (leer)"
          17.07.07 API_FUNC:  Die Cache-Verwaltung beim Einlesen grosser Datenbanktabellen optimiert.
                   DATENSP:   DatenSpeicher2 Objekte optimiert. Variabe fuer aktuelle Puffergroesse und erster Reallocgroesse eingebaut.
                   LISTEINT:  ListeInt Objekte optimiert. Variabe fuer erster Reallocgroesse eingebaut.
          18.07.07 DFIMP:     Option @V fuer "Variablen nicht loeschen" ist jetzt in den Importvorlagen moeglich.
          19.07.07 FFSTDVK:   Schutzverletzung bei Ladeeinheiten im Verkauf, Menge F1 beseitigt (Firma Sibatex)
                   API_MSK:   Vorhandene Maximalwerte fuer Inhalte von Fliesstextfelder werden beim Editieren auf die moeglich Speicherkapazitaet der Maske angepasst.
      385 13.08.07 DFPRN:     Die Hilfenausgabe mit Strg-F1 im Terminkalender korrigiert, schliessen des IFW's unterbunden.
                   ITBPRG:    Fliesskommawerte aus Eingaberequester werden jetzt immer als Fliesskommawerte uebernommen.
                   ITBPRG:    DoRequest() loeschte bei nur 3 Parametern evt. ein in einem vorherigen DoRquest() mit 5 Parametern den dort angegebenen 5. Parameter, Problem beseitigt.
          14.08.07 DFLIB2:    Schutzverletzung bei nicht initialisierbaren Untermasken beseitigt.
                   API_MSK:   Beim Masken Zoomen werden Boxen um Felder mit beruecksichtigt
                   VIDF:      Beim Refresh auf der Zeile "Neuer Eintrag" bleibt der Fokus auf der Zeile.
                   API_REQ:   Requestboxen mit Zeilenumbruch moeglich.
                   FFSTDVK:   "Kundeninformation" wird jetzt als eine Box im Windows-IFW angezeigt.
                   API_MFRM:  In der Titelleiste wird der eingeloggte Benutzer/Mandant angezeigt
          15.08.07 API_MFRM:  Popupmenu auf dem IFW-Desktop
                              Hotkeys fuer Kunden-/Artikel-/Lieferantenstamm, Terminkalender
                              Strg-A im Fliesstext als Hotkey fuer den Artikelstamm rausgenommen
                   FAKTMAIN:  Im WINIFW nicht verfuegbare Menuepunkte inaktiv geschaltet
                   API_MSK:   Selektionsfunktion in der Liste geaendert (letzter Satz beim Selektieren).
                              Maus-Selektion hinzugefuegt.
                   API_WIN:   Strg Left/Right in der Uebersicht eingebaut. Flackern reduziert.
          16.08.07 FAKTMAIN:  Menuepunkt "Temporearverzeichnis aufrufen" eingebaut. Auch im Desktop Popoup Menue unter WINIFW
                   WINIFW:    Beim Speichern neuer Nachrichten mit F2 und ESC beim Speicherrequester das Loeschen der Maske unterbunden.
                   DOCUSTORE: Das Termporearverzeichnis zum Aufrufen der Dateien auf das Windows-Temporaerverzeichnis umgestellt.
          17.08.07 PINBOARD:  Das Kommunikationsprotokoll-Modul ueberarbeitet. Es werden jetzt aus Kundenstamm, Kudenmitarbeiter, Lieferantenstamm
                              Lieferantenmitarbeiter und Personalstamm automatisch Adresseintraege generiert.
          22.08.07 LISTVWEX:  Loeschen des Hintergrunds bei leerer Liste korrigiert.
      387 23.08.07 FFPROD:    Auch ohne BDE-Modul wird jetzt bei "Alle Istwerte Eintragen" bei E-Positionen nachgefragt, ob der Wert eingetragen werden soll.
                   FFART:     Bei Produktionen kann jetzt mit dem Kennzeichen 'X' im Kennzeichenfeld der Verfuegbarkeitsmask (Zusatzmodul) der Produktionsposition
                              gesteuert werden, ob eine Statistikbuchung der Menge erfolgen soll oder nicht.
                              Ohne X erfolgt die Statistikbuchung, mit X wird sie unterdrueckt. Die Lagerbuchung findet unabhaengig davon immer statt.
          23.08.07 FFBELPRU:  Das Systemmakro 71 wird jetzt auch beim Modul "Emailbestellung vom Webshop" aufgerufen. Bisher nur bei Modul "EDIFACT Order"
                              Systemmakro .$71:
                               Spezialprogramm beim Erzeugen einer Auftragsposition von einer EDIFACT Bestellung. MarkFile=Quelldatei.
                               Das Programm wird vorm Speichern der Auftragsposition aufgerufen. Bei einem Rueckgabewert groesser 0 findet keine
                               Speicherung der Auftragsposition statt. Der Rueckgabewert wird im Ergebnisfeld der EDIFACT-Position gespeichert.
                               Das Makro wird von den temporaeren Auftragspositionen aufgerufen (Programmname 047000.$71)
                   FFBELPRU:  Beim Modul "Emailbestellung vom Webshop" wird jetzt auch eine Ergebniszahl gespeichert.
          24.08.07 API_MFRM:  Terminkalender um PopupMenu erweitert. Doppelklick aktiviert.
      388 28.08.07 PRGLOAD2:  In der IFW Tabelle wird jetzt immer der Datensatzbezug mit ausgegeben.
                   WINIFW:    In Verbindung mit der Windowsversion koennen jetzt in der IFW-Tabelle die Datensaetze zu
                              den ausgegebenen Zeilen aufgerufen werden.
                              Der Aufruf kann per PopUp Menue, Doppelklick (nur auf einer Datenspalte) oder Taste Return erfolgen.
                   WINIFW:    Aufrufssicherung in doAPIEditData() falls der Prozess schon Modal laeuft.
                   FFVERSND:  Bei der Paketerfassung zu Lieferscheinen wird jetzt bei selektierten Lieferscheinen eine Pruefung aller
                              selektierten Scheine vorgenommen:
                              1. Ist einer der selektierten Eintraege aufgerufen worden?
                              2. Sind die Adressen verschieden?
                              3. Ist bereits eine Rechnung geschrieben?
                              4. Wurde bereits ein Paket erfasst?
                              Wird alles bestaetigt wird die Paketerfassung auf dem BESTAETIGTEM Lieferschein aufgerufen und die Paketzuordnung nur
                              dort vorgenommen. Fuer die Rechnungsschreibung werden ALLE selektierten Lieferscheine aufgenommen und abgeschlossen.
                   FFBDE:     Das BDE System erweitert, so dass ein Wechsel zwischen der Bildschirmerfassung und den Hardwareterminals beim Stechen
                              komplett unterstuetzt wird.
          03.09.07 WINIFW:    Windows-Fehlerboxen werden jetzt ebenfalls im Errorlog protokolliert.
          05.09.07 WINIFW:    Die Datei ifwicons.dll wird jetzt zuerst im Startpfad des ifw.exe gesucht, dann im bin verzeichnis.
          05.09.07 WINIFW:    Graue Icons bei inaktiven Buttons fuer Farbtiefeneintellung 16-Bit ueberarbeitet.
          10.09.07 API_MFRM:  Die Strg-Hotkeys fuer Kunden,Lieferanten und Artikelstamm auch im offenen Hauptmenue aktiviert.
                   EDIT_WIN:  Die Hotkeys fuer Copy/Paste im Texteditor im Windows-IFW aktiviert.
          11.09.07 API_WIN:   Refresh der IFW Tabelle beim Oeffnen ueber Die Aktionsbuttonleiste korrigiert.
                   API_MSK:   Eingabefenster wie "Rabatt als Betrag" koennen jetzt nicht mehr Werte in nur lese Masken veraendern.
          12.09.07 FFSTDVK:   Preiseinheiten bei den Frachterloesen der Bettonbranche beruecksichtigt.
      389 13.09.07 FAKTMAIN:  Ausnahmefehler werden jetzt im IFW mit einer Meldung abgefangen. Es wird danach automatisch neu gestartet.
                              Bei laufenden WWW-Host Sessions wird zusaetzlich auf das Startprogramm ifwstrtl.exe geprueft und bevorzugt.
                   FAKTMAIN:  Neuer INI Schalter AuftragLiefervermerk in der Sektion [Belege]
                              ;AuftragLiefervermerk: Wert 0/1. Default 0.
                              ;Mit dem Wert 1 wird beim Schreiben eines Belegs von einem Auftrag das Kennzeichen 'C' im Auftrag gesetzt.
                              ;Damit ist erkennbar ob bereits Ware zum Auftrag ausgeliefert wurde.
                              ;Mit dem Wert 0 entsteht kein Kennzeichen.
          14.09.07 FFBETON:   Bei Branche "Muehlen" buchen die Lieferscheine in den Kundenkontrakten bei allen Positionen
                              (In der Beton-Branche nur die Positionen mit der Kurzbezeichnung "RExxxx"
      390 19.09.07 VIDF:      Aufruf des Datensatzes aus der IFW-Tabelle per doppelklick ohne Windowsversion unterbunden.
                   WINIFW:    In der Listenansicht Spalten mit abgeschalteten Feldern ohne Inhalt ausgegeben
                              Die Funktion Strg-F3 zum Umschalten der Feldsichtbarkeit implementiert.
                   PRGLOAD:   EditFile um Modus 256 erweitert: 
                                Es wird direkt die Maske ohne Liste editiert.
                                Wichtig: Es muss ein aktueller Satz in der Datenbank zuvor gesetzt werden, z.B. mit GetRecord().
          26.09.07 API_MSK:   Minimierbutton aktiviert.
                              Positionierung der Fenster beim oeffnen fix an die Handlenummer gebunden, nicht mehr vom Vorfenster abhaengig
      391 28.09.07 IFWTAB:    Das Laden von XML-Dateien in die IFW Tabelle erweitert. Die Tags werden analysiert und jeder Wert einer Spalte zugeordnet.
                              Ist eine Datei mit der Endung ".defcsv" vorhanden, so wird die erste CSV-Zeile als Spaltendefinitionstabelle verwendet.
                              Wird in einem Spaltennamen die Zeichenfolge #$lll,c angehaengt, so wird die Zeichenzahl auf die Laenge lll formatiert.
                              Fehlende Zeichen werden mit dem Zeichen '*' aufgefuellt. Laenger Zeichenketten werden mit ihrer vollen Laenge ausgegeben.
                              Mit dem Wert c koennen Spalten zusammengefasst werden. Sie werden dann als eine Spalte ausgegeben. Die Werte werden mit dem
                              Zeichen '/' aneinander gehaengt.
                   PRGLOAD:   Neues Kommando ConvertXmlToCsv()
                                ConvertXmlToCsv( "DateinameXML")
                                ConvertXmlToCsv( "DateinameXML", "DateinameDefinitionsdatei")
                              Mit dem Kommando ConvertXml2Csv() kann eine XML-Datei in eine CSV-Datei umgewandelt werdem. Der Zielname ist immer
                              DateinameXML mit der Endung .csv.
                              Wir kein "DateinameDefinitionsdatei" angegeben, so werden alle Spalten aus der XML-Datei konvertiert.
                              Mit angebebener "DateinameDefinitionsdatei" koennen die Spalten definiert werden.
                               Es wird die erste CSV-Zeile als Spaltendefinitionstabelle verwendet.
                               Wird in einem Spaltennamen die Zeichenfolge #$lll,c angehaengt, so wird die Zeichenzahl auf die Laenge lll formatiert.
                               Fehlende Zeichen werden mit dem Zeichen '*' aufgefuellt. Laenger Zeichenketten werden mit ihrer vollen Laenge ausgegeben.
                               Mit dem Wert c koennen Spalten zusammengefasst werden. Sie werden dann als eine Spalte ausgegeben. Die Werte werden mit dem
                               Zeichen '/' aneinander gehaengt.
      392 11.10.07 FFFIBUDV:  Beim Uebertragen von stornierten Eingangsrechnung wurde bisher der Belegbetrag faelschlicherweise als abweichend vom 
                              Verbindlichkeitenbetrag gemeldet. Problem behoben.
          12.10.07 PRGLOAD:   Neue Kommando CalculateTax()
                                CalculateTax( Modus);
                                CalculateTax( Modus, Steuer1, ArtikelNummerSteuer1);
                                CalculateTax( Modus, Steuer1, ArtikelNummerSteuer1, Steuer2, ArtikelNummerSteuer2);
                              Mit dem Kommando CalculateTax() koennen in einem Ausgangsbeleg Positionszeilen angehaengt werden.
                              Die Positionszeilen dienen zur Steuerausweisung fuer den IFW Einsatz im Ausland.
                              Folgende Modis stehen zur Verfuegung:
                                1: Die Positionszeilen werden geloescht
                                2: Basissteuersatz 1 wird berechnet und gespeichert        (Bsp. Kanada GST)
                                4: Sekundaerer Steuersatz 2 wird berechnet und gespeichert (Bsp. Kanada PST)
                                8: Basissteuersatz 1 wird als Gesamtsteuersatz berechnet   (Bsp. Kanada HST)
                               16: Der Sekundaersteuersatz wird auf den Bruttowert mit Basissteuersatz 1 berechnet.
                              Hinweise zu 1 bis 16:
                              Die Steuer wird auf die Summe der Positionen der Steuerklasse A des Beleges berechnet.
                              Der Steuersatz A muss in den Systemeinstellungen auf 0 gestellt werden.
                              Die Steuerpositionen werden immer als nicht Gesamtrabattfaehig und ohne Steuerklasse gespeichert.
                              Ist im der Artikelbezeichnung der Text %TAX% enthalten, so wird er durch den Steuersatz ersetzt.
                              Die Positionen sind mit der Positionsart '%' gespeichert.
                              Die Belegausgabe muss ueber eine angepasste Druckvorlage erfolgen.
                              Die Modis sind immer mit dem Modus 1 zu kombinieren. Ansonsten werden die Steuerpositionen
                              mehrfach angehaengt.
      393 15.10.07 BRECLIB:   Caching zum Sortieren von mehr mehr als 32767 Datensaetze optimiert.
                   DFPRN:     Fehler bei der Ausgabe von mehr als 32767 selektierten Datensaetze mit gleichzeitiger Scrollanzeige
                              auf dem Bildschirm beseitigt.
          17.10.07 DFED3LIB:  Wortanfang selektieren beruecksichtigt jetzt den Filter vom Stammdatenarchiv.
                   WINIFW:    - Suche in gecachter Liste ueberarbeitet (Zahlenarrays, indexpfad)
                              - Blaettern in der Maske -> Refresh in der Liste gerichtet
                              - Menuehotkeys mit ALT immer verfuegbar gemacht, auch in der Maske und auf dem IFW-Desktop
                              - Strg-TAB im Listenfenster vom klassischen IFW reaktiviert
          18.10.07 WINFIW:    - Schutzverletzung bei dauer Bild-Auf / Bild-Ab beseitigt.
          22.10.07 WINIFW:    - Submenues lassen sich jetzt auch mit Icons versehen.
                   IFWTAB:    XML-Import angepasst, <! Tags als Kommentar aufgenommen
                   WINIFW     Im Windows-IFW wird jetzt bei einer Druckausgabe ueber ein LPT Port per biosprint() immer ein Abbruch generiert.
          23.10.07 PRGLOAD:   Kommando DeliverSalesOrder() um Wert Modus erweitert:
                               DeliverSalesOrder( "Programmname", "Label", Modus)
                              Modus:
                               0: Der Lieferschein wird sofort gedruckt
                               1: Der Lieferschein wird nicht gedruckt
                               2: Der Lieferschein wird zur Benutzereingabe geoeffnet
                   PRGLOAD:   Beim Schliessen des IFW's (AppExit()) wird jetzt auch bei gesetztem Abort-Lable der Makrointerpreter immer beendet.
      394 31.10.07 WINIFW:    WWW-Clint Rev. 1.3-04 aktiviert: Druckausgaben in c:\\temp werden jetzt immer in "Eigene Dateien//IfwTemp" umgeleitet.
                              Ein WWW Client mit Rev. 1.3-02 oder 1.3-03 auf einem Host mit Rev. 1.3-04 wird NICHT mit der Meldung einer alten Version angezeigt.
          09.11.07 PRGLOAD:   Das Kommando CalculateTax() um Modus 256 erweitert
                                CalculateTax( Modus, RabattEUR, ArtikelNummerRabatt);
                              Folgende Modis stehen zur Verfuegung:
                                1: Die Positionszeilen werden geloescht
                                2: Basissteuersatz 1 wird berechnet und gespeichert        (Bsp. Kanada GST)
                                4: Sekundaerer Steuersatz 2 wird berechnet und gespeichert (Bsp. Kanada PST)
                                8: Basissteuersatz 1 wird als Gesamtsteuersatz berechnet   (Bsp. Kanada HST)
                               16: Der Sekundaersteuersatz wird auf den Bruttowert mit Basissteuersatz 1 berechnet.
                              256: Es wird ein Rabatt pro MwSt Satz eingetragen, die Steuerklasse wird in der Position eingetragen.
                                   Der Rabatt wird nach Gewicht der Position berechnet. Er gilt in EUR pro 100 kg.
                              Hinweise zu 256:
                              Pro vorhandene Steuerklasse entsteht eine Zeile (maximal 3). Die Steuerklasse wird in die Position eingetragen.
                              Der angegebene Artikel ArtikelNummerRabatt wird verwendet. Der Rabatt ist in RabatEUR pro 100 kg anzugeben.
                              Ist im der Artikelbezeichnung der Text %RABATT% enthalten, so wird er durch den Rabattbetrag ersetzt.
                              Die Positionen sind mit der Positionsart '%' gespeichert.
                              Die Belegausgabe muss ueber eine angepasste Druckvorlage erfolgen.
                              Die Modis sind immer mit dem Modus 1 zu kombinieren. Ansonsten werden die Steuerpositionen
                              mehrfach angehaengt.
          12.11.07 FFPLZ2:    Hausnummern bei der Strassenleitcodeermittlung werden auch erkannt, wenn die Intervalle in der Datenbank nicht in aufsteigender
                              Reihenfolge eingetragen sind (Beispiel 10789 Berlin, Tauentzienstr. 9).
                   DFPRN:     Bei der Belegausgabe mit Anzahl wird der Drucker pro Druck einmal aufgerufen. Bisher blieb der GDI Druck haengen.
      395 13.11.07 PRGLOAD:   Das Kommando CalculateTax() um Modus 512 erweitert und 1024
                                CalculateTax( Modus, RabattEUR, ArtikelNummerRabatt);
                              Folgende Modis stehen zur Verfuegung:
                                1: Die Positionszeilen werden geloescht
                                2: Basissteuersatz 1 wird berechnet und gespeichert        (Bsp. Kanada GST)
                                4: Sekundaerer Steuersatz 2 wird berechnet und gespeichert (Bsp. Kanada PST)
                                8: Basissteuersatz 1 wird als Gesamtsteuersatz berechnet   (Bsp. Kanada HST)
                               16: Der Sekundaersteuersatz wird auf den Bruttowert mit Basissteuersatz 1 berechnet.
                              256: (0x100) Es wird ein Rabatt pro MwSt Satz eingetragen, die Steuerklasse wird in der Position eingetragen.
                                   Der Rabatt wird nach Gewicht der Position berechnet. Er gilt in EUR pro 100 kg.
                              512: (0x200) Es wird ein Rabatt pro MwSt Satz eingetragen, pcArtNrTax1 steht fuer den Artikel, die Steuerklasse wird in der Position eingetragen.
                                   Der Rabatt wird in % des Betrags berechnet.
                                CalculateTax( Modus, Steuer1, ArtikelNummerSteuer1, 0, Warengruppenliste);
                             1024: (0x400) Es wird ein Rabatt pro MwSt Satz eingetragen, pcArtNrTax1 steht fuer den Artikel, die Steuerklasse wird in der Position eingetragen.
                                   Der Rabatt wird in % des Betrags berechnet.
                                   Der Wert "Warengruppenliste" steht fuer eine Liste von Warengruppennummern, fuer den der Steuersatz ermittelt werden soll.
                                   Mehrere Warengruppennummern sind mit Strichpunkt voneinander zu trennen.
                              Hinweise zu 1024:
                              Die Ermittlung erfolgt wie bei Modus 1024, nur werden nur Positionen beruecksichtigt, deren Artikel einer Warengruppe aus
                              der Warengruppenliste entspricht.
                              Sollen auf mehrere Warengruppenbereiche Rabatte vergeben werden, So ist zuerset die Funktion CalculateTax() mit Modus 1 aufzurufen (loeschen)
                              und dann nacheinander CalculateTax() mit der entsprechenden Warengruppenliste und Rabattwerte.
          14.11.07 DFED3LIB:  Beim Schliessen eines Erweiterungsfensters wird closeAllAutoChildDf() mit aufgerufen.
          19.11.07 PRGLOAD:   Das Kommando CalculateTax() bei Modus 2, 4, 8 und 16 erweitert
                                CalculateTax( Modus, RabattEUR, ArtikelNummerRabatt);
                              Hinweis:
                              Wird mit Modus 2,4,9 oder 16 die Steuer berechnet, so gelten folgende Regeln:
                              Positionen der Steuerklasse A werden fuer Steuersatz 1 und Steuersatz 2 als Berechnungsgrundlage herangezogen.
                              Dies gilt auch fuer die Bruttoberechnung im Modus 16.
                              Positionen der Steuerklasse B werden nur fuer den Steuersatz 1 als Berechnungsgrundlage herangezogen.
                              Im Steuersatz 2 werden die Betraege der B-Positionen nicht beruecksichtigt. Fuer Steuersatz 1 wird als
                              Berechnungsgrundlage die Summe der A und B Positionen verwendet.
                              Bei Modus 16 wird fuer die Bruttoberechnung nur der Steueranteil aus Klasse A verwendet.
      396 20.11.07 DFLOADZW:  Neue Systemmakro .$78 und .$79.
                              Bei Belegbearbeitung "Beleg kopieren" oder "von Beleg schreiben" wird es vor dem letzten Speichern
                              der Kopfposition eines der beiden Makros aktiviert. Das Makro .$78 wird beim Aendern eines Belegs aufgerufen,
                              das Makro .$79 wird beim Kopieren oder "von Beleg schreiben" aufgerufen.
                              Die Quelldatei kann mit SetFileBackToMarkedFile() aufgerufen werden.
                              In V1 ist der Quelldateihandle enthalten. Damit kann bei "von Beleg schreiben" erkannt werden, von welchem Quellbeleg
                              der Beleg geschrieben wird.
                              Sind mehrere Quellbelege selektiert, so zeigt SetFileBackToMarkedFile() auf den letzten Beleg.
          21.11.07 PROGLOAD:  Kommando erweitert:
                              SetLinearFilter( Modus, Feldnummer, Inhalt);
                              kann der Filter gesetzt und geloescht werden.
                              Modus: 1 Inhalt von Feld Feldnummer == Inhalt
                              Modus: 2 Inhalt von Feld Feldnummer != Inhalt
                              Modus: 3 Inhalt als Teilwort im Feld Feldnummer enthalten (exakter Vergleich).
                              Modus: 4 Einer der Buchstaben ist im Feld enthalten. Geht nur mit Felder der Laenge 1.
                              Modus: 5 Ein Buchstaben ist nicht im Feld enthalten. Geht nur mit einem Zeichen, die Feldlaenge kann beliebig lang sein.
          22.11.07 MUEHLEN:   Zwei neue Waagentype fuer die Warenannahme mit Wiegung:
                              Schuettgut-Durchlaufwaagen:
                              8: DIALOG 165, Weber Waagenbau //Alibispeicher; Pruefziffer; Protokoll 3964(R), AKN-Verfahren mit STX/DLE/ETX Antwort; 9600 E 8 1; Steuerung der Waage ueber EDV
                              9: IT6000 BULK, Systecc        //Alibispeicher; Protokoll 3964, AKN-Verfahren mit STX/DLE/ETX Antwort; 9600 E 8 1; Nur am Schluss eine eigenstaendige Mengenmeldung.
          23.11.07 FAKTMAIN:  Neuer INI Schalter VerkaufspreisPruefen in der Sektion [Belege]
                              ;VerkaufspreisPruefen: Wert 0/1. Default 1.
                              ;Mit dem Wert 1 wird beim Schreiben einer Position eines Verkaufsbelegs geprueft, ob der Verkaufspreis groesser als
                              ;der Einkaufspreis ist. Wenn er kleiner ist wird die Warnung "Nettopreis kleiner als EK!" ausgegeben.
                              ;Mit dem Wert 0 kann die Meldung abgeschaltet werden
          26.11.07 MSCON:     Die Cursor-Hoehe auf der Textoberflaeche von mindestens 2 Pixel auf 3 Pixel erhoeht.
                   FFWEG:     Bei "Wareneingaenge anschauen" wird nach F1 auf dem MwSt-Feld fuer die MwSt-Korrektur der Beleg nicht mehr auf geaendert gesetzt.
          27.11.07 STDCON:    Anzeige der Scheduleraktivitaet:
                              Bei aktiver Schedulerueberwachung wird das Symbol #-on oder #-off in der Kopfzeile vom IFW angezeigt.
                              Bei aktiver automatische Nachrichtenbestaetigung wird das Symbol '#' angezeigt, abgeschalteter Nachrichtenbestaetigung
                              das Sympbol '-' (also --on oder --off).
                   PRJPRM:    Die Konfigurationseintraege in der config.rec Datei werden jetzt beim Speichern immer mit ihrer Revisionsnummer gespeichert.
                              Damit wird bei asynchroner Revisionsnummern beim Speichern im IFW die Revisionsnummern automatisch angeglichen.
      397 27.11.07 FFERLBU:   Ist bei der Belegausloesung in der temporaeren Erloeskontenstapeldatenbank das Feld "Steuersatz %", Feldnummer 1 vorhanden,
                              so wird es mit dem Warenwirtschaftssteuersatz des Beleges ausgefuellt.
                   FFFIBUDV:  Ist im Buchungsstapel das Feld "Steuersatz %", Feldnummer 1 vorhanden, so wird es mit dem Warenwirtschaftssteuersatz des Beleges ausgefuellt.
          28.11.07 WINIFW:    Standardicons des Menues eingespielt
          29.11.07 WINIFW:    Schalter "grosse Menuedarstellung" eingebaut
      398 29.11.07 PRGLOAD:   Das Kommando CalculateTax() um Modus 2048 erweitert
                              2048: (0x800) In Verbindung mit der Rabattberechnung wird der erzeugte Rabatt auf die Einzelpositionen umgelegt.
                                    Dazu muss in der Position das Feld "Teuerungszuschlag" enthalten sein.
                                    Dabei wird bei den Positionen der Teuerungszuschlag als nagative Rabattprozente eingetragen.
                                    Die Rabattpositionen selbst werden mit -100% Teuerungszuschlag gespeichert.
          30.11.07 FFBELPRU:  Oeffnen der Eingabemaske bei der  Seriennummern Massenerfassung korrigiert (seit ca. Rev 390 defekt).
          30.11.07 WINIFW:    "grosse Menuedarstellung" Text ebenfalls geaendert auf Verdana 10
      399 30.11.07 EXTEEMUC:  Der GDI Windowsdrucker Setup von bestimmten Lexmarkdruckern fuehrte zu einer Schutzverletzung. Problem beseitigt.
                              Speicherbereich des Setupblocks der GDI-Drucker von 5k auf 20k erhoeht.
                   FFCOMCON:  Die IFW-Host-Session erzeugt jetzt weniger Serverlast wenn sie im Eroeffnungsbildschirm mit dem Hinweis auf eine alte
                              Clientversion steht.
          02.12.07 STDCON:    Tritt im HOST-Modus mit laufendem Scheduler ein Btrievefehler -3111 auf (Netzwerkverbindung zum Server unterbrochen) so wird der
                              Host restartet. Es wird die Meldung "Tron: error -3111, btrieve is disconnected from HOST. Host shutdown." im Fehlerlogbuch
                              eingetragen.
                   ERRORLOG:  Ein Messpaket zur Ermittlung der Netzwerkperformancewerte implementiert. Es werden alle Datenbank- und einige Dateizugriffe
                              auf die Lokale Festplatte und den betroffenen Netzwerkservern registriert und in ein Logbuch geschrieben (perform_jjmm_computername.log).
                              Die Datei wird lokal geschrieben und alle 60 Sekunden auf den IFW Server in das Verzeichnis TEMPDAT kopiert.
      400 04.12.07 API_MFRM:  Diverse IFW-Kommandos fuer HTML aktiviert:
                                GetPerformanceMonitorData( winHandle, func);              func 0:modeSek; 1:date; 2:barCnt; 3:Text allgemein; 4:skalaMS
                                GetPerformanceMonitorItemData( winHandle, func, column);  func 0:text; 1:Basiswert x in 10000, Wert MS, Zeit SS:MM:SS, Anzahl; 2:LastPeak x in 10000, Wert MS, Zeit SS:MM:SS, Anzahl; 3:Peak x in 10000, Wert MS, Zeit SS:MM:SS, Anzahl; 4:ErrorCnt, Zeit SS:MM:SS
                   LISTVWEX:  Beim Laden von Dateiicons wurde beim Typ *.mgr (Outlook) der aktuelle Dateipfad verstellt. Pruefung und Rueckstellung eingebaut.
      401 06.12.07 ITBPRG:    Die ROWDEF-Deklaration erweitert:
                                Schluesselwort objectsort eingefuehrt. Wert true/false, default true.
                                Mit objectsort kann die Anordnung verschiedener Datenbankobjekte ein einer Strukturebene gesteuert werden.
                                Standardmaessig werden verschiedene ROWDEF-Objekte in einer Ebene nicht ineinander sortiert (objectsort true).
                                Sollen eintraege verschiedener Objekte in einer Ebene ineinandersortiert werden so muss bei jedem ROWDEF Objekt objectsort auf false gestellt werden.
                                Z.B. kann so eine Chronologische Liste verschiedener Belegarten in einer Strukturebene erzeugt werden. Der Sortier- und Verdichtungsschluessel Key() ist
                                dabei mit bei allen Beleg-Objekten fuehrend mit dem Datum und nachfolgend mit der Belegnummer zu versehen.
                                (Beispiel zur Erzeugung des Keys:  $s=C44; $s=$s+C32 ).
                   ITBPRG:    Den Maskenfeldaufruf erweitert:
                                Wird das Maskenfeld mit kleinem c aufgerufen, so wird keine Fehlerbeldung bei nicht vorhandenem Feld ausgegeben. Statt dessen wird
                                eine Variable vom Typ STRING zurueckgeliefert die keinen Text enthaelt.
                   PRNLIB2:   Neues Preprozessorkommando #ifdb( dbname)
                                Damit eingegrenzte Formularteile werden nur verwendet, wenn die angegebene Datenbank vorhanden ist.
                                Damit koennen allgemeingueltige IFW-Modulunabhaengig Druckvorlagen und ITB's geschrieben werden.
                   PRNLIB2:   Neue Variablen in den Druckvorlagen 
                                [.IstOEM<] -> gibt "1" aus, wenn die Datenbankinhalte im OEM Format gespeichert sind. Ansonsten wird "" zurueckgegeben.
                                [.IstGUI<] -> gibt "1" aus, wenn sich das IFW in der graphischen Oberflaeche befindet. In der klassischen Oberflaeche wird "" ausgegeben.
                   DFLIB:     Beim Selektieren von Eintraegen wird jetzt bei einem Wechsel des Sortierpfades der vermerkte Sortierpfad zurueckgesetzt.
                              Durch Einzelselektion verschiedener Eintraege und gleichzeitigen mehrfachen verstellen des Sortierpfades konnte bisher unter Umstaenden als
                              Ergebniss eine nicht nach dem aktuellen Pfad vollstaendig sortierte Liste beim Ausdruck erzeugt werden. Problem behoben.
                   ITBPRG:    Im IFW-Tabellenprogramm koennen nur noch Felder ausgegeben werden, zu denen der Benutzer auch die Zugriffsrechte hat.
          07.12.07 ITBPRG:    Auswertungen die im Archiv gestartet werden beruecksichtigen die Daten aus der aktiven Datenbank korrekt. Bisher wurden die
                              die Archivdatenbanken doppelt verwendet und die Aktivdatenbank nicht.
                   FFWEG:     Werden Sammelwareneingaenge von Bestellungen geschrieben, so werden jetzt alle beteiligten Bestellungen auf Abschliessbarkeit mit
                              dem Kennzeichen E geprueft.
                   API_MSK:   Tasten Alt-1 bis Alt-9 in der Listenuebersicht zum Ausloesen der Buttons aktiviert.
                   API_MSK:   Tasten Alt-1 bis Alt-9 in der Maske zum Ausloesen der Buttons aktiviert.
          11.12.07 API_MFRM:  Strg-N und Strg-T geht jetzt auch wenn das Menue offen ist.
                   API_MSK:   Beim Deselektieren wird die Zeile unter dem Cursor nicht deselektiert.
      402 13.12.07 SERPORT:   Initialisierungsroutinen fuer "Kein Handshake" eingebaut. Bei der Waageninitialisierung wird dies verwendet.
                   FFBETON:   Das Wiegesystem fuer Durchlaufwaagen bei der Totalisierung ueberarbeitet.
          14.12.07 API_MFRM:  IFW-Kalenderfunktionen fuer HTML erweitert:
                              SetTableItemData( winHandle, func, column, index);
                              Funktionen:
                              func 1:itemEdit( column, index); 
                              func 2:setItemStartDate( column, index); //column&0xFF00 new deltaColumn, index&0xFF00 new Y-Raster-Position,
                              func 3:itemDelete( column, index); 
                              func 4:itemDial( column, index); 
                              func 5:itemMail( column, index); 
                              func 6:itemPrint( column, index); 
                              func 7:itemAttachment( column, index); 
                              func 8:itemNew( column, index);          //column&0x00FF startColumn, column&0xFF00 endColumn, index&0x00FF start Y-Raster-Position, index&0xFF00 end Y-Raster-Position,
                              func 10:userOn( index
                              func 11:userOff( index)
                              func 12:userToggle( index)
                              func 20:scrollLeft( index)  index = cnt column
                              func 21:scrollRight( index) index = cnt column
                              func 22:setDate( index)     column = "YYYY", index = "MMDD"
                   API_MSK:   Aufruf des Terminkalenders mit Fokusuebergabe ueberarbeitet.
                   API_REQ:   Aufruf eines Melde- oder Eingaberequester fuert auf das TopLevel-Fenster zurueck (auch der Terminkalender).
          17.12.07 API_MSK:   Beim Drag und Drop auf ein Fliesstextfeld werden jetzt Lerrzeichen im Dateiname zu %20 umgewandelt.
      403 18.12.07 FFBETON:   Ueberarbeitung des Wiegevorgangs von Waagentyp 9 IT6000 BULK
                              Zwei neue Parameter in der waagen.ini
                              UhrzeitWaage: Wert 0/1, Default 1
                               0 -> Uhrzeit des PC's bei der Wiegung verwenden
                               1 -> Uhrzeit der Waage bei der Wiegung verwenden
                              DatumWaage: Wert 0/1, Default 1
                               0 -> Datum des PC's bei der Wiegung verwenden
                               1 -> Datum der Waage bei der Wiegung verwenden
                   WINIFW:    Bei "Grosses Menue" wird jetzt auch der Font in der Maske vergroessert.
          19.12.07 FAKTPRJ:   Die Personaldatenbank ist jetzt nur noch vorhanden, wenn das Personalmodul gekauft wird. Bisher konnte sie
                              auch ohne Modul mit Shift-F1 in der alternativen Auswahl von Adressen abgerufen werden.
                   EXTEMUMF:  Der Schalter "Grosses Menue" ist jetzt standardmaessig eingeschaltet.
      404 19.12.07 DFEDLIB:   Bei Erfassungsmasken (xxxxxxf_.msk) werden jetzt beim Oeffnen auch die dynamischen Links geprueft. Bisher wurden
                              Benutzerdefinierte Auswahllisten (ALT-F10) in den Masken nicht automatisch geladen, wenn die urspruengelich Datenbank zuvor
                              nicht aufgerufen wurde (konkret bei der Waagenerfassung).
                   EMUMFRM:   Wird eine IFW-Session minimiert beendet und wird sie als Host mit Portangabe gestartet, so wird sie auch wieder minimiert gestartet.
      405 03.01.08 FAKTEDIT:  Bei der Meldung "Die Belegart wird von Ihnen bereits auf einer anderen Station bearbeitet!" wird jetzt zuvor versucht eine andere
                              Instanz des Belegzwischenspeichers zu oeffnen. Es wird versucht eine Temporaerdatei mit -0 bis maximal -f am Ende des Dateinamens
                              zu oeffnen. Der -x Extender wird ab dem Versuch bei allen Temporaerdateien verwendet. Erst beim Ummelden des Benutzers wird wieder
                              ohne Erweiterung versucht zu arbeiten. Es sind nur Belegdateien im Temporaerverzeichnis mit numerischen Dateiname betroffen.
          04.01.08 FFBETON:   Die Statistiktabelle in den Kundenkontrakten auf gleiche Anordnung wie bei den Liefernantenkontrakte angegelichen.
                              Im der Betonbranche wir das aktuelle Jahr in der Statistik als erste der drei Zeilen verwendet.
                              In der Muehlenbranche wird das Jahr des Kontraktstarts als erste Zeile verwendet.
      406 04.01.08 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                                ZahlungsbedingungVonAbweichenderRechnungsadresse; Wert 0/1, Default 0.
                                Werden abweichende Rechnungsadressen verwendet, so wird die Debitorenkontonummer
                                und die EuroID der abweichenden Rechnungsadresse auf dem Beleg verwendet.
                                Mit dem Wert 1 kann zusaetzlich auch die Zahlungsbedingung der abweichenden
                                Rechnungsadresse uebernommen werden.
      407 07.01.08 DFPRN:     Beim Drucken mit Shift-Return wird die Ausgabedatei auch bei einem Druckvorlagenfehler geoeffnet.
                   FFSTDVK:   Beim der Muehelnbranche wird im Verkauf keine Artikeldaten abgerufen, wenn ein Kontrakt einer Position zugeordnet wird.
                              Nur der Preis wird abgerufen.
                   PRNLIB:    Zwei neue Druckvorlagenkommandos:
                              [V10:mpVd] -> Damit laesst sich aus einem Kontrakt der Preis zu einem Datum ermitteln (incl. Report)
                              [V10:mrVd] -> Setzen und berechnen der Restmengentabelle zu einem Datum. Zur ausgabe der Werte dann das Feld C161() abrufen.
                                            Es koennen nur Restmengen innerhalb des Gueltigkeitszeitraums abgerufen werden.
      408 08.01.08 FFBETON:   Getreideabrechnung in der Muehlenbranche: Bei Abrechnung des Wiegestapels mit Anzeige des Belegs wird nach dem Speichern automatisch
                              nach Anlage der Verbindlichkeit gefragt.
      409 08.01.08 FFBETON:   Die Preisberechnung mit Report in der Muehlenbranche wird jetzt schon ab dem Startdatum mit dem Reportaufschlag versehen (bisher erst nach dem ersten Intervall).
          09.01.08 IGGAW:     Mehrfachauswahlen aus Optionslisten aus der AWT-Textdatei koennen nicht mehr in Masken im Anschaumodus uebernommen werden.
                   WINIFW:    Implementation der Mehrfachauswahl aus Optionslisten der AWT-Textdatei.
          10.01.08 DBED:      Neue Funktion zur automatischen Datenbankkonfiguration fuer Felder der Eigenschaften und des Dateianhangs
                   DOCUSTORE: Erweiterung der Funktionen:
                              - CRC Pruesummengenerierung
                              - Kategoriefelder aus in der Zentraldatenbank
                              - Gruppenzuordnung erweitert um die Datensatz-Identnummer.
                              - Die Linkdatenbank verfuegt jetzt immer uber die Anzeige der Ablage und den Verknuepfungszaehler.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Docustore":
                                Ablageverzeichnis; Wert "Verzeichnis". Default "$/ablage"
                                Mit diesem Wert wird gesteuert in welchem Verzeichnis die Dateien der Dokumentenablage Docustore
                                gespeichert werden. In diesem Verzeichnis entstehen automatisch weitere Unterverzeichnisse.
                                Das IFW laedt automatisch die Dateien von diesem Verzeichnis.
                                Wird der Text "$\" am Anfang der Bezeichnung verwendet, so wird automatisch das IFW-Arbeitsverzeichnis
                                als Ursprungsverzeichnis eingesetzt. So ergibt die Standadeinstellung
                                "$/ablage" das Verzeichnis c:\ifw\ablage wenn das IFW auf dem Laufwerksbuchstaben c: liegt.
                                Sie koennen normale Slashs '/' als Verzeichnisangabe verwenden. Wenn Sie Backslashs '\' verwenden
                                so muessen Sie sie doppelt angeben "$/ablage" -> "$\\ablage".
                                Ein abschliesender Slash an der Verzeichnisangabe ist nicht notwendig, kann aber angegeben werden.
                                Der Verzeichnispfad wird erstellt, falls er noch nicht vorhanden ist.
      410 11.01.08 DOCUSTORE: Menuepunkt zum Durchsuchen aktiviert. Mit Strg-F kann darauf zugegriffen werden.
                   API_MSK:   Strg-F fuehrt zur Teilwortsuche (wie F7)
                   MSCON:     Das Eurozeichen kann im Windows-IFW eingegeben werden. Es wird in der Datenbank ueber das Zeichen
                              0xEE 238 simuliert. Im Terminal-Zeichensatz ist das ein kleiner Strich oben.
                              Mit dem Lucida-Zeichensatz wird die Anzeige auf dem Bildschirm Emuliert.
                              Der GDI-Druck kann das Zeichen drucken.
          12.01.08 DFEDEDIT:  Bei der Funktion Belegausgabe wird jetzt ein Menue zuvor angezeigt, wie beim normalen Drucken. Es gibt bei
                              der Belegausgabe aber keine Favoriten.
                              Bei Speichern - Drucken eines Belegs wird die Belegausgabe wie bisher ueber die Datenbanktabelle angezeigt.
                   MSCOMCON:  Im Popupmenue wird die Belegausgabe angeboten. Datenbankobjekte ohne Belegausgabe wird der Menupunkt
                              nicht angezeigt.
                              Die Menuepunkte fuer das Aenderungsarchiv im Popupmenue werden nur noch angeboten, wenn das
                              Aenderungsarchiv vorhanden und moeglich ist.
          14.01.08 API_MSK:   Bearbeitungsmoeglichkeit der Ausgabe/Belegausgabe/Funktionsmenues im WINIFW aktiviert.
                   DFED2LIB:  Fehler -43 bei zweimaligen Aufruf einer leeren Optionsauswahl mit F1 beseitigt.
                   PRNLIB:    Neues Druckvorlagenkommando [V10:l"Text"]
                              Mit der Zuweisung :l zu einer Zahlenvariable wird die Textlaenge des angegebenen Textes
                              in der Zahlenvariable gespeichert.
                   PRNLIB:    Neues Druckvorlagenkommando [Vt1:s"Text"], [Vt1:w"Text"], [Vt1:W"Text"], [Vt1:v"Text"] und [Vt1:V"Text"]
                              -Mit der Zuweisung :s kann festgetsellt werden ob die Zeichenfolge "Text" in der Textvariable vorkommt. Sie wird
                               dabei nicht veraendert, sondern nur die Sprungbedingung gesetzt. Das Kommando wirk wie das bisherige :S nur erfolgt
                               die Suche unabhaengig der Gross-/Kleinschreibung.
                              -Mit der Zuweisung :w kann vor jedem auftreten der Zeichenfolge "Text" in der Textvariable eine Zeichenfolge eingefuegt
                               werden. Die einzufuegende Zeichenfolge steht in Vt. Die Suche erfolgt unabhaengig der Gross-/Kleinschreibung.
                              -Mit der Zuweisung :W kann nach jedem auftreten der Zeichenfolge "Text" in der Textvariable eine Zeichenfolge eingefuegt
                               werden. Die einzufuegende Zeichenfolge steht in Vt. Die Suche erfolgt unabhaengig der Gross-/Kleinschreibung.
                              -Mit der Zuweisung :v zu einer Textvariable wird der Text in der Variable bis zum ersten Auftreten der Zeichenfolge
                               "Text" inclusiv von "Text" geloescht. Die Textsuche erfolgt unabhaengig von der Gross-/Kleinschreibung.
                              -Mit der Zuweisung :V zu einer Textvariable wird der Text in der Variable ab dem ersten Auftreten der Zeichenfolge
                               "Text" geloescht. Die Textsuche erfolgt unabhaengig von der Gross-/Kleinschreibung.
                   PRGLOAD:   Neue Kommando CallDocustore()
                                CallDocustore( Modus, DateiId);
                              Mit dem Kommando CallDocustore() kann eine Dati im Docustore aufgerufen werden.
                              DateiId enthaelt dabei die DatensatzId der Datei.
                              Folgende Modis stehen zur Verfuegung:
                                1: Datei ausfuehren
                                2: Datei mit notepad aufrufen
                   PRNLIB:    Neue Druckvorlagenkommandos [Vt8:a"Dateipfad"] und [Vt8:A"Dateiname"]
                              Mit den beiden Kommandos kann ein Dateipfad zerlegt und wieder zusammengefuegt werden.
                              [Vt8:a    -> Zerlegen eines Dateipfades. Das Laufwerk wird in Vt gespeichert, der Verzeichnispfad
                                           in Vt1, die Dateierweiterung in Vt2 und der Dateiname in der Ergebnisvariable links vom :
                                           hier Vt8.
                              [Vt9:AVt8 -> Zusammenfuegen eines Dateipfades. Das Laufwerk wird aus Vt bezogen, der Verzeichnispfad
                                           aus Vt1, die dateierweiterung aus Vt2 und der Dateiname aus der Variable rechts von A,
                                           hier Vt8. Das Ergebnis wird in der Ergebnisvariable links vom : gespeicehrt, hier Vt9.
                              Hinweis:
                              Der Laufwerksanteil enthaelt immer den Doppelpunkt, wenn ein Laufwerk im Pfadname vorhanden ist.
                              Der Verzeichnispfad enthaellt immer alle fuehrenden und folgenden Backsplashs, wenn sie im Pfaname
                              vorhanden sind.
                              Die Dateierweiterung enhaelt immer ein fuehrenden Punkt, wenn eine Dateierweiterung im Pfadname
                              vorhanden ist.
                              Ist ein UNC-Pfad (Pfadangabe mit \\ ohne Laufwerksbuchstaben) angegeben, so ist der Laufwerksanteil
                              leer und der Serveranteil steht im Verzeichnispfad.
          15.01.08 FAKTPRJ:   Mit Strg-F kann jetzt im klassischen IFW die Dokumentensuche aufgerufen werden.
          16.01.08 DFED3LIB:  DfEinstein kann jetzt auch Fliesstexte. Der eingelernte Satz wird nicht mehr in der Datei gespeichert
                   FAKTFNC:   Docustore vergleicht jetzt nicht mehr den Dateipfad mit Gross- und Kleinschreibung auf eine Aenderung
                              (Anwendung von Docustore auf einem Linuxserver).
      411 17.01.08 PINBOARD:  Die Kundennummer wird in angehaengte Dateien einer Nachricht Uebertragen, falls noch keine
                              Kundennummer der Datei im Docustore bisher zugeordnet war.
                   WINIFW:    Reiter der Liste beim neuoeffnen jetzt korrekt. Zuvor war er immer auf der ersten Spalte.
                              Listenbeschriftung von Positionslisten ohne Titel, Titel gerichtet, Sonderzeichen entfernt.
      412 21.01.08 DOCUSTORE: Neue Funktionen zur Suche in Dokustore implementiert:
                              Neues Kommando CallFuzzySearch
                              CallFuzzySearch( Modus, Suchtext)
                              CallFuzzySearch( Modus, Suchtext, Parameter)
                              Damit laesst sich eine unscharfe Volltextsuche durchfuehren. Dazu muss zuvor die Datenbank indiziert
                              werden. Danach laesst sich eine schnelle unscharfe Textsuche durchfuehren.
                              Modus:
                               1: Initialisierung (Loeschung) und Manuelle definition der Suchfelder.
                               3: Selektierte Datensaetze hinzuindizieren. Es werden nur noch nicht eingelernte hinzugefuegt.
                               4: Alle noch nicht eingelernte Datensaetze hinzuindizieren.
                               5: Suchlauf. Die Worte aus "Suchtext" werden gesucht. Mit dem Wert "Parameter" kann die Suchschaerfe
                                  Der Worte vorgegeben werden. Wird nichts angegeben, werden die ersten 3 aehnlichen Worte eines
                                  eingegeben Wortes verwendet. Bei der Angaben von 1 wird nur das Wort selbst (falls vorhanden)
                                  verwendet.
                               6: Alle im Index enthaltene Datensaetze selektieren.
                              Hinweis:
                              Das Kommando laesst sich nur auf Datenbanken anwenden, die das Feld 32 als Primaerschluessel besitzen
                              und benutzen. Die Datenbank muss zuvor mit Modus 1 Initialisiert und mit Modus 3 oder 4 aktuallisiert
                              werden.
                              Neue Druckvorlagenkommandos [.FuzzySucheWorte<] und [.FuzzySucheWert<]
                              Die Kommados geben das Ergebniss des letzte CallFuzzySearch() Suchlaufes aus.
                              - Mit [.FuzzySucheWorte<] kann die Liste der gefundenen Worte ausgegeben werden.
                                Dabei wird  V1 als Paramter verwednet.
                                Mit V1 = 0 kann wird die Anzahl Woerter in der Liste ausgegeben.
                                Mit V1 = 1 bis Anzahl werden die Woerter ausgegeben.
                                           Hinter dem Wort wird mit Strichpunkt getrennt die Uebereinstimmung des Worts angegeben.
                              - Mit [.FuzzySucheWert<] kann die Uebereinstimmung des aktuellen Datensatzes zu den gesuchten
                                Worten ausgegeben werden.
                   BRECLIB:   Anzeigefehler im Browser bei gesetztem Liniearfiltern und Datensaetze groesser als 9kByte beseitigt.
                   DOCUSTORE: Die Fuzzy-Suche gibt bei gesetztem Linearfilter nur noch Datensaetze mit Zugangsberechtigung zurueck.
                   PRNLIB:    Neue Druckvorlagenkommandos mit Fliesstextvariablen:
                              [Vt1:=[C87/Vt<]] oder [Vt1:=[C87/"wort1 wort2 wort3"<]]
                                Sucht das erste Vorkommen eines der Worte in der
                                Fliesstextvariable und gibt die Zeilennummer zurueck. Die Zeilen beginnen bei 1. Wird kein
                                Wort gefunden so wird nichts ausgegeben. Die Zuweisung kann nur in Textvariablen erfolgen.
                              [C87(V10)<] 
                                Gibt die Zeile aus der Fliesstextvariable aus. Bisher konnten nur direkt Zahlen wie z.B. [C87(1)<]
                                angegeben werden. Es koennen nur Zahlenvariablen als Parameter verwendet werden.
      413 22.01.08 DOCUSTORE: - Das Kommando CallFuzzySearch() lest im Modus 4 nur noch Eintraege ein, die in allen Indizierten Feldern etwas
                                enthalten.
                              - Das Speichern des Fuzzy-Indexes erfolgt jetzt ueber eine Temporaerdatei. Diese wird nach erfolgreichem Speichern
                                in die Originaldatei umgewandelt. Ist die neue Datei groesser oder gleich als die bisherige Datei
                                und die bisherige Datei groesser oder gleich der Backupdatei, so wird die bisherige Datei in eine Backupdatei umgewandelt.
                                Die Originaldatei erhaelt jetzt die Erweiterung .fzz (Fuzzy).
                              - Beim Anhaengen ganzer Verzeichnisse wird jetzt der Verzeichnisname selbst mit in die Kategorie geschrieben
                              - Bei Anhaengen von mehr als 1 MB oder mehr als 10 Dateien wird ein Zaehlrequester eingeblendet.
                              - Die Kategorie im Dateianhang wird in das Zentralverspeichnis gespeichert, wenn die Linkanzahl nicht groesser als 1 ist.
                              - Der am Arbeitsplatz geladene Fuzzy-Index wird automatisch aktuallisiert, wenn ein neuer Index vorhanden ist.
                              - Beim Synchronisieren des Fuzzy-Index wird er nur noch gschrieben, wenn etwas hinzugelernt wurde.
                   WINIFW:    - Fragerequester geht jetzt auch mit Umlauten als Antworttasten
                              - Beim Beleg bearbeiten wird jetzt die Positionsliste beim Betreten von oben auf die ersten Zeile gesetzt, von unten auf die letzte.
                              - In den Fliesstextfeldern kann man jetzt mit Strg-F suchen (oder Rechtklick Popup-Menu)
                   EDIT_WIN:  In der Bildschirmausgabe-Textausgabe wird jetzt vorwaerts gesucht (bisher nur Rueckwaerts).
          23.01.08 WINFIW:    - Blaettern in den Belegen im Anschauen funktioniert auch von der Positionsliste aus, wenn der Beleg zuvor mit ESC geschlossen wurde.
                              - Bei gesetztem Linearfilter in einer Datenbank wird jetzt korrekte gesucht.
                   WINFIW:    - Das Symbolmenue wird jetzt aus der Datei symbols.mrc geladen. Existiert im Verzeichnis MYIFW eine Datei
                                symbols.mrc, so hat diese Vorrgang. So kann der Anwender eine Eigene Symboldatei einsetzen.
                                Es sind jetzt alle Icons von 1 bis 999 als Symbol einsetzbar.
                   DOCUSTORE: - Bei der Fuzzy-Suche hat das exakte Wort einen erheblichen Wertebonus und wird so absolut vorrangig gesucht.
                   WINIFW:    - Editiermodus der Fliesstextfelder umgebaut. Es wird jetzt nicht mehr voll Selektiert und die Hintergrundfarbe aendert 
                                sich auf Weiss wenn das Feld zum Editieren betreten ist.
      414 24.01.08 FFVERK:    werden negative Auftragsmengen durch Lieferschein/Rechnung bedient (Ware zurueckgenommen), so wird die
                              Auftragsmenge im Artikelstamm korrekt auf 0 belassen.
                   WINIFW:    - Aufraeumen der internen unbenutzten IFW-Systemresourcen ab 70% Belegung aktiviert.
                              - Schwarze Icons auf manchen 16-Bit Farben Rechnern beseitigt.
                   PRGLOAD:   Die Puffergroesse fuer die Parameterverarbeitung von 100 auf MAXPATH (260) erhoeht.
                   PRGLOAD:   Kommando CallDocustore() um Modus 3 erweitert
                                CallDocustore( Modus, DateiId);
                              Mit dem Kommando CallDocustore() kann eine Datei im Docustore aufgerufen werden.
                              DateiId enthaelt dabei die DatensatzId der Datei.
                              Folgende Modis stehen zur Verfuegung:
                                1: Datei ausfuehren
                                2: Datei mit notepad aufrufen
                                3: Dateianhang des aktuellen Datensatzes aufrufen. DateiId hat dabei keine Funktion.
                                   Die Datenbank muss ueber die Dateianhangsfunktion verfuegen.
      415 25.01.08 DOCUSTORE: Dateien werden nur noch aus dem Zentralregister geloescht, wenn der Anhangseintrag direkt vom Benutzer
                              mit Entf. geloescht wird. Das Loeschen einer Nachricht mit Dateianhang loescht diese nicht mehr automatisch
                              aus dem Zentralregister.
                   DOCUSTORE: Wird ein Eintrag aus dem Zentralregister geloescht, so werden die Dateien in das Verzeichnis _delete 
                              im Docustoreverzeichnis verschoben. Die Dateien werden nicht mehr direkt geloescht.
                   WINIFW:    - Der Eingabefokus geht im Terminkalender nicht mehr verloren, wenn er ohne Maus bedient wird und ein Termin
                                geoeffnet und geschlossen wird.
                              - Notfallroutine die den Eingabefokus auf das WinIfw-ClientFenster zuruecksetzt, wenn gar kein Focus mehr vorhanden ist.
                              - Strg-P oeffnet die Zeilenbreiteneinstellung im Fliesstextfeld.
                   DFED3LIB:  Der Wortprozessor fuer die Fuzzy-Suche verwirft jetzt einzelene Buchstaben. Ein einzelner Buchstabe gefolgt von
                              einem '-' und weiteren gueltigen Zeichen wird zusammen als ein Wort gewertet.
          29.01.08 MUEHLEN:   Berechnung der Rest-Liefermengen pro Monat in den Kontrakten geaendert. Es werden jetzt Ueberlieferungen
                              auf den Folgemonat verteilt.
                              Das Grenzdatum in den Kunden- und Lieferantenkontrakten wird jetzt in der Uebersicht automatisch aktuallisiert,
                              wenn das Kennzeichen M nicht gesetzt ist. Beim Berechnen der Menge wird es immer aktuallisiert.
      416 31.01.08 FAKTMAIN:  Wir das IFW mit dem Parameter /bootlog gestartet, so wird im Verzeichnis, in dem das IFWKNxxx.EXE liegt eine Datei
                              "bootlog.txt" mitgeschrieben. In ihr sind verschiedene Schritte der Programminitialisierung protokolliert.
                   WINIFW:    GUI-Resourcenverbrauch reduziert. Somit koennen mehr Fenster in der graphischen Oberflaeche geoeffnet werden.
          06.02.08 TOBITFW:   Eingehender Email-Spam wird jetzt auch bei abgeschaltetem Emaileingang (Kennzeichen '-' beim Benutzer) erkannt.
                              Damit wird auch keine Popup-Meldung beim Spameingang angezeigt.
                   IFWTAB:    Die Textfarbe bei der Zeile mit dem Fokus ist jetzt immer Weiss, auch wenn die Textfarbe geaendert ist.
          07.02.08 POPUPMNU:  Beim Oeffnen der Belegausgabe in den Verbindlichkeiten ohne Belegausgabeeintraege Fehler -1 beseitigt.
      417 08.02.08 DFLOADZW:  Beim Belegschreiben von einem anderen Beleg werden die Merkmale fuer Symbol, Zeilenfarbe und Dateianhang nicht mehr mituebernommen.
                   API_FUNC:  Die Bildschirmausgabe mit Shift-Return wird jetzt in der Windowsversion immer im Datenbankfenster aufgerufen und nichtmehr auf dem Hintergrundfenster.
                   WINIFW:    Ware kann jetzt mit F2 von der Positionsliste in die Bestelliste uebergeben werden.
                   WINIFW:    Funktionen mit Rechtsklick werden schneller ausgefuert. Es wird keine andere Tastenfunktion vor Verarbeiten der Funktion ausgefuert.
                   DOCUSTORE: Aenderungen des Dateinamens werden jetzt auch in das Docustore uebertragen.
          11.02.08 DOCUSTORE: Waehrend der Dateikonvertierung (Status I) ist ein Umbenennen der Datei geblockt.
                   WINIFW:    Oeffnen der Maske ohne Bearbeitung in der GUI-Version aktiviert (edOpenMask() / doAPIOpenMask())
                   WINIFW:    Selektionsfunktionen im Popupmenue eingebaut.
                   WINIFW:    Funktion Selektionsbeginn und Selektionsende eingebaut. Der Beginn und das Ende wird mit einem Gruenen/Roten Icon angezeigt,
                              wenn die Spalte fuer Icons in der Datenbank vorhanden ist.
                   WINIFW:    Die Umsortierung nur selektierter Datensaetze wird mit der Datenbankselektionsliste synchronisiert.
                              Beim Umschalten auf alle Eintraege wird die Datenbanksortierung herangezogen, falls auf eine lokal sortierte Spalte umgeschalten wurde.
                   WINIFW:    Beim GDI-Druck wird der Dokumentenname korrekt mitgegeben.
                   DFOBJ:     Ein Abbruch der Zaehlbox in der GUI wird jetzt auch in Datenbank-Schleifenobjekten (LooDFO) erkannt.
          13.02.08 DFPDF:     Die Info-Datenbankhandles wurden um eine Cache-Option erweitert.
                   VIDF:      Im Listenaufbau werden Vornamenfelder las anhangsfelder mit der Fixen Zeichenbreite von 10 Zeichen geladen.
                   WINIFW:    - F1 Auswahl auf Felder fuer Druckvorlagen oder Druckertreiber fuer zu einer korrekten Auswahl.
                              - Auswahl von Mehrfachoptionen aus Textlisten (IFW-Dropdown) jetzt moeglich.
          14.02.08 WINLIB:    Bei der Datumseingabe wird folgende zusaetzliche Pruefung vorgenommen:
                              Ist der aktuelle Monat der Dezember und wird ein Datum im ersten Halbjahr des gleichen Jahres eingegeben,
                              so wird die Meldung "Datum in der Vergangenheit!" ausgegebn.
                              Damit sollen versehentliche Eingaben im Dezember von Terminen fuer das nachsten Jahr gemeldet werden.
                   WINIFW:    - Datumspruefung bei der Eingabe aktiviert.
                              - Die Positionsnummerierung beim Beleg schreiben wird jetzt immer am Ende fortgesetzt.
                              - Beim Kundenneuanlage/-kopieren wird beim Mitarbeiterliste jetzt nach "Speichern" gefragt
                              - Strg-A bringt jetzt den Artikelstamm (bisher faeschlicherweise den Kundenstamm)
                              - Beim Kundenneuanlage ist die Mitarbeiterliste jetzt leer.
                              - Die Groesse der Eingabemaske orientiert sich jetzt auch am Maximum aller beteiligetn Untermasken.
      418 15.02.08 WINIFW:    - Zugriff auf externe Karteien, Zentraler Archivzugriff, Zentrales Aenderungslogbuch implementiert.
                              - Fokusproblem bei Datumsfeld mit falscher Angabe dessen Meldung durch ein Mausklick auf ein anderes Feld erzeugt wird beseitigt.
      419 18.02.08 FAKTEDIT:  Beim Belege veraendern wird jetzt das Loeschen vorhandener Dateianhaenge zwingend unterbunden. Bisher konnte
                              durch eine bestimmte Bedienreihenfolge das versehentliche Loeschen der Dateianhaenge ausgeloest werden.
                   DFED3LIB:  FuzzySearch erweitert. Es wird jetzt geprueft ob eine Druckvorlage *$f.dvl oder *$f.dvu vorhanden ist. Wenn
                              ja wird diese zum Einlernen der Information verwendet. Die dvu Vorlage hat Vorrang.
                   PRNLIB:    Beim Drucken einen zusaetzlichen globalen Ausgabespeicher hinzugefuegt. Ist er gesetzt, dann werden die Dateausgaben in diesen
                              Speicher anstatt zum Drucker vorgenommen.
      420 20.02.08 API_REQ:   Management des Zaehlrequesters beim Belegdruck optimiert.
                              Ein versehentlicher Abbruch der ProgressBox wird jetzt mit einer zusaetzlichen Abfrage verhindert.
          21.02.08 DFFNC:     Die Verbindungsliste erweitert. Es wird jetzt die Arbeitsplatz-IP und der zuletzt angemeldete Benutzer mitgefuehrt.
                              Zusaetzlich sind felder fuer die Telefonzuordnung vorhanden.
                   DFED2LIB:  Eine zusaetzlich Datenbanklogbuchfunktion implementiert.
                              - Es koennen Feldaenderungen protokolliert werden.
                              - Ein zusaetzliches Datenbanklogbuch in eine datenbankabhaengigen Logbuchdatei.
                              - In den Logbuchdateien wird jetzt die Stationsnummer und die aktuelle Prozess-ID mitgefuehrt.
                              - Ein Datenbanklogbuch direkt in einer Kartei im IFW.
                              - Auf die Datenbanklogbuchkartei kann mit Funktionen vom mitgeloggten Objekt fuer eine Historie zugegriffen werden.
                              - Folgende Typen werden mitgeloggt:
                                UN: Neuanlage durch den Benutzer
                                UW: Aenderung durch den Benutzer
                                SW: Aenderung durch einen Systemvorgang
                                DN: Neuanlage durch eine Dokument (Beleg)
                                DW: Aenderung durch eine Dokument (Beleg)
                                PN: Neuanlage durch eine Dokumentenposition (Belegposition)
                                PW: Aenderung durch eine Dokumentenposition (Belegposition)
                              - Die Konfigurierung erfolgt ueber die Datenbankparameter
                                Dort kann eine Liste von Feldern mit Komma getrennt hinterlegt werden.
                                Angaben mit - fuer von-bis Feldnummer sind auch moeglich.
                                Wird als erstes Zeichen ein * angegeben, so werden alle Felder ausgegeben.
                                Ist nach dem Stern eine Liste von Feldern angegeben, so werden dies Ausgenomen (exclude).
                   API_MSK:   DropDown Menues erkennen jetzt auch Zeilen ohne enthaltenem Leerzeichen (Spaltentrenner).
          22.02.08 MUEHLEN:   Bei der Kontraktberechnung wird jetzt bei Mengenmodus M und G ebenfalls eine monatliche Restmenge berechnet.
                   PRGLOAD:   Bei SetIndexFilterImmediate() wird jetzt die Listenanzeige immer zurueckgesetzt (Problem mit -230 in der Listenanzeige).
          23.02.08 WINIFW:    Bei offenem Requester wird der Focus bei der Liste und der Maske immer zum offenen Requester gesetzt.
                              Damit kann nicht im Hintergrund waerend der Requester laeuft das Fenster bedient werden.
          25.02.08 IFWTAB:    Die Struktur wird nur noch bei direktem Klicken auf das + oder - Symbol oder durch ein Doppelklick geoeffnet/geschlosssen.
                   RECLIB:    Zusaetzliches loeschen des Flags des Veraenderungsspeichers fuer die Datenbanklogfunktion bei Btrieveoperationen
                   DFEDLIB:   Bei der Auswahlfunktion EDIT_SELECT wird jetzt der Datensatz vor verlassen der Funkion nochmals gelesen. Damit wird
                              der Veraenderungsspeicher fuer die Datenbanklogbuchfunktion korrekt gesetzt.
      421 26.02.08 STDPRJ:    Die interne Stationsnummer wird jetzt auch bei Systemen ohne Mandantenmodul korrekt gesetzt.
                   FAKTFNC:   Das IFW-Portal und die HTML-Hilfe reaktiviert (wurde wegen der GUI vorruebergehend deaktiviert).
                   REQUEST:   Die Fragerequester werden jetzt auch unter der GUI im Logbuch mitgeschrieben
          28.02.08 WINIFW:    Fokusfehler beim Anspringen von Datensaetzen relativ am Ende der Datenbank korrigiert.
      422 29.02.08 FAKTFNC:   Die Frage "Ungueltige Links Melden" bei der Hilfenerzeugung wird nur noch beim Benutzer "Service" gestellt.
                              Die Personaldatenbank ist jetzt wieder immer aktiv.
                   DFED2LIB:  Bei der automatischen Namensuebernahme im Beleg werden jetzt auch genau gleiche mehrfach vorkommenden Namen erkannt.
                   WINIFW:    Den steigenden Bedarf an GDI-Objekten beim Oeffnen und Schliesen der Fenster beseitigt.
          04.03.08 WINIFW:    - Reparaturen aktiviert. Pruefung auf Ausfuehrungsart reaktiviert (seit Rev. 376 deaktiv gewesen).
                              - In den Maskenresourcen koennen jetzt Textrahmenfelder mit dem Kommando #off fuer die Windowsanzeige abgeschaltet werden.
                              - Geht beim Beleg Speichern ein Requester auf, so ist nach Schliessen des Requesters das zuletzt benutzte Feld der Maske sofort wieder aktiv.
                   FFWEG:     Bei den Belegen des Einkaufs (Wareneingang, Warenruecksendung, Repearaturruecksendung) werden jetzt die Mehrwertssteuerbetraege
                              verschiedener Mehrwertssteuerklassen zuerst gerundet, dann addiert.
          05.03.08 WINIFW:    Reparaturen korrigiert.
      423 12.03.08 WINIFW:    HTML-Druck mit Drucker HTM: aktiviert.
                   DFPRN:     Ausgabeoption X: Ausgabedatei ausfuehren implementiert.
                   DFED2LIB:  Automatischen Namensuebernahme angepasst:
                              - Namen aus der Benutzerliste werden auch dann sofort erkannt wenn mehrmals der Gleiche vorhanden ist (Mandanten)
                              - Exakt korrekte Namen werden atomatisch uebernommen, auch wenn Folgenamen mit dem wortteil am Anfang beginnen. Es wird
                                nur noch dann eine Auswahl angefordert, wenn exact die gleichen Namen mehrmals vorkommen.
                   PRGLOAD:   Kommando DocumentEdit() erweitert.
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              Es kann nun auch fuer Rechnungen angewendet werden.
                              Rechnungen koennen von Angeboten, Auftraege (ohne Produktionsabgleich),Lieferscheinen und Reparaturen geschrieben werden.
                   FAKTEDIT:  Wird ein Beleg veraendert und mit ESC die Maske verlassen, so wird die Auswahl sofort wieder geoeffnet. Bisher ist man 
                              auf das Hauptmenue zurueckgekehrt.
                   PRNLIB4:   @x wird nur noch von @0 bis @7 als Kommando verarbeitet (bisher @0 bis @F,@f).
                              Folgende Interpretation wird vorgenommen:
                              @0-@7: Druckkommando Fett,Breit,Unterstrichen, @0-@7 wird nicht ausgegeben.
                              @@   : Ein @ wird ausgegeben.
                              @x   : Bei allen anderen Kombinationen wird @x wie vorgegeben ausgegeben.
          14.03.08 WINIFW:    Loginrequester erste Elemente
          17.03.08 FFBETON:   Neuer Waagentyp GCU-64 mit und ohne Protokolldruck aktiviert (Typ 10 und 11)
                              Konfiguration einer 3. Waage moeglich, Auswahl nur ueber Return am Ende, Waage 1,2,3.
                              Die Waagenslots muessen nacheinander belegt werden:
                              Bei zwei Waagen darf nur die 1. und 2. Waage verwendet werden.
                              Bei einer Waagen darf nur die 1. Waage verwendet werden.
                   FAKTMAIN:  Die Textbausteine mit F1 lassen sich jetzt nicht mehr in den Textbausteinen aufrufen.
                   WINIFW:    Der Menuepunkt "Istwerte in Produktionsauftrag eintragen" geht jetzt.
          18.03.08 WINIFW:    Fokusverlauf der Masken bei Menuepunkt "Istwerte in Produktionsauftrag eintragen" korrigiert.
                              Beim Editieren von einzelnen Datensaetze ueber edit_datasingle() wird jetzt der aktuelle
                              Datensatz in der Liste automatisch refresht.
                   WINIFW:    Strg-Return beim Drucken fuer alternativen Drucker geht.
                              Der alternative Drucker wird jetzt auch in den Favoriten eingelernt.
      424 18.03.08 DF:        32-Bit Handle in die DataFile Struktur integriert.
                   WINIFW:    Die Druckausgabe wird jetzt direkt zum Fenster des Datenbankobjekts umgeleitet.
                   PRNLIB3:   Beim Zuweisen von Werten in Vt-Variablen aus einer HTML Datei (window.external.VtXX = ) wurde die 
                              Vt-Variable des folgenden Indizes geloescht. Problem behoben.
          19.03.08 WINIFW:    Menuepunkt Benutzerummeldung aktiviert. Er fuehrt auf die klassische Oberflaeche zurueck.
          26.03.08 WINIFW:    Strg-Return beim Drucken problematisch. Strg-Flag Zwangsrefresh vorm Drucken aus der Windowsversion heraus.
                   DFED3LIB:  Bei Erfassungsmasken (xxxxxxF_.msk) werden die ALT-F10 Eintraege nur noch geladen wenn das Ursprungsfenster noch
                              keine Ladung vorgenommen hat. Ansonsten wurde bisher ein Initialisierungsfehler wegen Doppelinitialisierung angezeigt.
      425 27.03.08 MUEHLEN:   Erweiterung der Lieferanten-QM-Bewertung um eine Bewertung im Wiegestapel
                              - Beim Abrechnen des Wiegestapels werden die Berwertungen im Wareneingang zusammengefasst
                              - Neuer Typ W in den Bewertungsfragen:
                                Bei der Lieferantenbewertungsberechnung werden Typ-W Fragen
                                direkt aus dem Wiegestapel ermittelt, nicht aus den Wareneingaengen
                   POPUPMNU:  Erweiterung der Systemaufrufsfunktion von Makros:
                              - Untermasken die beim Belegs bearbeiten aufgerufen werden, werden jetzt mit dem
                                Temporaerdateiname der Hauptmaske Erweitert um die Fx Bezeichnung aufgerufen
                                (z.B. beim Wareneingang 031000F5.$xx). Bisher wurden sie mit ihrer dynamischen Id als
                                Dateiname aufgerufen (z.B. 198000.$xx);
                   DFED3LIB:  Neues Systemmakro .$80.
                              Beim Aufrufen einer Untermaske wird zuvor das Masko .$80 auf der Hauptmaske aufgerufen.
                              In V1 ist Fenster-ID der Untermaske die folgen wird enthalten
                              (1->xxxxxxF0, 16->xxxxxxFF, 17 ->xxxxxxF_).
                   MUEHLEN:   Anzahl Monate in der Freimengenberechnung der Kontrakte von 15 auf 24 intern, 18 auf der Maske erhoeht.
          31.03.08 API_MFRM:  Diverse IFW-Kommandos fuer HTML aktiviert:
                                UserFullName   Kompletter Benutzername des eingeloggten Benutzers
                                MandantName    Mandantenname des aktuellen Mandanten
                                IFWVersion     IFW-Versionsnummer
                                IFWDirectory   aktives IFW-Verzeichnis
                                IFWExeFileName aktiver IFW-Programmname
                                IFWLicenceUse  Benutzte Lizenzen (nur wenn eingeloggt)
                                IFWCompany     Firmenname der Installation
                                UserFlags      zugeordnete Kennzeichen des eingeloggten Benutzers
      426 01.04.08 WINIFW:    Windowslogin mit Splashscreen implementiert.
          04.04.08 PINBOARD:  Bei Bearbeitung der Nachrichtenliste mit dem Makrokommando Change() kann mit dem 
                              Modus 4 die Meldung nach Versand der Nachricht unterbunden werden.
                   EXTEMUC:   Zusaetzlicher refresh des Slashscreens implementiert.
          07.04.08 WINIFW:    Auswahlfelder (Typ Switch, Radiobuttons Checkbox) in der Windowsmaske aktiviert.
                   API_MFRM:  Ueber das Popupmenue einer Nachricht auf dem Desktop sind jetzt alle Makrofunktionenen mit Positionnummer 00X?
                              erreichbar.
          08.04.08 ERRORLOG:  Im Logbuch wird jetzt direkt hinter der ProcessID ein 'w' fuer Windows-Modus oder ein 'k' fuer klassischer Modus geschrieben.
                   DFED3LIB:  Fehler -43 bei Neuanlage eines Eintrags in einer Auswahlliste beseitigt.
                   WINIFW:    "Programm-Parametereinstellungen" und "11 Artikelliste-Einstellunge" oeffnet nicht mehr im Hintergrund auf der klassischen Oberflaeche.
                   VIDF:      Die Cache-Verwaltung beim Einlesen von grosser Datenbanktabellen mit unlinearer Prozentberechnung von der Datenbankmaschine in Verbindung
                              mit dem Scrollen mit dem Scrollbalken optimiert.
                   DFED2LIB:  Beim Cachen sehr grosser Listen wird jetzt ein Zaehlrequester eingeblendet.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Einkauf":
                                WareneingangAufArtikelmaskeSpeichern; Wert 3. Default 0/3
                                Wird ein Wareneingang gespeichert, so speichert er die Lieferantendaten automatisch auf der Artikelmaske 
                                in den 3 Lieferantenzeilen.
                                Mit dem Wert kann angegeben werden, wieviele Zeilen automatisch verwaltet und bestueck werden.
                                Mit dem Wert 0 werden gar keine Lieferantendaten automatisch auf der Artikelmaske gespeichert.
                                Hinweis:
                                Die Preisfindung der Lieferantenpreise bei den Eingangsbelegen erfolgt unabhaengig von der Einstellung.
                                Es werden immer alle 3 Zeilen nach der passenden Lieferantennummer untersucht und bei passender Nummer der Preis 
                                des Lieferanten verwendet.
          09.04.08 IFWMAIN.H: Hintergrund-HTML Seite aktuallisiert.
                   API_MSK:   Auf der Eingabemaske wird bei Feldern als link die Hand als Mauszeiger eingeblendet.
                   API_MFRM:  Rand am Terminkalender optimiert.
      427 10.04.08 STDMSK:    Beim Drucken auf einen GDI-Drucker mit gespeichertem SetUp und alter kleiner Druckerdatenbank konnte eine Schutzverletzung
                              ausgeloest werden. Problem beseitigt.
          11.04.08 API_CAL:   Eingabehilfe bei den Datumsfelder eingebaut. DropDown (Alt-Pfeil Ab) oder Mausklick auf Button.
          14.04.08 API_CAL:   Datumseingabehilfe optimiert fuer groessere Zeitraeume und autoclose.
          15.04.08 PRGLOAD:   CalculateTax() gibt jetzt die Steuerprozente bis zu 3-stellig aus
          16.04.08 EXTEMUC:   -Beim Einloggen wird das Hauptfenster nicht mehr im Vorfeld geoeffnet, wenn man mehrfach Tastateneingaben vornimmt.
                   API_MSK:   -Bei F10 wird jetzt im Popupmenue un der Liste der erste Menuepunkt automatisch aktiv.
                              -F10 in der Maske deaktiviert.
                              -Bei Belegen (Belegausgabe aktiv) die Standardfunktionen im Popupmenue geaendert.
                   FAKTMAIN:  -Bei Angebot Auftrag Lieferschein Rechnung werden jetzt alternative Funktionen angeboten.
                              -Bei Auftrag und Lieferschein kann auch ein abschluss durchgefuehrt werden
          17.04.08 FAKTMAIN:  -Ueber die Popupfunktion wird immer nur der aktuelle Satz in den Folgebeleg umgewandelt.
                              -Bei Lieferscheinen gibt es zusaetzlich auch eine Sammelrechnung.
                              -Produktionsabgleich bei Auftraegen beruecksichtigt
                              -Bei Auftraegen gibt es zusaetzlich auch ein Sammellieferschein.
                              -Reparaturen zu Lieferschein/Rechnung aktiviert.
                   LISTVWEX:  Die Farbe der selektierten Zeilen heller gemacht.
                   REQUEST:   -"Dattum bis" -> "Datum bis"
                              -OEMToChar beim Titel von Eingaberequestern fuer Felder.
                              -In den externen Karteien ist jetzt auch das normale Druckmenue verfuegbar.
          18.04.08 STDMSK:    In der Druckerliste kann unter "anschauen" kein Drucker oder Setup mehr verstellt werden.
                   API_REQ:   bei Eingaberequester mit 2 Feldern wird mit Return von Feld 1 auf Feld 2 gesprungen. Pfeil Auf/Ab aktiviert.
      428 21.04.08 WINIFW:    - Von Bestelliste Bestellung schreiben aktiviert (ohne Doppelfenster).
                              - Von Auftrag Produktion anlgegen aktiviert (ohne Doppelfenster).
                              Der Zielbeleg ist mit F10 "Positionen des Belegs anzeigen" aufgerufen werden.
                   API_MSK:   Die Monats-Ueberschriften in den Jahres-Statistiktabellen werden jetzt automatisch getrennt und korrekt gesetzt.
          23.04.08 FFPROD:    Bei der PPS-Zeitplanung kann nun bei der Anlage eine Verweilzeit in Werktagen zwischen den Hirachischen Produktionen
                              angegeben werden.
                   PRGLOAD:   Kommando PrintFile() erweitert:
                                Modus 2048 (0x800): Ausgabe einer Liste von Eintraegen rueckwaerts von unten nach oben.
          25.04.08 API_MFRM:  Neues IFW-Kommando fuer HTML aktiviert:
                                window.external.FileExist( "Dateiname")  Prueft ob der Dateiname vorhanden ist. Der Dateiname wird vom aktuellen IFW-Arbeistverzeichnis
                                aus geprueft. Absolute Pfadangaben werden beruecksichtigt.
                                Rueckgabewerte;
                                "0"     Datei existiert nicht
                                "1"     Datei existiert
                                "error" Fehler in der Parameterangabe des Aufrufs
                   EXTEMUMF:  Beim der GUI Version ist der Windowslogin jetzt Standard.
                              Anordnung der Toolbars beim erstmaligen Windowslogin korigiert.
                              Fenster bei erstem Aufruf in die Mitte des Desktops -50,-20 pixel je Seite
          28.04.08 ITBPRG:    Neue Option der ROWDEF-Deklaration:
                              "deleted off" -> es werden keine geloeschten Eintraege aus dem Papierkorb ausgegeben
                              "deleted on"  -> geloeschten Eintraege aus dem Papierkorb werden mit ausgegeben
                              Die Standardeinstellung ist "deleted off".
                   ITBPRG:    Kommando BOOL IsRecordArchived() aktiviert:
                                Wenn muss ein aktueller Datensatz geladen sein.
                                Gibt TRUE zurueck wenn der Datensatz im Archiv oder im Papierkorb ist.
                   ITBPRG:    Kommando BOOL IsRecordDeleted() aktiviert:
                                Wenn muss ein aktueller Datensatz geladen sein.
                                Gibt TRUE zurueck wenn der Datensatz im Papierkorb ist.
          29.04.08 PRNLIB:    Neues Druckvorlagenkommando [Vx:fzVdx] und [Vx:fZVdx] 
                              Mit der Zuweisung :fz kann der Forecastplanbestand im Artikelstamm auf Unterschreitung einer Menge untersucht werden (IFW Modul Forecast erforderlich).
                              Folgende Parameter werden benoetigt:
                               V1:  Vorgabe der alten Pruefmenge (bei Positionsaenderungen)
                               Vd:  Vorgabe des alten Pruefdatum (bei Positionsaenderungen); leer, wenn unberuecksichtigt
                               V2:  Vorgabe der aktuellen Pruefmenge
                               Vd1: Vorgabe des aktuellen Pruefdatums; leer, wenn unberuecksichtigt
                               V3:  Vorgabe der Vergleichswertes
                               Vx:  Startindex des Pruefzeitraums
                               Vdx: Enddatum des Pruefzeitraums
                              [Vx:fzVdx]
                               In Vx wird der Dispoindex zurueckgegeben, der den Forecastplanbestand < Vergleichswertes im Zeitraum besitzt.
                                  Ist er nicht kleiner als der Vergleichswert, wird der Index mit dem minimalen Forecastplanbestand zurueckgegeben.
                               V1 wird automatisch auf den Dispobetand in dem Index gesetzt.
                               V2 wird automatisch auf die freie Forcastplanmenge der Woche der aktuellen Pruefmenge gesetz (Vd1). Dabei ist
                                  die alte Pruefmenge (V1 in Vd) bereits kompensiert.
                               Es ist zu beachten, dass in der Rueckgabemenge die beiden Vorgaben aus V1,Vd und V2 und Vd1
                               beruecksichtigt sind. Ein Vorgabewert wird nicht beruecksichtigt, wenn die entsprechende 
                               Datumsvariable leer ist.
                               Das Kommando :fz sucht den Forecastplanbestand von links nach rechts und gibt die Woche mit dem Ersten zu geringen Wert
                               zurueck.
                               Das Kommando :fZ sucht den Forecastplanbestand von rechts nach links und gibt die Woche mit dem letzten noch ausreichenden
                               Wert zurueck.
                               Hinweis: Vx kann mit dem Kommando [Vd:iVx] in ein Datum umgewandelt werden.
          02.05.08 WINIFW:    Belegpositionen kopieren/einfuegen eingebaut. 
                              Beim Import die Option IMPORT_CLRPOS zur automatischen Positionsnummerierung implementiert.
      429 05.05.08 WINIFW:    Strg-C kopiert
                              Strg-V fuegt als neue ein
                              Strg-E fuegt mit original Positionsnummern ein und ueberschreibt gleiche
                   APIMSK:    Die Zeilenbreiteneinstellung wird bei Fliesstexten jetzt auch von Untermasken auf die Hauptmaske
                              immer mituebertragen.
                   DFLIB:     Bei Listenausgaben wird jetzt bei vorhandener Benutzerabbruchmoeglichkeit das IFW permanent refresht.
          08.05.08 WINIFW:    Selektionspalte in der Liste eingebaut, mit eigenem Rechtsklickmenue und Symbol bei selektierten Spalten
                   WINIFW:    Tooltips auf den Maskenfeldern aktiviert.
      430 09.05.08 FFWEG:     Neue Kommissionierscheinfunktion implementiert.
                              "von Produktion Kommissionierung der AKL-Mengen schreiben":
                              Es wird ein Kommissionierschein mit den Entnahmemengen aus dem AKL-Lager erstellt.
                              Positionen ohne Sollmenge UND ohne AKL-Menge werden nicht uebertragen.
                   FFFOCAST:  Forecast Wochenmengenberechnung:
                              Berechnungs der Wochenverteilung im Dezember im M5 Modus und taggenaue Berechnung im MT Modus am Jahresuebergang korrigiert.
          13.05.08 WINIFW:    Beginn/Ende - Symbol fuer Selektion in der IFW Tabelle wird nur noch bei selektiertem Satz angezeigt.
                   WINIFW:    Tooltip auf den Symbolspalten der Datenbankliste aktiviert.
          15.05.08 PRGLOAD:   Kommando PrintFile() erweitert:
                                Modus 4096 (0x1000): Es wird kein Zaehlrequester geoeffnet.
                   DVAPI32:   Fremd eingestellte Outlook Terminemails fuehrten zum Absturz der David-API:
                              - Beim Abgleich die Objekteigenschaft auf "Kalender" geprueft.
                              - Abgleich von Kalenderwintraegen mit Umlauten in der Betreffzeile korrigiert.
      431 20.05.08 FFARTBCH:  Standardmaessig kann jetzt im IFW der Folgebeleg nicht mehr ohne vorhandenem Vorbeleg verbucht werden.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                                VorbelegPruefen; Wert 0/1, Default 1.
                                Beim Verbuchen eines Belegs erfolgt die Verarbeitung in Bezug auf den Vorbeleg.
                                (Z.B. Rechung von Lieferschein -> die Rechung bucht die Ware nicht nochmal aus).
                                Ist der Vorbeleg nicht mehr vorhanden, so aendert sich das Buchungsverhalten.
                                Mit dem Wert 0 wird keine Pruefung auf die Existenz des Vorbelegs vorgenommen und
                                die Verarbeitung des Folgebelegs wird durchgefuehrt, wie wenn er keinen Vorbeleg hat.
                                Mit dem Wert 1 ist es nicht mehr moeglich den Folgebelg ohne vorhandenem Vorbeleg zu veraendert.
                                Es wird die Meldung "Der Vorbeleg wurde zum Buchen nicht gefunden (im Archiv?)! (Zurck)" ausgegeben
                                und die Verarbeitung abgebrochen.
          21.05.08 WINIFW:    Selektionen mit +/- implementiert. Eingabe ueber die Maske
                   FAKT_MNU:  Menuepunkte "Textverarbeitung anmelden" und "Benutzerprogramme anmelden" entfernt.
          26.05.08 PRGLOAD:   Kommando DocumentEdit() erweitert.
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              Es kann nun auch fuer Produktionen angewendet werden.

! STRLIB: strchrNULL() aktiviert.

                   TOBITFW:   Emaileingang mit mehr als 1000 CC Eintraegen beruecksichtigt.
          02.06.08 EXTEMUC:   Den Druckerpraefix "HTM:" auch in der klassischen IFW-Version aktiviert.
                              Damit kann eine Druckausgabe direkt ueber einen internen HTML-Druck erfolgen.
          03.06.08 FFCPSHOP:  Abrechnungsmodul fuer Mietvertraege vom Copyshop fuer die Windowsversion angepasst.
                   FAKTMAIN:  Anzeige der Fehlermeldung "Die Seriennummer passt nicht zum System" beim IFW-Start im Windowsmodus korrigiert.
      432 06.06.08 API_MFRM:  Das Hauptmenue wird nicht mehr zwischendruch waehrend einer Funktionsverarbeitung (z.B. Mietabrechnungsmodus
                              oder Tastendruck waehrend einer doIdle - operation) geoeffnet.
          09.06.08 FFPROD3:   Bei Produktionsanlage von Auftraegen wird die Verweilzeit bei der ersten Ebene korrekt beruecksichtigt.
      433 11.06.08 API_MFRM:  Drag und Drop nur noch mit Docustore moeglich
                              Bei fehlendem Modul Terminkalender sind auch die Menuepunkte inaktiv.
                   EXTEMUC:   Windowsdruck auf Standarddrucker mit mehr als 31 Zeichen Namenslaenge korrigiert.
                              Speichern eines Druckersetups fuer Drucker mit mehr als 31 Zeichen korrigiert.

! 17.06.08 FFBDEPRG: Erster IFW-PHP Datenserver zum Testen aktiviert.

          18.06.08 WINIFW:    Der Terminkalender wird beim Bearbeiten vom IFW aus automatisch aktuallisiert

! API_REQ: Der Kalender auf dem Datumsfeld bleibt jetzt immer ueber der EingabemaskeFenster zur Datenerfassung offen.

          25.06.08 API_MSK:   GDI-Ausdrucken koennen jetzt wieder als RTF-Datei gespeichert werden.
      434 27.06.08 API_MSK:   -Fliesstextfelder mit horizontalen Trennzeichen in der Beschriftung koennen jetzt korrekt eingegeben werden
                              -Initiale Layoutberechnung in den Untermasken korrigiert.
                              -Bei der Belegbearbeitung bleibt nach ESC -> Verlassen -> Nein die Loeschtaste in der Positionsliste aktiv.
                   FFVERT:    In der Windowsversion den Menuepunkt "Vertreterabrechnung" aktiviert.
          27.06.08 API_MSK:   Die Ersatzartikelauswahl geht jetzt in der Windowsversion korrekt.
      435 30.06.08 COMSOCK:   Aktivierung des externen IFW-Host Modus korrigiert.
          01.07.08 FFVERK:    Im Verkauf bei den Offenen Posten wird jetzt bei einem Storno der Betrag 
                              beim Kundenumsatz immer in den Stornomonat gebucht.
                   FAKTINI:   Neuer Schalter in der FAKT.INI in der Sektion [Verkauf]:
                              ;StornoDatumEingeben; Wert 0/1, Default 0.
                              ;Mit dem Wert 1 wird beim Stornieren einer Rechnung nach dem Stornodatum gefragt.
                              ;Mit dem Wert 0 wird das aktuelle Datum als Stornodatum verwendet.
                   FAKTINI:   Neuer Schalter in der FAKT.INI in der Sektion [System]:
                              ;DefaultLoginClassic: Wert 0/1. Default 0.
                              ;Wird die IFW-Windows Version das erste mal an einem Arbeitsplatz aufgerufen,
                              ;so wird der Windowslogin verwendet.
                              ;Mit dem Wert 1 wird beim erstmaligen Aufruf der klassische Login verwendet.
          02.07.08 FAKTINI:   Neuer Schalter in der FAKT.INI in der Sektion [FIBU]:
                              ;BuchungsstapelBelegeVorDatumMelden: Wert 0/1. Default 0
                              ;Bei der FIBU-Stapelerzeugung (Belege zum Buchungstapel) kann eine Meldung von nicht uebertragenen Belegen 
                              ;vor der eingegebenen Uebertragungszeitraum aktiviert werden:
                              ;Mit dem Wert 0 werden keine Belege gemeldet.
                              ;Mit dem Wert 1 werden nicht uebertragene Belege vor dem angegebenen Zeitraum gemeldet. Die
                              ;betroffenen Belege sind dann in der Verbindlichkeitenliste oder den Offenen Posten Liste selektiert.
                   FFEINK:    Beim Schreiben einer Bestellung mit Bezug zu einer Abrufbestellung wird immer der Preis aus der
                              Abrufbestellung uebernommen, unabhaengig davon ob einen Einkaufpreisstaffel zu dem Lieferanten vorhanden ist.
                              Zusaetzlich findet eine Pruefung der Artikelnummer in der Bestellung zur Abrufbestellung statt. Weicht sie ab, so
                              wird der Hinweis "Hinweis: Die Artikelnummer ist ungleich der Abrufbestellung. (Weiter)" ausgegeben.
                   API_MSK:   Optik der Masken in der Windowsversion verbessert.
                              Kurze Eingabefelder werden jetzt optisch passender nach rechts oder links erweitert.
                              Dynamische Hoehenberechnung beim Zoomen der Maske um ein Pixel korrigiert.
                              Doppelpunkte in der Beschriftung entfernt.
          03.07.08 DFOBJ:     Bei Artikel in Bestelliste abrufen kam es bei der Windowsversion bei der Auswahl mehrerer Lieferanten zu einem Fehler (-219)
                              da die Datenbank nicht geoeffnet war. Fehler beseitigt.
          07.07.08 PRGLOAD2:  IFW-PHP Datenserver erweitert
          08.07.08 PRGLOAD2:  IFW-PHP Datenserver erweitert

! ifwc.dsw: VS_VERSION_INFO Programmversionsangaben auf 2.1-13 erweitert. 436 14.07.08 FFPROD2: Bei Verwendung von Makro .$68 beim Produktionsabschluss, konnte u.U. die eingegebene Seriennummer nicht gespeichert werden. Problem beseitigt.

          15.07.08 API_MFRM:  HTML-Druck gerichtet. Bis zu X (z.Z. 32) Druckjobs parallel. Kopiern und loeschen der Dateien zu temporaeren Dateinamen.
                              Druckdurchlauf des Printertemplats mit window.close() vervollstaendigt.
                   API_REQ:   Offene modale Requester werden jetzt in der API registriert und beim Forcusverlauf beruecksichtigt.
          16.07.08 DFLIB:     Bei Schleifenzaehler ueber selektierte Eintraege wird als Maximalwert die Selektierte Menge angegeben.
                   DFPRN:     Schleifenzaehler bei selektiertem Belegdruck auf HTM aktiviert.
                   HTMLVIEW:  Beleibt ein HTM Druck haengen, gibt es nach 2 Minuten einen Timeout und der Vorgang wird geschlossen.

437 16.07.08 FFPROD2: Beim Produktion-Lagermaterialersatz wird der Ersatz von Positionen die hergestellt werden (K-K) zwangsweise unterbunden.

          17.07.08 MAILAPI:   Mail API implementiert
          18.07.08 API_MFRM:  HTML-Druck mit direktem Mailversand implementiert.

438 22.07.08 FFARTBCH: Beim Verbuchen wird zuvor zusaetzlich der Status A im TTS-Lauf geprueft. Es der Beleg bereits als verbucht gekennzeichnet, so wird

                              keine Verbuchung vorgenommen. In Fall einer Kollision wird im Benutzer Logbuch eine "DBo:" - Meldung eingetragen.
          23.07.08 API_MSK:   Beim Bearbeiten eines Feldes mit der Taste DEL oder mit einem Rechtsklick und den Mausfunktionen wird jetzt der Speicherknopf sofort aktiviert.
          24.07.08 API_MSK:   Die Fliesstextfenster werden jetzt beim Betreten mit einer Pfeiltaste immer zum Editieren aktiviert. Nur bei der Taste RETURN erfolgt
                              keine Aktivierung.
                   DFIMP:     Der Import verfuegt in der Windosversion jetzt ueber einen Zaehlrequester. Er wird bei Einlesevorgaenge >1 Sekunde geoeffnet.
                   PRGLOAD:   Kommando ImportFile erweitert:
                              Modus 512 (~IMPORT_VIEWCNTREQUEST)
                                Die Anzeige des Zaehlrequests in der Windowsversion wird unterdrueckt.
                   PRGLOAD:   Kommando ImportFile erweitert:
                              Ein Abbruch des Imports fuert nicht mehr zu einer Fehlermeldung im Makro. Er kann jetzt mit SetAbort() erkannt und behandelt werden.
                   API_MSK:   Im Kontextmenue in der Windowsversion sind die Favoriten in den Untermenuepunkten (Alle Eintraeg) immer abgeschaltet.
                              Es sind nur noch die Favoriten in der ersten Menueebene aktiv.
                   API_MSK:   Im Kontextmenue kann jetzt mit der Leerzeichentaste auf "Funktionen", "Drucken/Ausgabe" und "Belegausgabe" direkt das Menue zum Bearbeiten goeffnet werden.
                   DFPDF:     In den Dateianhaengen kann jetzt ein Auswahlfeld auf die Kennzeichen gesetzt werden. Es wird der Dateiname INFODAT/xxxxxxAX.msu verwendet.
          25.07.08 COMCON:    IFW-PHP Datenserver als Background-Funktion integriert.
                   FFBDE2:    BDE-Logbuch erweitert. Funktionen fuer neue BDE-Logbuch Felder eingebaut.
          28.07.08 API_MSK:   Verwaltung eines Hauptmenuepunktes "Extension1". Der Menuepunkt 0x9 wird dort plaziert falls vorhanden.

439 30.07.08 FFREPARA: Die Informationsbuchungen bei den Reparaturruecksendungen erweitert.

                              Im Modus "ReparaturEigengeraetGehtInGebrauch=0" wird jetzt in einem Informationsfeld in der Artikel Warenbesands- und Bedarfszahlenmaske unter "rckEigen"
                              die Menge der zurueckgesendeten Eingengeraete separat gefuehrt.
                              Im Modus "ReparaturEigengeraetGehtInGebrauch=1" wird jetzt die zurueckgesendete Menge ohne Reparaturauftragsbezug einer Reparaturannahme korrekt
                              in Gebrauch gebucht.
          31.07.08 API_MSK:   Die Fliesstextfenster werden jetzt mit den Pfeiltasten Auf und Ab nach oben und unten verlassen.
          01.08.08 API_MSK:   Taste DELETE doppeltes Loeschen in den Eingabefeldern entfernt.
          05.08.08 API_MFRM:  Beim HTML Druck auf PDF wird die Ueberwachung zur Aufnahme der PDF-Dateien nur noch bei Druckern mit dem Kennzeichen "P" in der Druckerliste angewandt.
          06.08.08 DFPRN:     In der Windowsversion Strg-Druck zur Druckerauswahl aktiviert.

440 07.08.08 TERMINPL: Das Terminplanmakro fuer den Davidabgleich wird jetzt auch im Windows-IFW aufgerufen

                   LISTVWEX:  Neue Textattributsoption "fixer Font". Damit wird die Spalte mit dem Ficen Font "Curier New" angezeigt.
                   VIDF:      In der IFW-Tabellenansicht wird jetzt im Personalwesen die Monatsbelegung mit einem fixen Font angezeit.
                   API_WIN:   IFW-Tabellen Formatierungsattribut erweitert um 0x8000 fuer eine fixe Fontausgabe (Curier New)
                              und 0x1000 fuer Zahlen <0 rot anzeigen
                              Attribute im Parameterfeld:
                               0x0001     1 -> nicht anzeigen
                               0x0002     2 -> Fettdruck
                               0x0004     4 -> Euro-Zeichen anhaengen
                               0x0008     8 -> %-Zeichen anhaengen
                               0x0010    16 -> Text Rot
                               0x0020    32 -> Text Gruen
                               0x0040    64 -> Text Blau
                               0x0100   256 -> Hintergrund Rot
                               0x0200   512 -> Hintergrund Gruen
                               0x0400  1024 -> Hintergrund Blau
                               0x8000 32768 -> fixer Font
          08.08.08 DFMBIGG:   Beim Multibrowser (Alle Vorgaenge zum Auftrag in der Textversion) konnte es bei Bildschirmueberbreite zu einer Schutzverletzung kommen.
                              Problem beseitigt.
                   PROFILER:  Neue Klasse CFuncCallManager zur Anzeige der aktuellen Programmposition bei einer Schutzverletzung.
                              Aufnahme der Liste in das Errorlog und Anzeige bei einer Schutzverletzung
          25.08.08 API_MFRM:  -Beim HTML Druck wird jetzt immer der Defaultdrucker zurueckgesetzt, auch bei einem Scriptfehler.
                              -Beim HTML Druck wird jetzt die Option fuer den Hintergrunddruck von Bilder und Farbe immer aktiviert, auch
                               wenn der Schluessel in der Registrierung noch nicht existiert.
          27.08.08 HTMLVIEW:  -Beim HTML Druck sind die Druckknoepfe inaktiv solange der Ausdruck laeuft.
          01.09.08 PRGLOAD2:  In der FAKT.FRC Datei kann jetzt als letzter Parameter das Icon der Datenbank angegeben werden.

441 02.09.08 BRECORD: Anzahl moeglicher Indexsegmente von 4 auf 6 erhoeht

                   API_WIN:   Die Liste der Belegpositionen wird mit den Flex-Feldern immer auf Fensterbreite optimiert, wenn sie zu breit ist.
          03.09.08 MUEHLEN:   Die Berechnung der Rest-Kontraktmengen bei Kontrakten die im naechten Jahr liegen implementiert.
                              Bisher wurden nur Rest-Kontraktmengen bei Kontrakten aus dem aktuellen oder dem vergangenem Jahr berechnet.
                   ITBPRG:    Das Kommando ForEachFromTo() wurde erweitert.
                              Als 6er optionaler Parameter kann jetzt ein Funktionsmodus mitgegeben werden
                                ForEachFromTo( INT $rootItem, STRING $strRoot, INT $cmpItem, STRING $strFrom, STRING $strTo);
                                ForEachFromTo( INT $rootItem, STRING $strRoot, INT $cmpItem, STRING $strFrom, STRING $strTo, INT $iMode);
                              $iMode:
                               0 -> Funktion wie bisher
                               1 -> die Eintraege werden in umgekehrter Reihenfolge zurueckgegeben. Es ist darauf zu achten dass $strFrom groesser als $strTo sein muss.
          04.09.08 DFED3LIB:  Extendet Fenster vom Typ MAI_TYPE_EXTWINDOW fuehren jetzt immer auf ein Unterfenster xxxxxxFn, auch wenn ein Datenbankbezug im Feld enthalten ist.
                   VIDF:      Spalten mit Bruttowerte in der IFW-Uebersicht werden jetzt korrekt angezeigt.

! WINLIB: get_codemai() unterstuetz jetzt auch Werte >0x7FFF

          05.09.08 WINIFW:    Berechnung in der Brutto-Eingabehilfe aktiviert.
          06.09.08 API_MFRM:  IFW-Kalenderfunktionen fuer HTML erweitert:
                                SetTableMode( winHandle, mode);  mode 1:Day; 2:Week; 3:6-Weeks; +16 fuer Plantafelmodus
                              Mit dem zusaetzlichen Moduswert 16 kann auf den Plantafelmodus umgeschaltet werden.
                              Dabei werden bis zu 8 Personen in maximal 6 Zeilen Vertikal angezeigt. Die Verteilung
                              der Zeiten findet innerhalb der 6 Zeilen pro Person statt (Zeilen ab 0,4,8,12,15,20 Uhr).
                              Eine Zeile umfasst 4 Stunden.
          09.09.08 API_MSK:   Im Tooltip der Spalten in der Datenbankliste wird jetzt die Sortierung und die gesetzten Filter der Spalte angezeigt.
                   BRECLIB2:  Pagesize beim Erstellen einer Btrieve-Datenbank von 2048 auf 2560 erhoeht.

442 09.09.08 BRECLIB2: Die Pagesize beim Erstellen einer Btrieve-Datenbank wird nun anhand einer Tabelle zwischen 2048 und 4096 ermittelt.

                   DFIMP:     Mit dem @Ix; Parameter kann ein Sortierindex von 1-15 angegeben werden (Bisher mit @D von 0-9).
                              Der @I Parameter hat vorrang vor dem @D Index.
          10.09.08 TERMINPL:  Scrollen im HTML-Kalender korrigiert.
                   WINIFW:    Mit dem Wert 0x01000000 kann die Textfarbe einer Zeile auf Fett umgestellt werden.
          11.09.08 VIDF:      Bruttoausgabe in der IFW-Uebersicht gehen jetzt auch in Nachladefelder
          15.09.08 API_MSK:   Direkt nebeneinanderliegende Eingabefelder ohne Beschriftungstext ueberlappen sich nicht mehr.
                   API_MSK:   Beim Betreten einer bereits geoeffneten Maske (Belegbearbeitung) wird der angezeigte Inhalt incl. Liste aktuallisiert.
          16.09.08 VIDF:      Bei eingefaerbten Zeilen in der IFW-Tabelle wird nicht mehr automatisch der Fettdruck aktiviert.

443 16.09.08 PRGLOAD: Neues Kommando SaveUserParameter

                              SaveUserParameter( "Paramter");
                              Das Kommando speichert im aktuell eingeloggten Benutzer im Feld "Parameter" in seiner Benutzermaske den angegebenen
                              Text aus "Parameter" ab.
                   PRGLOAD:   Neues Kommando CallMailAPI
                              CallMailAPI( Modus, Empfaenger, Betreff, Text, Dateien);
                              Modus 1 -> Versand einer leeren neuen Mail
                              Modus 2 -> Versand einer neuen Mail mit Vorgabedaten
                              Modus 3 -> Versand einer neuen Mail mit Daten ohne Requester
                              Empfaenger zur Zeit Eindeutige Emailadresse
                              Betreff und Text wie Normal, ANSI
                              Dateien mit ; getrennt

444 19.09.08 BDEPORT: Es werden jetzt auch Barcodes von neueren Terminals erkannt (Kanal 1 → Ziffer 3 statt Ziffer 1) 445 25.09.08 API_MSK: Taschenrechner auf der Maske mit Datenuebernahme aktiviert.

          26.09.08 HTMLVIEW:  Beim Drucken werden in der HTML-Vorschau dir Icons fuer den Druck und Druckvorschau nach Ablauf des Timeouts (2 Sekunden)
                              auch bei haengendem Printertemplatescrip aktiv.
                   STDMSK:    Bei der Druckerauswahl unter Windows wird die Druckeranschlusseinstellung korrekt mit runden Klammern angezeigt.

! FFIBU21: Die FIBU-Jahresuebertragung ist jetzt in einen TTS-Lauf gekapselt. 446 26.09.08 FFFIRUMS: Der Jahresabschluss ist jetzt in einen TTS-Lauf gekapselt.

                   FAKTMAIN:  Initialisierungsmehrwertssteuersatz von 16% auf 19% umgestellt
          01.10.08 FAKTINI:   Neuer Schalter in der FAKT.INI in der Sektion [FIBU]:
                              ;FIBU_DATEVExportKennzeichnetImmerOp; Wert 0/1, Default 0.
                              ;Der Schalter hat nur eine Bedeutung wenn das IFW-Modul FIBU installiert ist:
                              ;Keine IFW-FIBU installiert:
                              ;Beim Schreiben der DATEV-Diskette erfolgt immer eine Kennzeichnung der OP's.
                              ;IFW-FIBU installiert:
                              ;Mit dem Wert 0 erfolgt keine Kennzeichnung der OP's beim Schreiben der DATEV-Diskette.
                              ;Mit dem Wert 1 erfolgt immer eine Kennzeichnung der OP's beim Schreiben der DATEV-Diskette.
                   FFBDE2:    Beim Start vom BDE-Taskmanager werden jetzt alle 'A' Tasks aus der Taskliste auf dem Ersten Terminal automatisch aktiviert.
                              Tasks mit 'AT' werden nicht aktiviert, um durch einen versehenlich doppelt gestarteten Taskmanager keine Stoerung auf dem echten
                              Taskmanager zu erzeugen.
          02.10.08 API_MFRM:  Diverse IFW-Kommandos fuer HTML aktiviert:
                                IFWSerialNumber Die Seriennummer der Installation wird ausgegeben
                                MandantNumber   Die Mandantennummer wird ausgegeben
                   API_REQ:   Der Abbruchknopf auf Zaehlrequestern ist jetzt anklickbar.
                   EXTEMUC:   Beim IFW mit Mandanten ist jetzt im Loginfenster ein Eingabefeld fuer den Mandant vorhanden.

447 02.10.08 FFBDE: Neuer Schalter in der FAKT.INI in der Sektion [BDE]:

                              ;BDEScannerImmerAktiv: Wert 0/1. Default 0
                              ;Mit dem Wert 0 wird an den BDE Terminals der Scanner immer nur fuer eine Leseung aktiviert.
                              ;Mit dem Wert 1 wird der Scanner fuer beliebig viele Lesungen aktiviert.
                              ;BDEScannerImmerAktiv=0

448 02.10.08 FFBDE: Das Loeschen des seriellen Puffers sendet jetzt keine Aktivierungstelegramme mehr an das BCS-Terminal

          03.10.08 FFLAGER:   Beim Lager kopieren werden keine Positionen mehr mit kopiert.
                   FFWEG:     Modul Lieferanten-Konsignationslagerverwaltung implementiert.

449 07.10.08 FFBDE: Neuer Schalter in der FAKT.INI in der Sektion [BDE]:

                              ;BDEChipkarteneingabeZuruecksetzen: Wert 0/1. Default 0
                              ;Mit dem Wert 0 werden keine Chipkarteneingaben am BDE-Terminal geloescht
                              ;Mit dem Wert 1 werden keine Chipkarteneingaben am BDE-Terminal mit dem Kommando ClrSerBuff ebenfalls geloescht.
                              ;Dies verhindert dass bei beruehrungslosen Lesern unmittelbar Kommen/Gehen nacheinander ausgeloest wird.
          09.10.08 DOCUSTORE: Der Dateistamm und die Dateiablage wird jetzt Mandantenunabhaengig zentral gefuehrt.
                              Dateien, die zentral gefuehrt werden (z.B. Nachrichten) erhalten auch ein zentral gefuehrte Link-Datenbank.
          10.10.08 PHP:       Erweiterung der PHP-Serverkommandos:
                              13: Makro ausfuehren ExecuteMakroFile
                                  Senden   : 13 executemakrofile dbHandle|mode|makroFileName|gotoLabel[[[[|Vt0[|Vt1]|Vt2]|Vt3]|Vt4]...
                                  Empfangen: 13 ergebnis|rueckgabetextVt0
                                  Hinweis  : ergebnis  0: Datei korrekt ausgefuehrt, rueckgabetext enthaelt Variableninhalt Vt
                                                     !=0: Fehlerwert des Makros, rueckgabetext leer
                              14: Daten abrufen ForEachSelected
                                  Senden   : 14 getrecordselected dbHandle|limit|prevRecHandle[[[[|item1[|item2]|item3]|item4]|item5]...
                                  Empfangen: 14 anzahlRecords|anzahlDatenProRecord| [recHandle|item1|...] * anzahlRecords
          13.10.08 FFLAGBCH:  Bei Lagerbuchungen mit Dateianhaengen kommt keine Fehlermeldung beim Verbuchen mehr.
                   FAKTFNC:   Die Hilfeerstellung meldet jetzt keine fehlende Resource res194, res195 und res196 mehr.
          14.10.08 STDPRJ:    Beim Einloggen wird jetzt vor der Begruessungsmeldung das Benutzerlogbuch aktiviert.
          16.10.08 PHP:       Erweiterung der PHP-Serverkommandos:
                              15: neuen Datensatz laden (zum neu speichern)
                                  Senden   : 15 dbHandle|itemid|itemval
                                  Empfangen: 15 DatensatzHandle
                                  Hinweis  : loadnewrecord      dbHandle
                                             return recHandle
                              16: Das Datenbank TTS System starten
                                  Senden   : 16 -
                                  Empfangen: 16 -
                                  Hinweis    beginTTS
                                             Es wird intern gezaehlt wie oft beginTTS gesendet wird. Nur beim ersten Aufruf erfolgt
                                             ein TTS-Start. Es muessen immer genauso viele endTTS Aufrufe erfolgen.
                              17: Das Datenbank TTS System erfolgreich beenden, alle Aenderungen speichern.
                                  Senden   : 17 -
                                  Empfangen: 17 -
                                             endTTS
                                             Es wird intern gezaehlt wie oft endTTS gesendet wird. Nur bei der gleichen Anzahl Aufrufe
                                             von endTTS wie beginTTS erfolgt ein TTS-Ende.
                                             Es muessen immer genauso viele endTTS Aufrufe erfolgen wie zuvor beginTTS.
                              18: Das Datenbank TTS System abbrechen, alle Aenderungen verwerfen. Den internen Zaehler auf 0 setzten.
                                  Senden   : 18 -
                                  Empfangen: 18 -
                                             abortTTS
                                             Bricht den TTS-Lauf ab. Der interne Zaehler wird auf 0 gesetzt.
                              19: Das Datenbank TTS System falls aktiv abbrechen und alle Aenderungen verwerfen, ansonsten keine TTS-Funktion. Den internen Zaehler auf 0 setzten.
                                  Senden   : 19 -
                                  Empfangen: 19 -
                                             clrTTS
                              20: mehrere Feldinhalt lesen
                                  Senden   : 19 dbHandle|itemid[[[[[[|itemid2]|itemid3]|itemid4]|itemid5]|itemid6]
                                  Empfangen: 19 Feldinhalt als String
                                  Hinweis  : getitemext          dbHandle|itemid[[[[[[|itemid2]|itemid3]|itemid4]|itemid5]|itemid6]
                                                                 itemid mit Fehlermeldung: Cn mit n als Feldnummer oder Cn[index]
                                                                 itemid ohne Fehlermeldung: cn mit n als Feldnummer oder cn[index]
                                                                 return itemval[[[[[[|itemval2]|itemval3]|itemval4]|itemval5]|itemval6]
                              21: mehrere Feldinhalt setzen
                                  Senden   : 20 dbHandle|itemid|itemval[[[[[[|itemid2|itemvalue2]|itemid3|itemvalue3]|itemid4|itemvalue4]|itemid5|itemvalue5]|itemid6|itemvalue6]
                                  Empfangen: 20
                                  Hinweis  : setitem             dbHandle|itemid|itemval[[[[[[|itemid2|itemvalue2]|itemid3|itemvalue3]|itemid4|itemvalue4]|itemid5|itemvalue5]|itemid6|itemvalue6]
                                                                 itemid mit Fehlermeldung: Cn mit n als Feldnummer oder Cn[index]
                                                                 itemid ohne Fehlermeldung: cn mit n als Feldnummer oder cn[index]
                                                                 return -
                   WINIFW:    Das Suchen in gefilterten Liste funktioniert jetzt korrekt.

450 17.10.08 FFPREIS: Das Modul IFW Staffel-/Sonderpreise im Verkauf erweitert. Es koennen jetzt

                              bis zu 7 Staffelpreise (plus Einzelpreis) gefuehrt werden. Bisher waren nur 3 Staffelpreise
                              (plus Einzelpreis) verfuegbar.
          18.10.08 PHP:       Erweiterung der PHP-Serverkommandos:
                              22: Datensatz ueber den RecordHandle laden
                                  Senden   : 22 recHandle
                                  Empfangen: 22 -
                                  Hinweis  : loadrecordbyhandle  recHandle
                                                                 return -
                   PRGLOAD:   Kommando DoHtmlRequest() erweitert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                              Mit Modus koennen verschiedene Optionen geschaltet werden:
                                1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                              256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
          19.10.08 FFPROD2:   Beim Produktionstermin/Menge aendern wird das Kennzeichen 'V' geloescht (FLS-Next Exportkennzeichen).
                   PRGLOAD:   Neues Kommando AssignStoreToDocument
                              AssignStoreToDocument( Modus);
                              Das Kommando ordnet den Waren auf einem Beleg die Entnahmelager zu.
                              Nur mit dem speziellen IFW-Modul "Lagersegmente" verfuegbar.
                              Modus:
                                 0 (0x0000) alle Laeger ersetzen
                                 1 (0x0001) nur noch nicht zugeordnete Laeger setzen, ansonsten alle Laeger ersetzen
                                 2 (0x0002) Meldungen anzeigen (der Modus 2 ist zur Zeit inaktiv, es sind noch keine Meldungen vorhanden)
                                 4 (0x0004) Beleg Aenderung: Altemenge beruecksichtigen
                              Hinweis:
                                Die Ausgangsdatei muss ein temporaerer Beleg sein.
                                Sie kann vom Belegkopf oder von den Belegpositionen aus aufgerufen werden.
          20.10.08 API_MFRM:  Diverse IFW-Kommandos fuer HTML aktiviert:
                                FormatDate( date) -> Der eingegebene Wert wird als Datum formatiert
                                  ret: "0;formatedDate;dowString" ok, "1;originalDate;" invalid, "2;formatedDate;dowString" valid, but out of range, "3:formatedDate;dowString" valid, but past
                                FormatTime( time) -> Der eingegebene Wert wird als Zeit formatiert
                                  ret: "0" ok, "1" invalid
          21.10.08 VIDF:      Spalten mit Bruttowerte in der IFW-Uebersicht korrigiert.
                   API_MFRM:  Diverse IFW-Kommandos fuer HTML aktiviert:
                                MessageBox( Text, Buttons);
                              Text ist der Angezeigte Text.
                              Buttons sind die verwendeteten Tasten. Die Tasten werten mit ; getrennt.
                              Der erste Buchstabe der Taste muss Grossgeschrieben sein und dient als Hotkey. Der Hotkey wird als
                              Rueckgabewert zurueckgegeben.
                   PRGLOAD:   Kommando DoHtmlRequest() erweitert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                              Mit Modus koennen verschiedene Optionen geschaltet werden:
                                1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                                2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                                4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                              256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                              Mit Titel kann ein Fenstertitel angegeben werden.
                              Mit IconId kann ein Icon des Fensters angegeben werden.
                              Mit '?' angehaengte Parameter an der URL der HtmlDatei werden jetzt korrekt an den internen
                              Parameter pinID angehaengt.
                   VIDF:      IFW-Datenbanktabellen mit Nachladespalten aus 2 verschiedenen Datenbankverbindungen werden jetzt
                              schneller dargestellt.

451 22.10.08 FAKTMAIN: -Beim Start des IFW's wird das Arbeitsverzeichnis geprueft. Bei einem UNC Pfad oder fehlendem "sysdat/user.msu"

                               wird eine Meldung ausgegeben und das IFW nicht gestartet.
                              -Der Windows Splash-Screen wird bei fehlender Html-Datei nicht angezeigt.
                   FAKTEDIT:  Beim Speichern von Belegeaenderungen wird geprueft ob der Beleg inzwischen von anderen Benutzern veraendert wurde.
                              Bei einer Benutzerkollision wird das Speichern unterbunden.
                              Wird durch ein Systemvorgang ein Kennzeichen im Statusfeld gesetzt (z.B. Faxrueckmeldung) so fuehrt das
                              bisher zu einer Benutzerkollision.
                              Aus dieser Pruefung wurden alle Kennzeichenaenderungen des Statusfelds entfernt, bis auf die System-Kennzeichen A,E und S
                              (A->Buchungskennzeichen, E->Abschlussstatus, S->Stornostatus).
                   BRAIN:     Den Ladevorgang und die Volltextsuche bei Docustore beschleunigt.
                   API_MFRM:  Diverse IFW-Kommandos fuer HTML aktiviert:
                                MandantBackgroundColor  Der beim Mandant hinterlegte Farbwert wird in der Form #rrggbb ausgegeben;
          23.10.08 WINIFW:    Beim Aufbau der Windowsmaske werden keine Feldinhalte mehr bestueckt.
                              Beim Updaten der Maske werden jetzt auch Felder mit einem graphischen Strich - im Beschriftungstext upgedatete.
          24.10.08 WINIFW:    Den HTML-Druck optimiert.
          25.10.08 FFRECH:    Bei Bruttobelegen wird der Nettobetrag und der MwSt-Betrag mit 3 Nachkommastellen auf der Maske dargestellt.
                   PRGLOAD:   Kommando DocumentEdit() erweitert.
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              VerarbeitungsModus:
                               1: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt.
                   FFARTBCH:  Beim Beleg Speichern wird geprueft ob die Bruttokennung der Positionen mit dem Belegkopf ueberein stimmt.
          27.10.08 PRNLIB:    Die Druckausgabe [B wurde ueberarbeitet. Es werden jetzt Feldabhaengig die anzahl Nachkommastellen ausgegeben.
                              Zusaetzlich sind jetzt auch die Zahlenformatierungsoptionen z,n und k verfuegbar.
                   PRNLIB3:   Neue Druckvorlagenkommandos [.Document208<] und [.Document209<]
                              Die Kommados geben den Nettowert und den Mehrwertssteuerwert eines Ausgangsbelegs (z.B. Rechnung) aus.
                              Die Werte entsprechen in der Regel den Werten aus dem Feld C208 und C209.
                              Wird eine Bruttorechnung (PG 0b) geschrieben und sind Produkte beider Mehrwersteuerklassen vorhanden,
                              kann durch die Einzelgerundete Ausgabe der Mehrwertssteuerbemessungsgrundlagen und Steueranteile ein
                              Cent-Differenz zwischen der Summe der genau gerechneten Mehrwertssteueranteilen und der Summe der gerundeten
                              Anteilen auftreten. Um auf dem Rechnungsdruck die Summe der gerundeten Anteile auszuweisen kann fuer den
                              Nettowert anstatt das Feld [C208<] der Wert aus [.Document208<] ausgegeben werden. Fuer die Steuer
                              kann das Feld [C209<] der Wert aus [.Document209<] ausgegeben werden.
                              Folgende Voraussetzungen muessen erfuellt sein damit die Werte anderst ausgewiesen werden als die Originalwerte
                              aus C208 und C209:
                              - Auf dem Beleg muss das Feld 200, 201, 208, 209 und 210 vorhanden sein. Es wird ein Fehler ausgegeben.
                              - Es muss ein Bruttobeleg sein (Zeichen 'b' in der Preisgruppe enthalten).
                              - Es muessen beide Steuerarten auf dem Beleg vorhanden sein (Feld 200 und 201 muessen ungleich 0.0 sein).
                   VIDF:      Das Umschalten von grossen selektierten Datenmengen mit TAB beschleunigt.
                   STDPRJ:    Bei neu angelegten Mandanten wurde die Attachmentliste der Nachrichten nicht mehr gefunden. Problem beseitigt.
          29.10.08 FFBELPRU:  Datenimport von Rechnungseingang automatisiert mit "??" als Status.

452 29.10.08 DOCUSTOREIFW Programmerweiterung Docustore: Dateianhaenge an Belege verfuegen jetzt auch ueber ein Archiv. Beim archivieren eines Belegs werden die Links

                              fuer die Dateianhaenge auch in die Archivdatei uebertragen.
                   DFED3LIB:  Der Exclude des letzten Datensatzes beim Archivieren ist in Verbindung mit der Option "G" bei den 
                              Datenfileparametern nicht mehr vorhanden. Es koennen jetzt alle Datensaetze archiviert werden, da mit
                              der Option 'G' bei der Nummernneuvergabe das Archiv mit geprueft wird.
                   PRNPRM:    Beim Aufruf einer Druckvorlage werden jetzt die Vt-Variablen Vt10 bis Vt31 korrekt geloescht.
          31.10.08 FFBDE:     Neuer Schalter in der FAKT.INI in der Sektion [BDE]:
                              ;BDETaskLogbuchSchreiben: Wert 0/1. Default 1
                              ;Mit dem Wert 0 werden keine BDE-Vorgaenge 11,12 und 14 im BDE-Logbuch mitgeschrieben.
                              ;Mit dem Wert 1 werden auch die Task-Wechselvorgaenge im BDE-Logbuch mitgeschrieben.
          01.11.08 ITBPRG:    String.strtrim() aktiviert.
                              Damit werden alle fuehrenden und folgenden Leerzeichen und Tabs entfernt.
                   ITBPRG:    Die Realloc-Groesse des Speicherarrays von 100 auf 10000 erhoeht.
          02.11.08 VIDF:      Die Listendarstellung der IFW-Tabellen fuer grosse Liste beschleunigt.
          03.11.08 ITBPRG:    Ein Abbruch der IFW-Tabellengenerierung gibt keinen Fehlermeldung mehr aus.
                              Beim Expandieren oder Verdichten in der IFW-Tabelle wird ein Zaehler in der Statuszeile angezeigt.
          04.11.08 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Docustore":
                                PDFVerzeichnis: "Verzeichnis". Default "$/ablagepdf"
                                Mit diesem Wert wird gesteuert in welchem Verzeichnis die Dateien der PDF-Generierung erwartet werden.
                                In diesem Verzeichnis entstehen automatisch weitere Unterverzeichnisse mit dem Stationsname des Arbeitsplatzes.
                                Das IFW erwartet automatisch PDF-Dateien in diesem Verzeichnis.
                                Der PDF-Schreiber muss als Ausgabeverzeichnis diese Verzeichnis mit dem Stationsname als Unterverzeichnis erhalten.
                                Wird der Text "$\" am Anfang der Bezeichnung verwendet, so wird automatisch das IFW-Arbeitsverzeichnis
                                als Ursprungsverzeichnis eingesetzt. So ergibt die Standadeinstellung
                                "$/ablage" das Verzeichnis c:\ifw\ablage wenn das IFW auf dem Laufwerksbuchstaben c: liegt.
                                Sie koennen normale Slashs '/' als Verzeichnisangabe verwenden. Wenn Sie Backslashs '\' verwenden
                                so muessen Sie sie doppelt angeben "$/ablage" -> "$\\ablage".
                                Ein abschliesender Slash an der Verzeichnisangabe ist nicht notwendig, kann aber angegeben werden.
                                Der Verzeichnispfad wird erstellt, falls er noch nicht vorhanden ist.
                                PDFVerzeichnis="$/ablagepdf"
          05.11.08 FAKTMAIN:  Die beiden INI-Werte Docustore/Ablageverzeichnis und Docustore/PDFVerzeichnis werden beim Laden
                              optimiert. Dabei wird versucht evt. vorhandene Relativangaben mit "/../" aus dem Pfad durch Pfadaufloesung
                              zu entfernen.
                   PRGLOAD:   Neues Kommando ConvertIcsvToImportCsv
                              ConvertIcsvToImportCsv( Dateiname);
                                Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                   DFIMP:     Beim manuellen Importieren werden Quelldateiangaben mit %TEMP% oder "c:\temp\" automatisch auf den benutzerspezifischen
                              Pfad ergaenzt.
                   IFWTAB:    Groesse des Standardausdruckzeichensatztes etwas erhoeht (von Tahoma 8 auf Thaoma 9).

453 05.11.08 WINIFW: Der Menuepunkt Passwort veraendern ist jetzt in der Windowsversion verfuegbar.

                   IFWTAB:    Wird bei der Hintergrund-Zellenfarbe einer Zelle 0xFFFFFF als Farbwert eingegeben (Weiss - keine Farbaenderung),
                              wird am linken Rand der Zelle ein schwarzer senkrechter Trennbalken von 2 Pixel Breite angezeigt.
          07.11.08 DFFNC:     Es erfolgt jetzt eine strengere Ueberwachung der Ein- und Ausloggvorgaengen an einem Bildschirm, wenn mehrere
                              IFW-Sessions gleichzeitig an einem Bildschirm gestartet werden. In der Verbindungsliste gibt es
                              jetzt einen Zaehler fuer die Anzahl gleichzeitig gestarteten Sessions an einem Bildschirm.
                              Nach wie vor belegen mehrere Sessions am gleichen Bildschirm nur EINE IFW-Lizenz, egal wieviele Session an einem
                              Bildschirm gestartet werden. Nach wie vor gilt dies nicht fuer den ASP-Host des IFW's oder Windows Terminalsessions.
                   WINIFW:    "MyForm" in den Masken aktiviert.
                              Es koennen jetzt Felder vom Anwender markiert werden, die dann mit den Tasten Return, Tab, und Strg-Tab direkt durchlaufen werden.
                              So kann sich ein Benutzer die verwendeten Felder in einer Maske selbst definieren.
          10.11.08 DFPRMLIB:  Das Speichern von Benutzerprofilien im Verzeichnis IFW/USER aktiviert. Es wird eine Datei mit dem Namen userNNN.ini mit NNN 
                              als Benutzernummer gespeichert. In ihr wird pro Tabellenobjekt eine Sektion mit Werten gspeichert.
          11.11.08 FFFIBUDV:  In der Windowsversion wird jetzt beim Buchungsstapel erstellen aus Belegen eine Zaehler angezeigt.
                   FAKTMAIN:  Beim Speichern eines Belegs wird jetzt auch in der Windowsversion die Belegnummer sofort angezeigt.
          12.11.08 FFDISPO:   Systemmakro .$81 implementiert:
                                Spezialprogramm bei der automatischen Lieferscheinerstellung nach Erstellung und vor Verarbeitung des Lieferscheins.
                                Es wird das Temporaere Lieferscheinobjekt aufgerufen. MarkFile=Quelldatei
                                Mit einem Rueckgabewert == 0 wird weiter verabreitet, mit 1 wird die Verarbeitung abgebrochen.
                   PRGLOAD:   Neues Kommando ConvertIcsvToHtml
                              ConvertIcsvToHtml( Modus, QuellDateiname);
                              ConvertIcsvToHtml( Modus, QuellDateiname, ZielDateiname);
                                Das Kommando konvertiert eine IFW-Tabelle in eine HTML-Datei als Tabelle um.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Ist kein "ZielDateiname" angegeben, wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .htm erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                                Die HTML-Tabelle ist nur ein Extrakt mit eienr <TH>...</TH> Zeile und entsprechend
                                vielen <TD>...</TD> Zeilen. Sie besitzt kein <TABLE> - TAG oder sonstige weiter Angaben.
                                Die Ausgabe ist fuer eine Weiterverarbeitung in ein HTML-Dokument gedacht.
                              Modus:
                                0: Bisher keine Modis vorhanden

454 18.11.08 FFVERK: Schutzverletzung beim Bearbeiten eines Bemerkungstextes in der OP-Maske beseitigt.

                   WINIFW:    Bei Meldungen ohne Tastenvorgabe aber mit dem Text "...(TASTE)" oder "...(Abbruch)"
                              wird eine Taste angezeigt.
                              Die maximale Breite eines einzelenen Buttons ist jetzt beschraenkt.
          19.11.08 ITBPRG:    Neus Kommando GetRow()
                                BOOL GetRow();
                              Es wird versucht den Fokus auf die Ausgabezeile (RowArray) anhand des aktuellen Fokus (Key() -Werte) zu setzen.
                              Ist die Ausgabezeile noch nicht vorhanden wird der Wert FALSE zurueckgegeben. Ist die Zeile bereits vorhanden wird
                              der Wert TRUE zurueckgegeben.
                   ITBPRG:    Neus Kommando DoRow()
                                BOOL DoRow();
                              Diese Funktion wird durch ForEachChild() automatisch aufgerufen. Sie entspricht der Funktion von Do() das beim Kommando
                              ForEachFromTo() aufgerufen wird.
                              Mit einem Rueckgabewert TRUE wird die Schleife abgebrochen. Mit FALSE oder keinem Rueckgabewert laeuft die Iteration von
                              ForEachChild() weiter.
                   ITBPRG:    Neus Kommando ForEachChild()
                                ForEachChild();
                              Es werden alle Unterelemente der aktuellen Ausgabezeile ausgegeben.
                              Benutzen sie GetRow() um die gewuenschte Ausgabezeile zu aktivieren.
                              Fuer jedes gefundene Unterelement wird die Funktion DoRow() des zugeordneten Objektes (ROWDEF-Objekt) aufgerufen.
                              In DoRow() koennen dann die gewuenschten Operationen vorgenommen werden. Mit einem Rueckgabewert TRUE von DoRow() kann die
                              Iteration fruezeitig abgebrochen werden.
                              Mit dem Kommando ForEachChild() ist es moeglich bereits aufbereitete Daten nochmals Verarbeiten zu lassen. So koennen z.B.
                              Objekte nach Gruppensummen verdichtet werden, bei denen die Gruppensummen erst nach Ermittlung aller Objekte zur Verfuegung steht.
          20.11.08 DFFNC:     Beim Einloggen wird jetzt der letzte Zeitstempel geprueft. Ist er abgelaufen (>1 Std) wird Verbindunszaehler in der
                              Verbindungsliste des Rechnereintrags zurueckgesetzt.
                   FFBELPRU:  Bei der automatischen Rechnungserstellung der Tankstellenverwaltung wird eine anfallende Rechnungsgebuehr der ersten
                              Tankstelle der Rechnung zugeordnet.
                              Zusaetzlich wird das Kennzeichen K bei der automatischen Erstellung gesetzt.
          24.11.08 WINIFW:    Wenn beim Beleg schreiben ueber das Menue die gleiche Belegart zum Anschauen aufgerufen wird, wird jetzt eine separat Instanz der
                              Belegtabelle verwendet. Somit findet keine Kollision der Datenbanktabelleninstanzen statt.

455 25.11.08 ITBPRG: Bei der Umwandlung von FLOAT-Variablen in STRING-Variablen wird jetzt eine Rundung auf 14 stellige Mantisse vorgenommen. Damit

                              werden keine unnoetigen Nachkommastellen angezeigt.
                   FFLAGBCH:  Bei der Lagerumbuchung wird das Ziellager beim Abrufen eines Artikels nicht mehr veraendert.
          27.11.08 WINIFW:    Bei einem Suchlauf wird ein Requester mit einem Fortschrittsbalken angezeigt.
                   DFLOADZW:  Beim Zusammenfuehren von Belegen wird bei einem Abbruch der Meldebox der Beleg selbst nicht mehr leer geoeffnet.

456 27.11.08 DFEDLIB: Ein Neues Recht "Rearchivieren" eingefuegt, Symbol 'J'.

                              Damit kann das Reachivierungsrecht explizit vergeben werden. Das Archivierungsrecht 'I' beinhaltet automatisch das Rearchivierungsrecht.
          02.12.08 DFLIB:     Interne Funktion FNC_DELETE_LISTBEGIN erweitert: bei einem Rueckgabewert ungleich 0 erfolgt keine Listenloeschung.
          03.12.08 WINIFW:    Ein Abbruch der Zaehlbox bei einer Massenloeschung wirkt sich jetzt unmittelbar auf den Loeschvorgang aus.
                   PRGLOAD2:  Wird eine Variable als Parameter zu einer Funktion uebergeben und die Parameterangabe lautet "File:" oder "USER.ASC", so wird der
                              Dateiname automatisch auf das benutzerspezifische temporaere Verzeichnis verstellt wenn er "%TEMP%" oder "c:\temp" enthaelt.

457 03.12.08 PINBOARD: Bei den Nachrichten wird beim Aufrufen der Funktionen "Telefonnummer wählen", "Quix versenden", "eMail versenden" und "Nachricht drucken"

                              jetzt zuerst nach einer Makrofunktion (F10) gesucht. Ist keine vorhanden, so wird wie bisher die Druckfunktion (F4) verwendet.
          04.12.08 PRNLIB3:   Feldausgaben mit der Formatierungsoption n0 (z.B. [C12n0]) werden jetzt korrekt ausgegeben.
                   API_MSK:   Die Mausbedienung beim Setzen von Vergleichen in der Maske verbessert.
                   PRGLOAD:   Wird im Makro mit GosSub ein Unterprgramm aufgerufen und das Datenbank-Hauptobjekt auf das Fokus-Objekt transferiert, so wird auch das 
                              transferierte Fokus-Objekt vorm schliessen der Datenbank geschuetzt (Speichermakros mit GoSub und SetFileBackToPRevFile()).
                   API_MSK:   -Wird ein Datumsfeld mit der Dialogbox veraendert, so wird sofort der Speicherbutton aktiv.
                              -Bei der Belegbearbeitung ist der Speicherknopf OK immer aktiv.
          08.12.08 ERRORLOG:  Wird ueber den HTML-Requester die Performance-Monitordaten abgerufen, so wird der Performancemonitor aktiviert, falls er 
                              nicht ueber die FAKT.INI datei mit dem Schalter "ProfilerLogbuchSekunden" aktiviert wurde.
                   DVAPI32:   Beim Terminkalenderabgleich mit der David-API fuehren bestimmte ungueltige Termineintraege nicht mehr zu einer Schutzverletzung.
          09.12.08 PRNLIB:    Neue Druckvorlagen Formatierungsoption "<-]" (Beispiel [C33<-]). Damit werden anhaengende Leerzeichen aus dem Feld nicht mit ausgegeben.
          11.12.08 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Produktion":
                                AuftragsabschlussProduktionspruefung; Wert 0/1. Default 1
                                Beim Abschliessen eines Auftrags wird geprueft ob zugehoerige Produktionen bereits abgeschlossen sind.
                                Sind Produktionen noch offen, so wird kein Kennzeichen E im Auftrag gesetzt.
                                Mit dem Wert 0 kann die Pruefung abgeschaltet werden. D.h. unabhaengig vom Status zugehoeriger
                                Produktionen zu einem Auftrag, wird der Auftrag mit E gekennzeichnet, wenn alle Komponenten geliefert
                                und berechnet sind.
          12.12.08 FFBSTLST:  Kommando DispoToOrderList um Modus 256 erweitert.
                                DispoToOrderList( Modus, BisDatum)
                                DispoToOrderList( Modus, BisDatum, VonDatum)
                                DispoToOrderList( Modus, BisDatum, VonDatum, MinimalbestandToleranzWochen)
                                Funktion:
                                Uebertraegt den Warenbedarf pro KW aus dem Dispo-Zeitstrahl in die Bestelliste.
                                Es werden Eintraege fuer die KWs erstellt, in denen der Dispobestand kleiner 0 wird.
                                - Wird kein VonDatum angegeben oder ein leeres VonDatum, wird das aktuelle Datum als VonDatum verwendet.
                                - Ist das VonDatum vor dem Dispozeitstrahl (der Zeitstrahl umfasst 2 Jahre), so wird es auf den Beginn des Dispozeitstrahls gesetzt.
                                  Ist das BisDatum nach dem Dispozeitstrahl, so wird es auf das Ende des Dispozeitstrahls gesetzt.
                                - Wird mit MinimalbestandToleranzWochen eine Anzahl groesser 0 angegeben und der Modus 16 verwendet,
                                  so wird eine Bestellvorschlag bei Dispobestand kleiner Minimalbestand erst dann ausgeloest,
                                  wenn innerhalb der naechsten MinimalbestandToleranzWochen der Dispobestand nicht mindestens den minimalen Lagerbestand erreicht.
                                Hinweis:
                                Das Kommando ist nur auf den Artikelstamm anwendbar.
                                Das BisDatum muss innerhalb des Dispostrahls liegen (aktuelles Jahr/ naechstes Jahr)
                                Modus:
                                Modus   1  0x01: Unbestaetigte Bestellungen mit Wunschtermin beruecksichtigen
                                Modus   2  0x02: Bestelliste mit Wunschtermin beruecksichtigen
                                Modus   4  0x04: Bestelliste automatisch beruecksichtigen und verschieben.
                                                 Die Bestellisteneintr„ge die automatisch verschoben werden sollen, mssen
                                                 alle das Kennzeichn 'A' "Eintrag mit automatischer Verschiebung" besitzen.
                                Modus   8  0x08: Statt des Dispozeitstrahls, wird die Forecast-Bedarf verwendet
                                                 (Nur in Verbindung mit dem IFW Forecast Modul).
                                Modus  16  0x10: Feld minimaler Lagerbestand beruecksichtigen.
                                                 Waren werden schon dann in die Bestelliste geschrieben, wenn der Dispobestand unter den
                                                 minimalen Lagerbestand faellt (Feld minLgBest: im Artikelstamm).
                                Modus  32  0x20: Feld minimale Bestellmenge beruecksichtigen. Werden Waren in die Bestelliste geschrieben,
                                                 so ist die Mindestmenge die minimale Bestellmenge (Feld minBestel: im Artikelstamm).
                                Modus  64  0x40: Feld VPE Verpackungseinheiten beruecksichtigen. Werden Waren in die Bestelliste geschrieben,
                                                 so ist die Stueckelung immer in ganze Verpackungseinheiten.
                                                 Die Verpackungseinheit muss eine ganze Zahl groesser 1 sein (Feld Verp.EH VPE: im Artikelstamm).
                                Modus 256 0x100: Felder Meldebestand 270, Bestellmenge 271 und Lieferzeit 123 in Werktagen beruecksichtigen
                                                 (Nur in Verbindung mit dem IFW Forecast Modul).
                                                 In Verbindung mit Modus 256 sind die Modies 1 (alle Bestellungen),
                                                 2 (Bestelliste), 4 (Bestelliste mit Korrektur), 32 (minimale Bestellmenge) und 64 (VPE beachten) anwendbar.
                                                 Die zu bestellende Menge wird aus Menge = "Bestellmenge" - "allen Mengen in Bestellung und Bestelliste (nicht A bei Modus 4, alle bei Modus 2)"
                                                 berechnet (wenn Modus 1 und 2 oder 4 zusaetzlich angegeben).
                                                 Ist die Menge >0 wird bestellt.
                                                 Ist die Menge < der Mindestbestellmenge (evt. durch bereits plazierte Bestellungen die aber zu wenig sind,
                                                 wenn Modus 32 zusaetzlich angegeben), wird zumindest die Mindestbestellmenge bestellt.
                                                 Die Menge wird auf ein vielfaches der naechsten VPE aufgerundet, wenn der Modus 64 angegeben ist.
                                                 Bei Modus 4 werden die bisherigen Automatikeintraege (Status A) geloescht und durch den neuen Eintrag ersetzt.
                                                 Als Wunschtermin wird das aktuelle Datum plus die angegeben Lieferzeit in Arbeitstagen gespeichert.
                                Modus 512 0x200: Artikel des Typ's 'X' werden nicht in die Bestelliste uebertragen.
                                Hinweis:
                                Fuer Modus 4 muss die Bestelliste ein Vermerkfeld und einen Sortierpfad nach ArtNr WunTerm Datum besitzen.
                                Ansonsten wird die Meldung "Vermerkfeld oder Suchpfad fehlt in der Bestelliste fuer DispoToOrderList" ausgegeben.
                                Die Modi 16,32 und 64 sind nur ohne dem Modus 8 "Forcastzahlen verwenden" verwendbar.

! 16.12.08 WINIFW: Erste Rechtschreibpruefung implementiert.

          18.12.08 DFEDLIB:   Bei der Wortanfangsuche nach doppelten Eintraegen wird jetzt Gross- und Kleinschreibung ignoriert.

458 07.01.09 MUEHLEN: Bei den Lieferanten- und Kundenkontrakten werden jetzt Mengen vor und nach der Statistikperiode in separaten Feldern gespeichert.

                              Mengen vor der Statsitikperiode werden bei der Restmengenberechnung beruecksichtigt.
          08.01.09 WINIFW:    Rechtschreibpruefung aktiviert.
          12.01.09 DFPRN:     Ausdrucksoptionen fuer die IFW-Tabellenausgaben erweitert:
                              Es sind jetzt im Ausgabeformular zusaetzlich zu der Ausgabeoption 'C' fuer die IFW-Tabelle
                              die Ausgabeoptionen 'D' und 'E' verfuegbar.
                              Option 'C': Die Ausgabe erfolgt in eine IFW-Tabelle, sie wird auf dem Bildschirm geoeffnet.
                              Option 'D': Die Ausgabe erfolgt in eine IFW-Tabelle, die Druckausgabe erfolgt sofort auf den 
                                          Standarddrucker des Arbeitsplatzes. Fuer eine andere Druckerauswahl benutzen Sie
                                          im IFW die Funktion "Datei | Drucker einrichten" aus dem Hauptmenue.
                              Option 'E': Wie die Option 'D', nur wird jeder selektierte Satz in einem eigenen Ausdruck
                                          ausgegeben.
                              Option 'F': Ein Druckerdialog wird vor der Ausgabe geoeffnet, nur mit Option 'D' oder 'E' moeglich.
                   PRGLOAD:   Kommando PrintFile() erweitert:
                                Modus  8192 (0x2000): Die Ausgabe erfold in eine IFW-Tabelle, die sofort gedruckt wird (Entspricht der Option 'D').
                                Modus 16384 (0x4000): Die Ausgabe erfold in eine IFW-Tabelle, die sofort gedruckt wird.
                                                      Jeder selektierte Satz wird in eiem eigenen Ausdruck ausgegeben (Entspricht der Option 'E').
                                Modus 32768 (0x8000): Ein Druckerdialog wird vor der Ausgabe geoeffnet. Nur mit Option 0x2000 oder 0x4000 sinnvoll.
                   ITBPRG:    Neue Funktion "InitResident".
                              Sie dient zur Deklaration residenter globaler Variablen.
                              Werden Variablen in dieser Funktion deklariert, so bleiben sie bei einem Mehrfachdruck mit der Ausgabeoption 'E' bei
                              jeder Ausgabe eines selektierten Satzes erhalten.
                              Mit diesen Variablen ist es moeglich die Eingabe von Ausgabeparametern (z.B. ein Zeitraum) nur einmalig beim ersten
                              selektierten Satz abzufragen.
                              Bei jedem weiteren selektierten Satz kann auf diese Variablen zurueckgegriffen werden, ohne den Benutzer erneut 
                              zu einer Eingabe aufzufordern.
          13.01.09 PRGLOAD:   Neues Kommando PrinterSetupDialog
                              PrinterSetupDialog();
                                Es wird der Druckerdialog zum Einstellen des Windows-IFW-Druckers geoeffnet.
                                Er wird beim direkten Ausdruck der IFW-Tabellen verwendet und ist in Verbindung von
                                Makros zum automatischen Druck der IFW-Tabellen sinnvoll.
                              Hinweis:
                                Mit SetAbort() kann eine Sprungmarke fuer den Abbruch des Dialogs gesetzt werden.

459 14.01.09 PRGLOAD: Kommando DocumentEdit() erweitert.

                              -Es kann jetzt bei der Tanksstellenverwaltung auch fuer Anlieferungen genutzt werden.
                              -Es kann fuer Wareneingaenge verwendet werden. Als Vorbeleg sind Bestellungen moeglich.
                              Bei der Tanksstellenverwaltung kann als Vorbeleg aus die Anlieferungen verwendet werden.
                              Ein sofort anhaengende Verbindlichkeitenanlage ist nicht moeglich.
                   REQUEST:   Meldungen ohne Tastenvorgabe erhalten jetzt automatisch einen Ok-Button.
                   FAKTPRJ:   Icons den Belegdatenbanken im Einkauf zugeordnet.

460 16.01.09 API_WIN: Beim Drucken von IFW-Tabellen wird jetzt die Einstellung der Papaierausrichtung bei einem zuvor geoeffneten Druckerdialog

                              korrekt verwendet.
                   IFWTAB:    In der IFW-Tabelle kann jetzt im Systemmenue direkt der Zeichensatz fuer den Druck eigestellt werden.
                              Der Druckzeichensatz sollt nicht wesentlich groesser als der Anzeigezeichensatz eingestellt werden, anonsten werden
                              die Buchstaben beim Drucken in der Zeille abgeschnitten.
          19.01.09 PRGLOAD:   Kommando DocumentEdit() erweitert.
                              -Es kann fuer Eingangsrechnungen verwendet werden.
                              Ein sofort anhaengende Verbindlichkeitenanlage ist nicht moeglich.
          20.01.09 FFFIRUMS:  Bei der IFW-Installation fuer Muehlenbetriebe wird die Kundenkontraktstatistik bei einem Jahresabschluss nicht mehr veraendert.
                   FFBELPRU:  Bei der automatischen Rechnungserstellung der Tankstellenverwaltung wird das Kennzeichen J in der Rechnung gesetzt,
                              wenn im Kundenstamm das Kennzeichen D fuer den automatischen Rechnungsdruck vorhanden ist.
                              Bei der Preisberechnung wird der Gesamtpreis der Quelldaten geprueft. Bei einer Rundungsabweichung von 1 Cent wird
                              die Menge um 0,0001 zur Kompensation erhoeht.
          21.01.09 FFWEG:     Bei der Anlieferverwaltung in der Tankstellenverwaltung kann jetzt eine Restmenge im Tank des Spediteurs mitverwaltet werden.
                              Die Menge wird auch in den Wareneingangspositionen gespeichert.
                   DFPRN:     Beim Drucken von selektierten Eintraegen mit der Option nur den aktuellen Satz zu Drucken wird bei automatischer Kennzeichnung
                              nur noch der aktuelle Satz gekennzeichnet.
                   DFPRN:     Beim Ausgeben von selektierten Belegen als Massendrucksache an HTML als HTML-Beleg, wird die Kennzeichnung erst nach erfolgreichen
                              Aufruf des HTML-Drucksystems vorgenommen.
                              Wird die Meldung "Warten auf den graphischen Druckservice" abgebrochen so erfolgt auch keine Kennzeichnung.
                              Eine Stoerung des graphischen Druckservice selbst, verhindet die Kennzeichnung als gedruckt nicht.
          22.01.09 FFBETON:   Erweiterung der Waagensteuerung:
                              -Bei der Leergewichtswiegung wird die Ampel angesteuert.
                              -Bei der Erstwiegung wird die Ampel angesteuert.
                              -Die Zweitwiegung wird jetzt automatisch zusaetzlich als Leergewichtswiegung im Fahrzeigstamm gespeichert.
          22.01.09 PRGLOAD:   Kommando ForEachFromTo() und ForEachSelected() erweitert.
                              Gibt die Funktion Do() einen Rueckgabewert TRUE zurueck, so wird die Schleife abgebrochen. Die Funktion ist mit BOOL xxx::Do() zu deklarieren.
                              Mit FALSE oder keinem Rueckgabewert laeuft die Schleife von ForEachFromTo() oder ForEachSelected() weiter.
          27.01.09 API_MFRM:  Beim Aufruf des HTML-Drucks die Pfadangabe der HTM-Druckdatei korrigiert.
          29.01.09 IFWTAB:    Feldattribute lassen sich jetzt auch auf Datumsfelder setzen (z.B. setBkColorCell() fuer die Zellenfarbe).
          30.01.09 WINIFW:    Rechtschreibpruefung reagiert jetzt auch auf Eingefuegte Textbloecke und Woerter am Ende des Textes.
                              Im "Nur Lese Modus" werden keine Woerter mehr unterstrichen.

461 03.02.09 FFARTBCH: -Die Meldung "Der Vorbeleg wurde zum Buchen nicht gefunden (im Archiv?)! (Zurck)" fuehrt jetzt nicht mehr zum Abbruch der Belegbearbeitungz.B. Angebot schreiben

                               und gibt einem so die Gelegenheit den Vorbeleg zu rearchivieren.
                              -Die Meldung wurde geaendert auf "Der Vorbeleg nnnnnn/ppppp wurde nicht gefunden (im Archiv?)! (Zurck)". Als n/p wird die Belegnummer und
                               die Belegposition des fehlenden Vorblegs angegeben.
                   WINIFW:    Rechtschreibpruefung beim Zeilenumbruch mit Return erweitert.
          05.02.09 DFPRN:     Das Zuruecksetzen der Formularmaske beim Drucken vom schliessen der Druckvorlage zum Schliessen des Druckers verlagert.
                              Dadurch ist bei einem Massendruck von HTML-Belegen die Druckereinstellung aus der Formularmaske nicht mehr nur fuer den 1.
                              Ausdruck gueltig, sondern fuer alle Belege (Problem oberer Rand beim HTML Druck meherer Belege).

462 06.02.09 HTMLVIEW: Der HTML-Ausdruck mit DruckrequesterSchaltfläche mit Druckoptionen vor dem eigentlichen Ausdruck wird jetzt auch erst nach einer Verzoegererung gestartet. Damit wird das Drucken von Bilddateien

                              besser unterstuetzt.
                              Vor der Aktivierung des Ausdruckskommando wird jetzt auf eine Bestaetigung der Render-Engin gewartet.
                              Sollte keine Bestaetigung erfolgen, so wird nach soaetestens 10 Sekunden der Ausdruck gestartet.
                   API_MSK:   Beim Veraendern einer Verbindlichkeit oder eines OP's kann die Liste jetzt korrekt mit dem [X] oder dem Pfeil zurueck per Mausklick verlassen werden.
                   API_MSK:   Die Funktion zur Ergaenzunf der Bezahlung bei OP's Verbindlichkeit oder beim FIBU-Saldo mit der Taste "Einf" steht jetzt in der Windowsversion zur Verfuegung.
                   API_WIN:   Den IFW-Tabellenausdruck optimiert. Es wird jetzt als Standarddruckfont der Bildschirmfont Verdana 10 verwendet.
                              Diverse Optimierungen zum Ausdrucken der 10er Schrift ohne Verluste an den Raendern.
          09.02.09 FAKTEDIT:  Beim Verarbeiten von Belegen wird jetzt der gesamte Speicher und Buchungsvorgang gekapselt, sobald die Vorbelegspruefung aktiv ist (ist sie Standardmaessig).
                              Damit wird auch die Meldung "Der Vorbeleg ... " ausgegeben und nicht mehr die Fehlernummer -257.
          11.02.09 FFBETON:   Ein Wiegelogbuch eingefuehrt. Darin werden alle Waagentelegramme mit ihrer ID und dem Gewicht mit Datum und Uhrzeit gespeichert.
                              Das Wiegesystem der W”hwa CGU-45 Waage umgestellt. Diese Waage liefert keine ID, sondern ein Protokolldrucker druckt eine mitgeteilte ID zur gewogenen Menge aus.
                              Durch das Waagenlogbuch wird jetzt intern eine lfd. Id generiert und so behandelt, wie wenn die Waage diese ID liefern wuerde. Diese ID wird
                              auf dem Protokolldrucker ausgegeben. Dadurch ist ein Mischbetrieb zwischen dem Waagentyp und anderen Waagen mit Erst-Und Zweitwiegung moeglich.
          12.02.09 PRGLOAD:   Kommando DocumentEdit() erweitert.
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              Modus:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                                  Bei Lieferscheine kann nur die Auftrags oder Reparaturdatenbank als Quelldatei angegeben werden.
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              14: Beleg abschliessen         (mit Auswahl)
                              VerarbeitungsModus:
                               1: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                              Der Modus 14 steht jetzt zum Abschluss von Auftraegen und Lieferscheinen zur Verfuegung.
                              Dabei ist der VerarbeitungsModus 16 zusaetzlich anwendbar. Mit dem VerarbeitungsModus 16 werden keine
                              Meldungen beim Abschluss angezeigt.
                   COMSOCK:   Bleibt der Port bei einer Verbindungsanfrage an einen bereits besetzten Host offen, so wird er nach 3 Sekunden zwangsgeschlossen.

463 13.02.09 PRNLIB: Neues DVL Kommando [V1:dV]

                              Damit kann der Dispoindex in V1 ermittelt werden, in dem die Dispomenge sich verringert (Auslieferung).
                              Es wird der Zeitraum von Index V1 bis Datum untersucht.
          19.02.09 PRGLOAD:   Das Kommando DocumentEdit() erweitert:
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              Modus:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                                  Bei Lieferscheine kann nur die Auftrags oder Reparaturdatenbank als Quelldatei angegeben werden.
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              14: Beleg abschliessen         (mit Auswahl)
                              VerarbeitungsModus:
                               1: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                              32: Bei "Belege abschliessen" erfolgt ein Zwangsabschluss des Lieferscheins, auch wenn er noch nicht komplett berechnet ist.

464 26.02.09 COMSOCK: Das Verfahren bei eingehenden IP-Anfragen die weitergereicht werden muessen optimiert.

                              Dadurch sollte ein  Haengenbleiben der Weiterreichung bei besetzter Host-Sessions nicht mehr vorkommen.
                              Im COM-Logbuch werden jetzt detailiertere Informationen mitgeschrieben.
          03.03.09 COMSOCK:   Shutdown- und Close-Eintrag im COM-Logbuch beim Ping zum IFW-Hostingserver unterbunden.

465 13.03.09 DFED3LIB: Benutzerdefinierte Felder aktiviert. Folgende Funktionen: Laden/Speicherndauerhaftes Festschreiben ihrer Eingaben in der Datenbank/Suchen/Drucken/Massenaenderung/SetItem/AppendBrowseItem/SetBrowseItem/Import

          16.03.09 DFEDLIB:   F12 fuer die Benutzerdefinierte Felder in der klassischen IFW-Version aktiviert.
          17.03.09 EDIT_WIN:  Beim GDI Druck ohne Kopfbild und Fussbild wurde ein Zeilenumbruch am Ende der Seite ohne Grund ausgegeben. Umbruch beseitigt.

466 18.03.09 DFLIB2: Beim Speichern von Datensaetzen im Online-Buchungsmodus mit dem Makrokommando EditFile() wird jetzt zusaetzlich eine Benutzerkonfliktpruefung durchgefuert.

                              Es kann dabei zu der Meldung "Benutzerkollision. Der Datensatz wurde inzwischen ver„ndert." auftreten.
          19.03.09 WINLIB:    Die Parametereingabe string_gadget() unter Windows aktiviert.
                   WINIFW:    Folgende Funktionen der Bestellueberwachung unter der Windowsversion  aktiviert:
                              - unbestaetigte Bestellungen
                              - abweichende bestaetigte Termine
                              - Bestellungen mit Lieferverzug
          23.03.09 WINLIB:    Ein Verlust von Eingabetextkapazitaet in Fliesstexten nach einem Ausdruck des Textes beseitigt. Dies konnte nur bei Fliesstextfeldern die durch
                              ein Datenbankupdate erweitert wurden und bereits Daten enthielten vorkommen.
                   PRGLOAD:   SetBrowseItem() mit leerem 2 Feldparameter fuehrt nicht mehr zu einer Fehlermeldung.
          25.03.09 IFWTAB:    Die Spaltenbreitenoptimierung der ersten Spalte in der IFW-Tabelle verbessert.

467 26.03.09 DFLIB: Die Datenbankobjekte der Benutzerfelder werden jetzt beim schliessen korrekt aufgeraeumt. 468 30.03.09 FFARTBCH: Fehlererkennung bei auftretendem Resourcenmangel beim Buchen verbessert.

                   FAKTSUB:   Felduebernahme der Eingabehilfe im Anschaumodus unterbunden.
                   BRECLIB:   Die Mandantensynchronisation beim Textfeldern korrigiert. Sie werden jetzt nur noch abgeglichen, wenn sich der Text
                              inhaltlich geaendert hat.
          01.04.09 API_MSK:   Beim einem Makrofehler beim Umschalten der IFW-Listenuebersicht wird die Fehlermeldung nicht mehr als Textmeldung angezigt.
                              Damit wird auch eine moegliche Schutzverletzung verhindert.     
          02.04.09 FFPROD2:   Beim in Bearbeitung nehmen von Produktionen wird jetzt die Frage "Produktionsschein drucken (Drucken/Formularwahl/Weiter/Zurueck)".
                              Mit Zurueck oder Taste ESC laesst sich jetzt dass Setzen des Bearbeitungskennzeichen "B" verhindern.
                   DFPRN:     Ausgabeoption Y beim Ausdrucksformular implementiert.
                              Mit gesetzter Ausgabeoption Y wird ein Kennzeichen des Ausgabeformulars ohne Nachfrage gesetzt,
                              wenn der Ausdruck fehlerfrei verlaeuft.
                   FFPERS:    Wenn in der Personalverwaltung bei eingetragener Ueberzeit gearbeitet wird, wird automatisch ein halber Ueberzeittag und 
                              Anwesenheitstag in der Tagesstatistik hinterlegt (der Soll-Arbeitstage ist immer ein ganzer Tag). In Verbindung mit
                              Wochentagsspezifischen Arbeitszeiten wurde an diesem Tag nur ein halber wochenspezifische Arbeitstag als Sollvorgabe
                              berechnet. Auf einen ganzen wochenspezifischen Arbeitstag korrigiert.

469 07.04.09 DFED3LIB: Bei deaktivierten Modul "Benutzerdefinierte Felder" wurde beim Import von Daten eine Abbruchmeldung ausgegeben. Problem beseitigt.

          08.04.09 EDIT_WIN:  Kann der Windows Standarddrucker nicht ermittelt werden, so wird der Druckrequester geoeffnet.
                              Bisher konnte unter Umstaenden eine Schutzverletzung auftreten.

470 18.04.09 DFED3LIB: Benutzerfelder koennen jetzt auch auf Belegkoepfe angewendet werden. Die Daten werden beim Bearbeiten temporaer verwaltet.

                              Die Funktion "Weiterschreiben" unterstuetzt die Benutzerfelder nur eingeschraenkt. Nach einem Programm-Neustart sind die Inhalte
                              der Benutzerfelder unter der Funktion "Weiterschreiben" leer.
          20.04.09 DFLIB:     Bei der Nummernvergabe mit der Taste Einf. wird jetzt bei gesetztem Systemkennzeichen fuer Archivpruefung auch das Archiv mit beruecksichtigt
                              (Kennzeichen G bei den PDF-Flags in den Datenbankparametern. Intern Funktion get_autoincnum, Flag PDF_CHKARCHIVAUTOINC).
          21.04.09 FFPROD2:   Die Funktion "Produktionsmenge/Termin aendern" erweitert. Der Vorgang wird jetzt mit dem TTS (Tansaction Tracking System) gekapselt.
                   DFED3LIB:  Der Archivierungs- und Rearchivierungsvorgang der Belege ist jetzt mit dem TTS (Tansaction Tracking System) gekapselt.
          24.04.09 PRDLOAD2:  Positionsstuecklisten in den Ausgangsbelegen werden jetzt in der IFW Tabelle auch korrekt angezeigt, wenn sich der Beleg im Archiv befindet.
                              (Intern: initDb() initialisiert jetzt die DFF_RAM Objekte abhaengig des Archivzustands des Elternobjekts).

471 27.04.09 API_MSK: In der Windowsversion kann jetzt das Excel-Zahlenformat direkt im Systemmenue der Datebankliste umgeschaltet werden.

                              Es sind die Einstellungen "Zahlenformat bis Excel 2003" und "Zahlenformat ab Excel 2007" vorhanden.
                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                               BenutzeErweiterteMailAPI: Wert 0/1. Default 0.
                               Fuer die Mailanbindung beim PDF-Druck kann die SimpleMAPI oder ExtendedMAPI verwendet werden.
                               Beim Einsatz von Tobit DAVID muss die SimpleMAPI verwendet werden (Wert 0).
                               Beim Einsatz von Microsoft Outlook muss die ExtendedMAPI verwendet werden (Wert 1).
                   MAPIEXT:   Erweiterung der EMail-API von Simpel-MAPI auf Extended-MAPI. Damit koennen auch neuere Outlookversionen ab 2003 angesprochen werden.
                              Die Mails koennen als HTML-Mails generiert werden. Die Extended MAPI wird ueber das Kommando CallMailAPI() aufgerufen.
                              CallMailAPI( Modus, Empfaenger, Betreff, Text, Dateien);
                              Modus  1 -> je nach Systemeinstellung,Versand einer leeren neuen Mail
                              Modus  2 -> je nach Systemeinstellung,Versand einer neuen Mail mit Vorgabedaten
                              Modus  3 -> je nach Systemeinstellung,Versand einer neuen Mail mit Daten ohne Requester
                              Modus 11 -> Extended MAPI Versand einer leeren neuen Mail
                              Modus 12 -> Extended MAPI Versand einer neuen Mail mit Vorgabedaten
                              Modus 13 -> Extended MAPI Versand einer neuen Mail mit Daten ohne Requester
                              Modus 21 -> Simple MAPI Versand einer leeren neuen Mail
                              Modus 22 -> Simple MAPI Versand einer neuen Mail mit Vorgabedaten
                              Modus 23 -> Simple MAPI Versand einer neuen Mail mit Daten ohne Requester
          28.04.09 API_MFRM:  Neues IFW-Kommandos fuer HTML aktiviert:
                                windows.external.ReadFile( "Dateiname");
                              Gibt den Inhalt der Datei zurueck. Die Datei sollte eine Textdatei sein.

472 30.04.09 FFARTBCH: Die Meldung "Der Vorbeleg nnnnnn/ppppp wurde nicht gefunden (im Archiv?)! (Zurck)" ist jetzt

                              um den Objektnamen der betroffenen Datenbanktabelle erweitert.
                   FAKTEDIT:  Die Belegbearbeitungsfunktion verfuegt jetzt ueber einen Waechter, der die TTS-Aufrufhierachie waehrend dem
                              Buchungsvorgangs prueft. Tritt eine Unregelmaessigkeit auf, so wird die Meldung
                              "Fehler in der TTS-Hierachie, Beleg nicht speicherbar!" ausgegeben. Sie weisst auf eine interne Fehleinschaetzung
                              der Belegvernetzung aus den Vorbelegen hin (Fehlernummer -259). Diese Meldung ist dem technischen Support weiterzuleiten.
          06.05.09 DFPRN:     Ausgabeoption Y beim Ausdrucksformular korrigiert.
                              Beim Druckrequest "Kennzeichen bereits gesetzt" wird die Antwort "Alle" jetzt auch beim Multidokumentendruck von HTML Belegen unterstuetzt.
          07.05.09 FFPROD3:   Bei der hierachischer Produktionsanlage die interne Objektbelegungsverwaltung korrigiert.
                   VIDF:      Die IFW-Tabelle liesst CSV Dateien jetzt mit original Backslash ein. Backslash wirk nicht mehr als Escape-Zeichen.
                   IFWTAB:    Es kann jetzt als Datenbank in der ROWDEF-Deklaration auch die Attachmentdatei xxxxxxAT angegeben werden.
          08.05.09 PRGLOAD:   Kommando DoHtmlRequest() erweitert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                              Mit Modus koennen verschiedene Optionen geschaltet werden:
                                1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                                2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                                4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                                8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                               16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                              Es wird statt dessen der Tastencode F23 gesendet.
                                              Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                              256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                              Mit Titel kann ein Fenstertitel angegeben werden.
                              Mit IconId kann ein Icon des Fensters angegeben werden.
                              Mit '?' angehaengte Parameter an der URL der HtmlDatei werden jetzt korrekt an den internen
                              Parameter pinID angehaengt.

473 11.05.09 WINIFW: Umlogprobleme beim Einloggen in der klassischen Oberflaeche zur graphischen Oberflaeche beseitigt.

          12.05.09 API_MFRM:  Das IFW-Kommandos fuer HTML "windows.external.ReadFile( "Dateiname")" kann jetzt mehr als 4k grosse Dateien lesen.
                   API_MSK:   Der HTML-Requester wird jetzt innerhalb des Desktops justiert, falls er ueber den Rand hinaus ragt.
          13.05.09 PINBOARD:  Eingehende Nachtrichtenlisten koennen jetzt nicht mehr im Hintergrund auf der klassischen Oberflaeche angezeigt werden,
                              wenn die Windowsoberflaeche aktiv ist.
                   PINBOARD:  Den Nachrichtenrefresh unter der graphischen Oberflaeche verbessert 
                              (nach Neueingang bearbeiten, Terminkalender schliessen, eingehende Nachrichten waehrend der Popup-Blocker aktiv ist).

474 14.05.09 DFPRN: Ausdrucke die ueber den Druckwizzard ausgeloest werden, werden nicht mehr als Hotkey eingelernt.

                              Wird in der klassischen Oberflaeche ein Ausdruck ueber den Druckerwizzard ausgeloest, so wird nicht mehr im Hintergrund auf die
                              graphische Oberflaeche gewechselt.
                   PRGLOAD:   Kommando ImportFile erweitert:
                              Der Modus 512 (keinen Zaehlrequests anzeigen) zeigt jetzt auch nicht mehr die Meldung "Importiere Datei xxx" an.
          19.05.09 FAKTEDIT:  Beim Belegimport wird keine Fehlermeldung mehr ausgegeben, wenn die zu importierende Datei nicht existiert (Kommando DocumentImportFile)

475 20.05.09 PRNPRM: Beim Druckvorlagen die anzahl Userhunks von 80 auf 140 erhoeht.

                              Beim Druckvorlagen die maximale Include-Dateien von 10 auf 100 erhoeht.

476 WINIFW: Bei der Bearbeitung von Postleitzahlen-Stassencode wird das Ortsverzeichnis nicht mehr zweimal geoeffnet (API-Emulation, Rueckgabewertverarbeitung)

                              Bei der Bearbeitung von Postleitzahlen-Stassencode bleibt die Maske nicht mehr unverarbeitbar stehen (IFW wie eingefrohren, API-Emulation exitItem()-Benutzungsverwaltung).

477 DFED2LIB: Beim deselektieren von Eintraegen, die nicht im aktuellen Suchpfad liegen, werden diese einfach deselektiert (Vermeidung von Fehler -44).

                   DFPRN:     Neues Druckvorlagenkommando [.95Cxx<]
                              Damit lassen sich Variablen des aktuell verwendeten Druckers abfragen (Maske aus der Druckerliste).
          25.05.09 IFWTAB:    Fliesstextfelder der Datenbank werden jetzt in voller Laenge uebergeben (bisher nur die erste Zeile).
                   IFWTAB:    AddColumn() Typ 0 um einen weiteren Parameter erweitert. Damit laesst sich die maximale Laenge des Textes der Spalte in der IFW-Tabelle einstellen.

478 26.05.09 ITBPRG: Neues Kommando SetOutputModeHTML();

                                SetOutputModeHTML( BOOL $bMode);
                              Mit dem Wert TRUE wird der HTML ausgabemodus aktiviert.
                              Dabei werden die Tabellendaten in Form eines HTML-Strings intern generiert.
                              Es werden keinerlei Daten in die Zieldatei unmittelbar geschrieben.
                              Zur Ausgabe der Daten in die Zieldatei muessen die Kommandos Print() oder PrintFile() in der Funktion PostPrint() aufgerufen werden.
                              Um die Tabellendaten in die Datei auszugeben muss mit dem Kommando PrintFile() eine Textdatei ausgegeben werden die den Platzhalter
                              %HTML_CSV_DATA% enthaelt (siehe unten).
                   ITBPRG:    Neues Kommando PrintFile( STRING $strFileName, INT $iMode);
                                PrintFile( STRING $strFileName, INT $iMode);
                              Mit dem Kommando koennen Dateien direkt in die Ausgabedatei ausgegeben werden.
                              Der Parameter $strFileName enthaelt den Dateiname der auszugebenden Datei.
                              Mit dem Parameter $iMode koennen verschiedene Optionen aktiviert werden.
                              $iMode:
                               1: Der Platzhalter %HTML_CSV_DATA% wird in der Datei gesucht und durch den Inhalt der Tabellendaten ersetzt.
                                  Die Option ist nur in Verbindung mit dem Kommando SetOutputModeHTML( TRUE) sinnvoll.
                               2: Es wird nach eienr Zeile mit dem Kommando <!--#include filename.ext --> gesucht. Es muss genau der der Text "<!--#include " enthalten sein.
                                  Der Dateiname wird ab "<!--#include " bis "-->" ermittelt. Es wird versucht die Datei zu laden und ab der naechsten Zeile einzufuegen.
                                  Der Dateiname wird dabei folgendermassen interpretiert:
                                  1. Lautet der Dateiname MAINFILE.xxx so wird der Platzhalter MAINFILE durch den Dateiname der original geladenen Datei ersetzt. Die Erweiterung
                                     bleibt erhalten. Ist die Datei nicht vorhanden, so wird keine Fehlermeldung ausgegeben und das Kommando ignoriert.
                                  2. Ist als letztes Zeichen der Dateierweiterung ein '*' enthalten (z.B. Briefe01.dv*) so wird zuererst Versucht die Datei mit einem 'U' als
                                     letztes Zeichen zu laden (z.B. Briefe01.dvU), ist sie nicht vorhanden, dann die Datei mit einem 'L' (z.B. Briefe01.dvL).
                                     Ist auch diese Datei nicht vorhanden wird eine Fehlermeldung ausgegeben.
                                  3. Ist als letztes Zeichen der Dateierweiterung ein '?' enthalten (z.B. Briefe01.dv?) so wird das Fragezeichen durch den angegebnen Includeextender
                                     ersetzt (Das ist ein Zeichen dass im Ausgabeformular angegeben werden kann). Ist kein Includeextender angegeben oder die Datei mit dem
                                     Includeextender nicht vorhanden, so wird das Zeichen 'L' vorgegeben (z.B. Briefe01.dvL).
                                     Ist die 'L'-Datei nicht vorhanden wird eine Fehlermeldung ausgegeben.
          28.05.09 PRNLIB:    Druckkommando [Vadr um [Vadr7<]  erweitert.
                              Damit kann direkt die ermittelte Landesausgabe abgerufen werden.
          29.05.09 ITBPRG:    Beim Parsen von String in Hochkomma koennen jetzt auch ';' richtig im String verarbeitet werden
                              (z.B. %s = "abc;def"; wurde mit einem Fehler abgelehnt, da dass Hochkomma im Text nicht richtig verarbeitet wurde).

479 02.06.09 DFPRN: Druckausgaben mit der Schleifenoption [D mit mehr Saetze als 65535 in der Schleife korrigiert.

                   DFPRN:     Bei den Druckvorlagenoptionen werden jetzt auch die Optionen aus den Include-Druckvorlagenteilen angezeigt und angeboten.

480 03.06.09 PRGLOAD: Kommando DocumentImportFile erweitert:

                              DocumentImportFile liefert jetzt bei einer fehlenden Datei den Fehler REC_ABORT zurueck.
                              Ist eine Abort-Sprungmarke (SetAbort()) gesetzt, so wird diese angesprungen.
                              Ist keine gesetzt wird das Makro weiter ohne Meldung ausgefuehrt.
                              Zusaetzlich kann der Modus 512 verwendet werde. In diesem Fall wird eine Fehlermeldung bei fehlender Datei ausgegeben
                              und das Makro zwangsweise beendet.
                              Modus 512 (IMPORT_MISSINGFILEERROR)
                                Bei fehlender Datei wird eine Fehlermeldung ausgegeben.
          03.06.09 FAKTEDIT:  Beim Menuepunkt Beleg Importieren wird jetzt wieder der Importauswahlrequester angezeit.
          09.06.09 DFPRN:     Ausgabeoption Q beim Ausdrucksformular.
                              Die Option Q im Ausgabeformular oeffnet einen Druckauswahlrequester. Er kann mehrere Ausgabeformulare zusammen anzeigen.
                              Die angezeigte Formulargruppe wird im Feld 4 der Druckvorlagenparameter hinterlegt.
                              Im Feld Wert steht die Bezeichnung die zur Auswahl angezeigt wirt.
                   DFPRN:     Die Option Q wird bei einer WWW-Verbindung auf dem Host deaktiviert.
                   API_MFRM:  Das zuletzt angeklickte Nachrichtenfenster wird jetzt farblich hervorgehoben.
          10.06.09 DFPRN:     Schutzverletzung beim Ausdruck mit extra langen Dateinamen beseitigt.
                   PRGLOAD:   Kommando ImportFile korrigiert:
                              Der doppelt belegte Modus 256 wurde getrennt:
                              Modus 256
                                Die Datenbank wird im Modus "OnlineBuchen" beim Imports verarbeitet.
                              Modus 1024 (IMPORT_NOUSERBREAK)
                                Der Benutzer kann den Einlesevogang nicht abbrechen
                   DFED2LIB:  Beim Loeschen eines Datensatzes wird im Logbuch jetzt auch die Referenznummer des Satzes (Feldnummer 42) mitgeschrieben.
                   DFIMP:     Es ist jetzt zusaetzlich der Importmodus 5 verfuegbar:
                               0: alle Datensaetze neu einfuegen
                               1: nur vorhandene  aktualisieren
                               2: nur Neue einfgen
                               3: Neue einfgen und Alte aktualisieren
                               4: Datensaetze nur selektieren
                               5: Datensaetze loeschen
          16.06.09 FFBETON:   Neuer Waagentyp OVACO V1.20R5 aktiviert (Typ 12)
                              Sie verfuegt ueber eine neue Option der Permanenten Gewichtsanzeige auf der Lieferschein-Kurzerfassungsmaske.
                              Das Gewicht wird in der Textzeile des Waagennamens (F11,F12) angezeigt.
                              Die Aktuallisierung erfolgt einmal in der Sekunde.

481 16.06.09 WINIFW: Kleinere Fehler in der Freigabe von Windows-GDI-Objekten beim Maske oeffnen/schliessen beseitigt (recource leaks).

          18.06.09 FFBETON:   Waagentyp OVACO V1.20R5 Protokoll angepasst (Leerzeichen)
                              Permanente Anzeige der Waage korrigiert.

482 18.06.09 WINIFW: Beim HTML Druck mit Druckvorschau wird kein Druckrequester mehr automatisch aufgerufen.

          19.06.09 ITBPRG:    Kommando System.config( INT $iParametermaske, INT $iFeldnummer) aktiviert:
                                Das Kommando liesst direkt Felder aus den Programmeinstellungen aus.
                   WINIFW:    Beim Beleg Speichern Drucken mit HTML-Druckvorschau wird das Hauptmenue nicht mehr ueber den Druckrequester eingeblendet.
          24.06.09 FFPROD2:   Beim Absplitten von Produktionsmengen wird bei einem fehlerhaften Speichern der abgesplitteten Menge die Meldung
                              "Der Fertiganteil konnte nicht gepeichert werden, bitte manuell abspeichern!"
                              ausgegeben. Nach der Meldung kann die Produktion manuell mit F2 abgepeichert werden.
                   FAKTEDIT:  Beim Belegbearbeiten wird nach einem Speicherfehler die Hauptmaske neu geladen, um fuer einen erneuten Speicherversuch
                              Restdaten der vorherigen Speicherung aus der Hauptmaske zu entfernen.
          25.06.09 PRGLOAD:   Kommando DemandToOrderList implementiert.
                                DispoToOrderList( Modus)
                                DispoToOrderList( Modus, Bedarfsberechnung)
                              Funktion:
                              Uebertraegt den Warenbedarf eines Artikels in die Bestelliste.
                              Hinweis:
                              Das Kommando ist nur auf den Artikelstamm anwendbar.
                              Wird keine Bedarfsberechnung angegeben, so gilt der gerade aktuelle Modus (benutzerabhaengig).
                              Modus:
                              Modus   1  0x01: Unbestaetigte Bestellungen mit Wunschtermin beruecksichtigen
                              Modus   2  0x02: Bestelliste mit Wunschtermin beruecksichtigen
                              Modus   4  0x04: Bestelliste automatisch beruecksichtigen und verschieben.
                                               Die Bestellisteneintr„ge die automatisch verschoben werden sollen, mssen
                                               alle das Kennzeichn 'A' "Eintrag mit automatischer Verschiebung" besitzen.
                              Modus  32  0x20: Feld minimale Bestellmenge beruecksichtigen. Werden Waren in die Bestelliste geschrieben,
                                               so ist die Mindestmenge die minimale Bestellmenge (Feld minBestel: im Artikelstamm).
                              Modus  64  0x40: Feld VPE Verpackungseinheiten beruecksichtigen. Werden Waren in die Bestelliste geschrieben,
                                               so ist die Stueckelung immer in ganze Verpackungseinheiten.
                                               Die Verpackungseinheit muss eine ganze Zahl groesser 1 sein (Feld Verp.EH VPE: im Artikelstamm).
                              Modus 512 0x200: Artikel des Typ's 'X' werden nicht in die Bestelliste uebertragen.
                              Hinweis:
                              Fuer Modus 4 muss die Bestelliste ein Vermerkfeld und einen Sortierpfad nach ArtNr WunTerm Datum besitzen.
                              Ansonsten wird die Meldung "Vermerkfeld oder Suchpfad fehlt in der Bestelliste fuer DispoToOrderList" ausgegeben.
                              Felde Bedarf 13 beruecksichtigen
                              Die zu bestellende Menge wird aus Menge = "Bedarf" - "allen Mengen in Bestellung und Bestelliste (nicht A bei Modus 4, alle bei Modus 2)"
                              berechnet (wenn Modus 1 und 2 oder 4 zusaetzlich angegeben).
                              Ist die Menge >0 wird bestellt.
                              Ist die Menge < der Mindestbestellmenge (evt. durch bereits plazierte Bestellungen die aber zu wenig sind,
                              wenn Modus 32 zusaetzlich angegeben), wird zumindest die Mindestbestellmenge bestellt.
                              Die Menge wird auf ein vielfaches der naechsten VPE aufgerundet, wenn der Modus 64 angegeben ist.
                              Bei Modus 4 werden die bisherigen Automatikeintraege (Status A) geloescht und durch den neuen Eintrag ersetzt.
                              Als Wunschtermin wird das aktuelle Datum plus die angegeben Lieferzeit in Arbeitstagen gespeichert.
                              Bedarfsberechnung:
                              0x001 Statt dem Gesamtbestand wird der Lagerbestand beruecksichtigt
                              0x002 Der Minimale Lagerbestand wird beruecksichtigt
                              0x004 Die in Auftrag befindliche Menge wird beruecksichtigt (+)
                              0x008 Die in Produktion befindliche Menge wird beruecksichtigt (+)
                              0x010 Bereits bestellte Menge wird beruecksichtigt (-)
                              0x020 Mengen in der Bestelliste werden beruecksichtigt (-)
                              0x040 Lagerbestaende kleiner 0 werden auf 0 begrenzt
                              0x080 Die Mindestbestellmenge wird beruecksichtigt
                              0x400 Die in Abrufauftraegen befindliche Menge wird beruecksichtigt (+)
                              0x800 Die in Abrufbestellungen befindliche Menge wird beruecksichtigt (-)
          25.06.09 PRGLOAD:  Kommando DemandSelection implementiert.
                                DemandSelection( Selektionsmodus)
                                DemandSelection( Selektionsmodus, Bedarfsberechnung)
                              Funktion:
                              Selektiert alle Artikel die dem Selektionsmodus entsprechen.
                              Bei angegebener Bedarfsberechnung wird das Feld "Bedarf" in der Artikeluebersicht "Bedarfsuebersicht"
                              nach dem angegebenen Modus berechnet.
                              Hinweis:
                              Das Kommando ist nur auf den Artikelstamm anwendbar.
                              Wird keine Bedarfsberechnung angegeben, so gilt der gerade aktuelle Modus (benutzerabhaengig).
                              Selectionsmodus und Bedarfsberechnung:
                              0x001 Statt dem Gesamtbestand wird der Lagerbestand beruecksichtigt
                              0x002 Der Minimale Lagerbestand wird beruecksichtigt
                              0x004 Die in Auftrag befindliche Menge wird beruecksichtigt (+)
                              0x008 Die in Produktion befindliche Menge wird beruecksichtigt (+)
                              0x010 Bereits bestellte Menge wird beruecksichtigt (-)
                              0x020 Mengen in der Bestelliste werden beruecksichtigt (-)
                              0x040 Lagerbestaende kleiner 0 werden auf 0 begrenzt
                              0x080 Die Mindestbestellmenge wird beruecksichtigt
                              0x400 Die in Abrufauftraegen befindliche Menge wird beruecksichtigt (+)
                              0x800 Die in Abrufbestellungen befindliche Menge wird beruecksichtigt (-)

483 26.06.09 FFSTDFK: Wird bei einem Beleg die Auslandskennung im Belegkopf geandert, so kann er nicht

                              gespeichert werden ohne die Positionen anzupassen
                              (Meldung "Die PG-Auslandskennung in Position \"%s\" stimmt nicht berein! (Abbruch)").
                              Die Auslangskennung kann jetzt mit F3 in der Positionsliste angepasst werden.
                              Es wird die Meldung "Auslandskennung anpassen? (Ja/Nein)" ausgegeben. Mit J werden die
                              Positionen automatisch angepasst.
                   IFWTAB:    Eine Auswertungen ueber eine Belegdatenbank, die komplett archiviert ist, fuehrte u.U zu einer Datenbankfehlermeldung -43. Problem beseitigt.
          29.06.09 WINIFW:    Falsche Darstellung von Kundeninformationstexten mit einem % Zeichen beseitigt. Ggf. konnte auch eine Schutzverletzung auftreten.
                              Bei Lieferanten und Kundenvertraegen die Informationsanzeige in der GUI-Version implementiert.
          29.06.09 MUEHLEN:   Neuer Waagentyp BRAN+LUEBBE CSC25-IMN aktiviert (Typ 13)
                              Die Waage wird als Durchlaufwaage zur Warenannahme verwendet.
          02.07.09 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Produktion":
                                Seriennummernerfassung; Wert 0/2. Default 2
                                Beim Fertigmelden einer Produktion wird die Eingabe einer Seriennummer verlangt.
                                Mit dem Schalter Seriennummernerfassung kann die Abfrage gesteuert werden.
                                Wert 0: Es wird nie nach einer Seriennummer gefragt.
                                Wert 1: Es wird nur nach einer Seriennummer gefragt, wenn das Seriennummernfeld leer ist.
                                Wert 2: Es wird immer nach einer Seriennummer gefragt.
                   PRGLOAD:   Kommando CallDocustore() um Modus 4 erweitert
                                CallDocustore( Modus, DateiId);
                                CallDocustore( Modus, DateiId, Dateiliste);
                              Mit dem Kommando CallDocustore() kann eine Datei im Docustore aufgerufen werden.
                              DateiId enthaelt dabei die DatensatzId der Datei (Nummernfeld 32).
                              Folgende Modis stehen zur Verfuegung:
                                1: Datei ausfuehren
                                2: Datei mit notepad aufrufen
                                3: Dateianhang des aktuellen Datensatzes aufrufen. DateiId hat dabei keine Funktion.
                                   Die Datenbank muss ueber die Dateianhangsfunktion verfuegen.
                                4: Dateien an den Datensatz der aktuellen Datenbank mit der Nummer "DateiId" (Nummernfeld 32) anhaengen. Die Dateien sind in Dateiliste
                                   mit ihrem Dateipfad und Name und enthalten. Mehrere Dateien koennen mit einem ';' getrennt angegeben werden.
          03.07.09 IFWTAB:    Ein eventuell gesetzter Indexfilter wird bei den verwendeten Datenbankobjekte geloescht.
                              Mit gesetztem Filter konnte unter Umstaenden das ForEachFromTo()-Kommando keine Daten liefern.
          08.07.09 FFBETON:   Der Bildschirmschoner Logout wirkt jetzt auch in der Wiege-Erfassungsmaske

484 09.07.09 FFBETON: Waagentyp OVACO V1.20R5 Permanentanzeige umgestellt, so dass keine Wartezeiten bei der

                              Abfrage entstehen.
          13.07.09 PRGLOAD:   Kommando DoHtmlRequest() modus 16 0x0010 korrigiert:
                               Der Modus schaltete die F5 Taste ein, statt aus.
                               Ohne Modus 16 kann die Seite mit der F5 Taste refresht werden.
                               Mit dem Modus 16 ist der refresh abgeschaltet und es wird die Ersatztaste F23 gesendet.
          13.07.09 DFPRN:     Ausgabeoption T beim Ausdrucksformular implementiert.
                              Mit dem Kennzeichen T wird eine Ausgabe erst in eine temporaere Datei geschrieben (Extender .$io) und
                              nach erfolgtem Abschluss der Ausgabe in den Zieldateiname umbenannt.
                   PRGLOAD:   Kommando PrintFile() erweitert:
                                Modus 0x10000: Die Ausgabe erfolgt in eine Temporaerdatei (Extender .$io) und
                                               nach erfolgtem Abschluss der Ausgabe in den Zieldateiname umbenannt.
                   PRGLOAD:   Kommando PrintFileId() erweitert:
                              Alle Modies die beim Kommando PrintFile() vorhanden sind, koennen jetzt auch bei PrintFileId()
                              angegeben werden. Bisher waren nur die Modies bis 256 verfuegbar.
                              Hinweis:
                                Die Modies bei PrintFileId wirken nur additiv zu den bereits gesetzten Modis im angesprochenen Formular.
          14.07.09 BRAIN:     Speicherfehler bei der Fuzzysuche beseitigt (Schutzverletzung).
          15.07.09 HTMLVIEW:  Beim graphischen Druck auf Netzwerkdrucker werden diese jetzt als nicht installiert erkannt, wenn sie nicht lokal
                              vorhanden sind.

485 16.07.09 DFEDLIB3: Ein FileScanService implementiert. Die Dateien werden im Unterverseichnis FILESCAN verarbeitet.

                              Die zu verarbeitende Datei muss die Erweiterung *.in besitzen. Nach der Verarbeitung steht das Ergebnis
                              in der Datei *.out. Es wird ein Logbuch in "filescan.log" mitgeschrieben.
                              Es kann einzig das Kommando "CallFuzzySearch; files_; 5; suchwort; Worttoleranz" verarbeitet werden.
                              Es loest eine FuzzySuche aus.
                              Bei aktivem FileScanService wird in der klassischen IFW-Oberflaeche die Buchstaben FS anstatt die Sekunden
                              der aktuellen Uhrzeit in der Statusleiste angezeigt.
                   DOCUSTORE: Kommando CallFuzzySearch um Modus 7 erweitert.
                              Er hat die gleiche Funktion wie der Modus 5, schickt aber die Anfrage ueber den FileScanService ab.
                   PRGLOAD:   Neues Kommando FileScanService
                              FileScanService( Modus)
                              Modus 0: Schaltet den FileScanService aus.
                              Modus 1: Schaltet den FileScanService ein.
          17.07.09 API_MSK:   Die Requester im IFW unterstuetzen jetzt auch den 2 Monitorbetrieb
                              (Die Begrenzung der Requester erfolgt jetzt nicht mehr auf den 1. Monitor).
                   DFIMP:     Vor einem Import wird immer auf das Systemmakro .$00 des Datenbankobjekts geprueft und falls noch nicht aktiviert aufgerufen.
                   DVAPI32:   Beim David-Kalenderabgleich wird ein Zaehlrequester eingeblendet.
                   IFWTAB:    Der Standardtitel und Druckname ist jetzt der Zieldateiname.
                   DFPRN:     Ausgabeoption R beim Ausdrucksformular implementiert.
                              Mit dem Kennzeichen R wird bei einer Ausgabe in eine Datei ein Speicherrequester zur Auswahl der
                              Zieldatei geoeffnet.
                   PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                                Modus 0x20000: Wie Kennzeichen R: Bei einer Ausgabe in eine Datei wird ein Speicherrequester zur Auswahl der
                                               Zieldatei geoeffnet.
          21.07.09 API_WIN:   Aenderung des Zeitraums der Dispouebersicht oder der Monatsuebersicht in der IFW-Liste implementiert.
                              Die Tasten Shift-Rechts, Shift-Links und Alt-G sind aktiv, zusaetzlich kann auch ein Popupmenue auf der Spaltenueberschrift verwendet werden.
          22.07.09 API_MSK:   Es koennen jetzt HTML-Masken in der Maskendarstellung eingebunden werden.
                              Die HTML Maske wird als xxxxxxh0.htm im Resourcenverzeichnis (BASISDAT) gespeichert.
                              Korrespondierent dazu muss eine Abfragedatei xxxxxxh0.itb vorhanden sein. Sie uebergibt die gewuenschte Daten im
                              CSV-Format an die HTML-Maske, die dort per Javascript visualisiert wird.

486 26.07.09 FFLAGER: Die Buchungslogik beim Speichern von Lagerpositionen auf TTS-System umgestellt. Es werden jetzt alle Benutzerkollisionen beim Onlinebuchen

                              korrekt erkannt.
          28.07.09 WINIFW:    In der IFW-Liste wird die Zeile "Neuer Eintrag" auch bei leeren gefilterten Listen korrekt angezeigt.
                   STDMSK:    Ein Fehler bei der Anzeige von Druckvorlagenoptionen beim Ausdrucksformular beseitigt.
                              Bei Mehrfach-Includdateien konnte ggf. ein Ladefehler auftreten, der die Anzeige der Optionen unterdrueckte.
          29.07.09 WINIFW:    Bei Eingabe von Zeilen in benutzersortierten Uebersichten wird jetzt automatisch bei kleinen Listen (<500 Eintraege) die gesamte
                              Liste neu gelesen und sortiert.
                   DFED3LIB:  Unter bestimmten Umstaenden konnte eine Schutzverletzung bei Verwendung von Benutzerfeldern beim Beenden des IFW's vorkommen. Fehler beseitigt.
                   PROGLOAD:  ExecuteFileName() werden Dateiangaben mit %TEMP% oder "c:\temp\" automatisch auf den benutzerspezifischen
                              Pfad ergaenzt.
                   PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                                Modus 0x40000: Mit dem Kennzeichen X: Bei einer Ausgabe in eine Datei wird die Datei danach sofort ausgefuert.
          30.07.09 WINIFW:    Beim Umsortieren wird jetzt ein Zaehler in der Statuszeile angezeigt. Waehrend dem Lauf wird das IFW-Programme alle Sekunde refresht.
          04.08.09 WINIFW:    Das Sondersymbold fuer kundenspezifischen Preisgruppen wird jetzt korrekt unterstuetzt.
                   DFLIB:     Beim Beenden des IFW's und beim Aufraeumen der Datenbankobjekten werden jetzt zuerst die Benutzerfelddefinitionen geloescht.
                              Damit wird die evt. auftretende Warnung "Warnung: drop_df 'xxx' usecnt auf -1 gesetzt" unterbunden.

487 05.08.09 WINIFW: Diverse Zeichenkonvertierungen in der ITB-Programmierung um das Sondersymbold fuer kundenspezifischen Preisgruppen erweitert.

          06.08.09 IFWTAB:    IFW-Installationen ohne Archiv werden automatisch bei den ITB-Programmen beruecksichtigt.
                   DFED3LIB:  Beim Bearbeiten von Belegen mit benutzerdefinierten Feldern wird beim "Neu Schreiben" der Inhalt der Felder des vorherigen Beleges korrekt geloescht.
          11.08.09 EDIT_WIN:  Beim GDI-Druck kann die Gesamtanzahl Seiten des Formulars mit der Zeichenfolge [#P] ausgegeben werden.
                              Die Anzahl Seiten wird mit dem Abzaehlen der FromFeed Zeichen in der Druckdatei ermittelt.
          31.08.09 DATENSP:   Beim Lesen von Listen aus einer Datei wird die reservierte Speichergroesse um ReSize erhoeht, statt um 1
                   BRAIN:     Das Kommando CallFuzzySearch() beim Reload optimiert.

488 09.09.09 BRAIN: Den Einlernprzess von FuzzySearch bei sehr grossen Datenmengen beschleunigt.

                              Die Speicherverwaltung in FuzzySearch bei sehr grossen Datenmengen optimiert (>5Mio Verknuepfungen).
                              Die Fuzzy-Dateien enthalten jetzt einen zusaetzlichen Speicherbereich. Beim Erstmaligen einlernen wird der 
                              Speicherbereich neu erstellt, was zu einer einmaligen groesseren Ladezeit fuehrt.
                              Waehren der Erstellung wird in der Statuszeile ein Zaehler angezeigt.

489 10.09.09 BRAIN: Speicherverbrauch des Fuzzy-Datennetzes halbiert.

                              Die .EST Dateien werden jetzt in einem neuen Format gespeichert.
                              Die bisherigen James-Dateien werden bei der Formatumstellung als jamesxxx.v00 im Verzeichnis USER gesichert.
          16.09.09 BRECLIB2:  Suchlauf mit aktivem Linearfilter korrigiert. U.U. konnte bei unerfuellbaren Filterkkonditionen eine Endlosschleife eintreten.
                   PRGLOAD:   Kommando AssignStoreToDocument erweitert
                              AssignStoreToDocument( Modus);
                              AssignStoreToDocument( Modus, Artikelkennzeichen);
                              Das Kommando ordnet den Waren auf einem Beleg die Entnahmelager zu.
                              Nur mit dem speziellen IFW-Modul "Lagersegmente" verfuegbar.
                              Mit dem optionalen Parameter "Artikelkennzeichen" werden nur Artikel zugeornet, die eines der angegebenen Kennzeichen enthaelt.
                              Modus:
                                 0 (0x0000) alle Laeger ersetzen
                                 1 (0x0001) nur noch nicht zugeordnete Laeger setzen, ansonsten alle Laeger ersetzen
                                 2 (0x0002) Meldungen anzeigen (der Modus 2 ist zur Zeit inaktiv, es sind noch keine Meldungen vorhanden)
                                 4 (0x0004) Beleg Aenderung: Altemenge beruecksichtigen
                              Hinweis:
                                Die Ausgangsdatei muss ein temporaerer Beleg sein.
                                Sie kann vom Belegkopf oder von den Belegpositionen aus aufgerufen werden.
          17.09.09 WINIFW:    Beim Aufruf von Makros in einer offenen IFW-Maske wird der aktuelle Maskeninhalt korrekt an das Makro uebertragen
                              und nach Beenden des Makros die Eingabemaske sofort refresht.

490 23.09.09 WWW: Standleitungsumstelleung im Hause LPC: Standardgatewayadresse fuer den IFW-Proxy von 213.182.138.50 auf 80.149.86.50 umgestellt. 491 25.09.09 IFW: Das IFW-Programm enthaelt jetzt intern eine Signatur. Wird es veraendert, so wird der Startvorgang des Programms abgebrochen und

                              das Programm nach Programmname.exe.defect umbenannt.
          30.09.09 BRECLIB:   Datenbankzugriffe werden jetzt nur noch ueber absolute Pfadangaben vorgeommen. Damit werden Fehler in Verbindung mit Druckertreibern, die den
                              Pfad waehrend des Ausdrucks verstellen unterbunden.
                   DFPRN:     Ausgabeoption I beim Ausdrucksformular implementiert.
                              Mit dem Kennzeichen I wird die Vorlage immer als ITB-Programm ausgefuehrt.
                   PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                                Modus 0x80000: Wie Kennzeichen I: Die Vorlage wird immer als ITB-Programm ausgefuehrt.
                   DFPRN:     Beim HTML-Druck wird der Listendrucke der in mehrere Ausgaben zerteilt wird unterstuetzt (z.B. Mahnungen, Kommando @C in den Druckvorlagen).
                              Die HTML-Ausgaben werden einzeln erzeugt und die Kennzeichnung aller Eintraege nach der letzten Ausgabe vorgenummen.
                   API_MFRM:  Ueber das Popupmenue eines Termins im Terminkalender sind jetzt alle Makrofunktionenen mit Positionnummer 00Y?
                              erreichbar.
          01.10.09 DFIMP:     Beim Import kann als Dateiname das Wildcardsymbol '*' eingesetzt werden. Es werden dann alle passenden Dateien nacheinander eingelesen.
                              Die Reihenfolge ist nach Dateiname aufsteigend.
          08.10.09 PHP:       Erweiterung der PHP-Serverkommandos:
                              100: HTML-Kommando var erg = windows.external.xxx() und var erg = windows.external.xxx
                                   Senden   : 100 funktionsnummer[[[|parameter1]|parameter2]|parameter3]...
                                   Empfangen: 100 Rueckgabewert als String
                                   Hinweis  : externalcall       xxx wird als Funktionsnummer uebertragen.
                                                                 Der evt. in den Parameter aufgefuehrte Wert "winHandle" muss auf 10006 gesetzt werden.
                                   Funktionsnummern:
                                    1 "UserName",                      //1  Loginname
                                   28 "DeskBackgroundImage",           //28 Bildname
                                   29 "DeskBackgroundImageMode",       //29 0 Zentriert, 1 Stretch
                                   31 "CalculatorGetVar",              //31 CalculatorGetVar( index);       //index 0-9, 0 ist die Uebergabe-/Rueckgabevariable
                                   32 "CalculatorSetVar",              //32 CalculatorSetVar( index, val);  //index 0-9, 0 ist die Uebergabe-/Rueckgabevariable
                                   33 "CalculatorRndVar",              //33 CalculatorRndVar( val, rnd);
                                   37 "ExecuteProgram",                //37 makro ausfuehren ExecuteProgram( winHandle, "ProgramName", "Label");
                                   43 "GetPerformanceMonitorData",     //43 GetPerformanceMonitorData( winHandle, func);              func 0:modeSek; 1:date; 2:barCnt; 3:Text allgemein; 4:skalaMS
                                   44 "GetPerformanceMonitorItemData", //44 GetPerformanceMonitorItemData( winHandle, func, column);  func 0:text; 1:Basiswert x in 10000, Wert MS, Zeit SS:MM:SS, Anzahl; 2:LastPeak x in 10000, Wert MS, Zeit SS:MM:SS, Anzahl; 3:Peak x in 10000, Wert MS, Zeit SS:MM:SS, Anzahl; 4:ErrorCnt, Zeit SS:MM:SS
                                   45 "UserFullName",                  //45
                                   46 "MandantName",                   //46
                                   47 "IFWVersion",                    //47
                                   48 "IFWDirectory",                  //48
                                   49 "IFWExeFileName",                //49
                                   50 "IFWLicenceUse",                 //50
                                   51 "IFWCompany",                    //51
                                   52 "IFWSerialNumber",               //52
                                   53 "UserFlags",                     //53
                                   54 "FileExist",                     //54
                                   55 "MandantNumber",                 //55
                                   56 "FormatDate",                    //56 FormatDate( date); ret: "0;formatedDate;dowString" ok, "1;originalDate;" invalid, "2;formatedDate;dowString" valid, but out of range, "3:formatedDate;dowString" valid, but past
                                   57 "FormatTime",                    //57 FormatTime( time); ret: "0" ok, "1" invalid
                                   59 "MandantBackgroundColor",        //59
                                   62 "ReadFile",                      //62 ReadFile( winHandle, filename);
          08.10.09 PHP:       Erweiterung der PHP-Serverkommandos:
                              101: HTML-Kommando windows.external.xxx = wert
                                   Senden   : 101 funktionsnummer[|parameter1]
                                   Empfangen: 101 -
                                   Hinweis  : externalput        xxx wird als Variablennummer uebertragen.
                                                                 Gueltige Variablennummer sind 1000 bis 1031 fuer die Vt Variablen.
          15.10.09 IFWTAB:    Beim Inititalisieren der Datenbankobjekte der IFW-Tabelle wird jetzt fuer jedes beteiligte Objekt das Systemmakro $00 aufgerufen.
          19.10.09 STDPRJ_:   Die Datenbank group.rec wird jetzt verschluesselt.
                   PRNLIB3:   Zuweisung oder Funktion zu einer Variable mit : bei einem Fehler auf 0 gesetzt.
          19.10.09 API_MFRM:  Das IFW-Kommandos fuer HTML "windows.external.ReadFile( "Dateiname")" kann jetzt mehr als 64k grosse Dateien lesen.

492 20.10.09 PRNLIB3: Zuweisung oder Funktion zu einer Variable mit : bei einem Fehler korrigiert. Die Variable bleibt unveraendet.

                   IFWTAB:    AddColumn() Typ 0 um die Vorgabe einer maximalen Zeilenhoehe erweitert.
                              Mit dem Wert Textparameter im Kommando "AddColumn( Spaltenname, CT_Text, Textparameter)" 
                              kann maximale Textgroesse und die maximale Spaltenhoehe bestimmt werden.
                              Die Einerwerte von Textparameter ergibt die maximale Zeilenhoehe, der Rest ergibt die maximale Textgroesse.
                              Beispiele:
                               10003 -> maximale Textgroesse 10000, maximale Zeilenhoehe 3
                                7256 -> maximale Textgroesse  7250, maximale Zeilenhoehe 6
                                1000 -> maximale Textgroesse  1000, maximale Zeilenhoehe unbegrenzt.
                              Die tatsaechliche Zeilenhoehe ergibt sich aus Texten mit Zeilenumbruch in der Zelle.
                              Die maximale Textgroesse ist die Anzahl Zeichen die der Text maximal in der Spalte lang sein kein.
          21.10.09 IFWTAB:    Beim Rueckwaerts durchlaufen von Datensaetzen mit ForEachFromTo() Modus 1, werden jetzt die Folgesegmente einer
                              Sortierfolge mit dem entsprechenden Wert vorbesetzt.
                              Damit wird der korrekte 1. Datensatz kleiner gleich dem Startwert immer gefunden.
                   IFWTAB:    Bei der Ausgabe der Tabelle an Excel wird in den Fliesstexten der Zeilenumbruch von CR/LF auf LF konvertiert.
                   FAKT.INI:  Schalter "Ablageverzeichnis" in der FAKT.INI in der Sektion "Docustore":
                              Wird als Ablageverzeichnis ein Pfad mit %TEMP% angegeben (z.B. %TEMP%\IfwPdf),
                              so wird nicht mehr der Computername in der Pfadangabe automatisch verwendet sondern der Pfad direkt im temporaeren Windowverzeichnis
                              erstellt und verwendet.
                              Diese Angabe ist in Verbindung mit Terminalserverumgebungen anzuwenden.
                              Der IFW-Pdf Drucker muss als Zielverzeichnis die gleiche Angabe mit %TEMP% enthalten (z.B. %TEMP%\IfwPdf).
          23.10.09 PRGLOAD:   Die Lokalisierung der Makroprogramme geaendert: Makroangaben mit Pfadangabe ohne fuehrendem "..\\" werden
                              vom IFW-Programmpfad aus aufgerufen.
                   PRGLOAD:   Die Lokalisierung der Dateien bei den Kommandos PrintFile, Gossub und Goto geaendert:
                              Dateiangaben mit fuehrendem ".\" werden relativ zum Pfad des ausgefuehrten Makros aufgerufen.
          27.10.09 FAKTMAIN:  Es werden jetzt auch Laufwerksbuchstaben als Verzeichnis fuer "Eigene Dateien" unterstuetzt.

493 28.10.09 WINIFW: Beim Selektierenmehrere Datensätze für die gemeinsame Weiterverarbeitung auswählen / filtern und bei "meine Listeselbstdefinierte Listenausgabe in die IFW Tabelle. ueber Maske erstellen" sind die F1-Funktionen auf den Feldern der Eingabemaske deaktiviert.

                   DFED2LIB:  Beim Selektieren und bei Massenaenderungen werden jetzt im Logbuch Eintraege mit Fnc: mitgeschrieben.
          30.10.09 DFPRN:     Beim Drucken mehrere selektierten Eintraege als Einzeldokumente auf HTML wurde in der klassischen Version mehrfach das gleiche Dokument
                              gedruckt. Im Zaehlrequester wurde faelschlicherweise die lila Datensatzzeile eingeblendet. Problem beseitigt.
                   WINIFW:    Bei der Vertragsabrechnung von Wartungvertraegen oder Copyshop-Vertraegen wird jetzt ein Zaehlrequester eingeblendet.
                   WINIFW:    -Die Artikeltextmaske wird bei fehlenden Aenderungsrechten jetzt korrekt inaktiv dargestellt.
                              -Beim Verlassen der Artikeltextmaske mit ESC wird bei der Frage nach Verwerfen beim Abbruch des Verlassens die Maske nicht mehr geschlossen.
          03.11.09 FFWEG:     Beim Schreiben von Verbindlichkeiten zu Wareneingaengen wird eine Pruefung der Uebereinstimmung der Lieferscheinnummer nicht vorgenommen.
                              Damit werden bereits zugeordnete Verbindlichkeit auch dann erkannt, wenn im Wareneingang die Lieferscheinnummer veraendert wird.
          05.11.09 HTMLVIEW:  -Beim HTML-Druck wird jetzt fuer den IE 8 automatisch die Funktion "Hintergrundbild und Graphik Drucken aktiviert.
                              -Die Schriftgroesse wird vor jedem Druck auf normal gestellt.

494 06.11.09 PRGLOAD: Neues Kommando NewMessage

                              NewMessage()
                              NewMessage( "Programmname")
                              NewMessage( , "Label")
                              NewMessage( "Programmname", "Label")
                              -Ruft die Eingabemaske fuer eine neue Nachricht auf (Strg-N). 
                               Vor dem Aufruf wird das angegebene Programm aufgerufen. Mit dem Programm kann die Eingabemaske initialisiert werden.
                              -Wird kein Programmname angegeben, so wird das Label in der gleichen Programmdatei aufgerufen.
                              -Variablen sind als "Programmname" und "Label" erlaubt, man kann also auch indirekte Aufrufziele definieren.
                              -Wir die Eingabemaske mit ESC abgebrochen und ist eine Abort-Sprungmarke (SetAbort()) gesetzt, so wird diese angesprungen.
                               Ist keine gesetzt wird das Makro weiter ohne Meldung ausgefuehrt.
          07.11.09 VIDF:      Einlesen von XML-Dateien in die IFW-Tabelle angepasst.
                   WINIFW:    Umlaute der Textueberschriften der Nachrichten korrigiert.

495 10.11.09 WINIFW: -Die Zusammenfassung in der Eingabemaske kann nur noch mit gespeichertem Datensatz aufgerufen werden.

                              -Datenvorgaben von Initialisierungsmakros $03 bleiben jetzt korrekt beim Kopieren von Datensaetzen erhalten.
                   FFWEG:     Vorgabefehler beim Schreiben von Verbindlichkeiten zu Wareneingaengen korrigiert.
                   FAKTMAIN:  Pruefung des aktuellen Arbeitsverzeichnis beim Drucken oder Mailen von Belegen korrigiert.
                              Trat der Vorgang rekursiv auf, so wurde die IFW-Applikation beendet. Problem beseitigt.
                   WINIFW:    Refresh der Materialliste in Belegpositionen korrigiert.
          12.11.09 STDMSK:    Abrufen eines Druckertreibers in der Druckerliste korrigiert.
          20.11.09 FFBDE:     Uebergabe der Personalnummer beim Importieren in das BDE-Logbuch in die Produktionspositionsmaske korrigiert.

496 25.11.09 PRGLOAD: Makrokommando ProdCompletion erweitert:

                              ProdCompletion( Modus);
                              ProdCompletion( Modus, Seriennummer);
                              ProdCompletion( Modus, Seriennummer, Ziellager);
                              Damit kann ein Produktions Masterabschluss durchgefuehrt werden. Ueber eine
                              Schleife von selektierten Produktionen kann so der Abschlussvorgang automatisiert werden.
                              Mit Seriennummer kann das Seriennummernfeld vorgegeben werden.
                              Mit Ziellager kann das Lager auf das dass Fertigpordukt gebucht werden soll vorgegeben werden.
                              Modus 0: Evt. auftretende Meldungen aus Pruefmakros werden angezeigt.
                              Modus 1: Es werden keinerlei Meldungen angezeigt.
                              Modus 2: Beim Masterabschluss werden keine Istwerte der Positionen eingetragen. Nur der Istwert des produzierten Artikels.
                              Modus 3: Modus 1 und 2 zusammen.
                              Beim Modus ohne Meldung wird die interne Meldung in der Textvariable Vt gespeichert.
                              Ist Vt leer, so war der Vorgang erfolgreich.
                   PRGLOAD:   Neues Makrokommando ProdSplit:
                              ProdSplit( Modus, Menge);
                              Es wird die Menge als Fertiganteil einer Produktion abgesplittet. Die dabei entstehende
                              Produktion des Splittanteils wird nicht abgeschlossen.
                              Modus 0: Evt. auftretende Meldungen werden angezeigt.
                              Modus 1: Es werden keine Meldungen angezeigt
                              Beim Modus ohne Meldung wird die interne Meldung in der Textvariable Vt und die entstehende
                              Produktionsnummer in Vt1 gespeichert.
                              Ist Vt leer, so war der Vorgang erfolgreich.
                   DFPRN:     Beim graphischen Formular-Setup wird jetzt bei Tabellenausgaben die Auswahl ob alle Eintraege oder
                              nur die selektierten Eintraege ausgegeben werden sollen anhand der Option S in den Druckvorlagenoptionen
                              vorbesetzt. Bisher wurde immer "selektierte Saetze" vorbesetzt.
                   FFPROD2:   Beim Splitten von Produktionen wird jetzt bei einem Fehler bis zu 3 mal versucht den abgesplitteten Teil zu speichern.
                              Kann eine Speicherung nicht erfolgen, so wird der Benutzer wie bisher aufgefordert, den Teil manuell abzuspeichern.
          01.12.09 PRNLIB:    Druckvorlagenausgaben vom Typ @H"Name",Anzahl; mit einer Anzahlangabe >32767 korrigiert.
          02.12.09 PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                                Modus 0x100000: Ein ITB-Programm gibt die Daten in einen HTML-String aus, nicht in die Datei.
                                                Die angegebene Datei enthaelt dabei keine Daten, es wird aber der ITB-Parametersatz in die Datei geschrieben.
                   API_MFRM:  HTML-Kommando ExecuteProgram() erweitert:
                              Das Kommando hat als Rueckgabewert den HTML-String des darin mit PrintFile oder PrintFileID zuletzt 
                              aufgerufenen ITB-Programms mit der Option 0x100000 oder dem Befehl SetOutputModeHTML( TRUE).
                              Sollte kein ITB-Programm oder nicht die Option oder der Befehl vorhanden sein so ist der
                              Rueckgabewert leer.
          04.12.09 WINIFW:    -Datenvorgaben von Initialisierungsmakros $01 $02 bleiben jetzt korrekt beim Bearbeiten von Datensaetzen erhalten.

497 07.12.09 PRNLIB3: Druckvorlagenkommandos [.Document208<] und [.Document209<] angepasst

                              Die Kommados geben den Nettowert und den Mehrwertssteuerwert eines Ausgangsbelegs (z.B. Rechnung) aus.
                              Die Werte entsprechen in der Regel den Werten aus dem Feld C208 und C209.
                              Wird eine Bruttorechnung (PG 0b) geschrieben und sind Produkte beider Mehrwersteuerklassen vorhanden,
                              kann durch die Einzelgerundete Ausgabe der Mehrwertssteuerbemessungsgrundlagen und Steueranteile ein
                              Cent-Differenz zwischen der Summe der genau gerechneten Mehrwertssteueranteilen und der Summe der gerundeten
                              Anteilen auftreten. Um auf dem Rechnungsdruck die Summe der gerundeten Anteile auszuweisen kann fuer den
                              Nettowert anstatt das Feld [C208<] der Wert aus [.Document208<] ausgegeben werden. Fuer die Steuer
                              kann das Feld [C209<] der Wert aus [.Document209<] ausgegeben werden.
                              Folgende Voraussetzungen muessen erfuellt sein damit die Werte anderst ausgewiesen werden als die Originalwerte
                              aus C208 und C209:
                              - Auf dem Beleg muss das Feld 200, 201, 208, 209 und 210 vorhanden sein. Es wird ein Fehler ausgegeben.
                              - Es muss ein Bruttobeleg sein (Zeichen 'b' in der Preisgruppe enthalten).
                              - Es koennen keine, eine oder beider Steuerarten vorhanden sein.
          10.12.09 WINIFW:    Sammelausbuchungen von OP und Verbindlichkeiten in der IFW-FIBU korrigiert.
                   DFPRN:     Das Bearbeiten von Druckvorlagen und Makros wird jetzt auch im Unterverzeichnis "module" unterstuetzt.
          28.12.09 DFED2LIB:  Beim Speichern eines Datensatzes mit Primaerkey und Nummernkollission wird der Primaerkey wieder geloescht.
          07.01.10 WINIFW:    Vordefinierte Summenbildungen von selektierten Eintraegen werden jetzt im Fentertitel der Liste angezeigt.
          11.01.10 IFW:       Kunden, Kundenansprechpartner, Lieferanten, Lieferantenansprechpartner, Lager, Lieferbedingungen, Zahlungsbedingungen und 
                              Artikellisteneintraege koennen mit leeren Nummernfeld nicht mehr gespeichert werden.
          13.01.10 DF.H:      Gruppenmaximum eines Mandantensynchronisationkreis von maximal 5 auf 9 erhoeht.
                   DFIMP:     Wird beim Kopieren von Artikelstuecklisteneintraegen mit Copy und Paste Eintraege mit Primaerkeyfeld kopiert, wurde bisher
                              das Speichern mit einer Fehlermeldung wegen doppelten Primaerkey-Eintraegen unterbunden.
                              Der Primaerkey wird jetzt beim Einfuegen geloescht. Problem beseitigt.

498 15.01.10 WINLIB: Bei Eingabe von Zeichen in ein StringArray-Feld wird jetzt bei einer Eingabelaenge von 0 Zeichen (loeschen) ein Null-Byte an die

                              Position geschrieben.
          15.01.10 DF.H:      Umstellung der Datenbank-Handle-Verwaltung, Merkmal DFHANDLE_DFNRFULLMASK.
          16.01.10 DF.H:      Umstellung der Datenbank-Handle-Verwaltung, Merkmal DFHANDLE_DFNRMASK.
          18.01.10 DF.H:      Umstellung der Datenbank-Handle-Verwaltung, Merkmal DFHANDLE_MINORMASK.
          18.01.10 FFFIRUMS:  Bei der IFW-Installation fuer Muehlenbetriebe wird die Kundenkontraktstatistik bei einem Jahresabschluss nicht mehr veraendert.
                              Aenderung vom 20.01.09 war unwirksam.
          19.01.10 PRNLIB:    Neues Druckvorlagenkommando [Vt:z[Vt<]]
                              Mit der Zuweisung :z zu einer Textvariable koennen die aktuall im Speicher geladenen Datenbankresourcen abgerufen werden.
                              Loeschen sie zuerst Vt und rufen sie dann mit dem Aufruf [Vt:z[Vt<]] die Abfrage auf.
                              Es wird dabei der erste Eintrag der Datenbankobjekte ausgegeben.
                              Wiederholen Sie den Aufruf [Vt:z[Vt<]] mit unveraendertem Vt-Inhalt. Es wird jeweils der naechste Eintrag zurueckgegeben.
                              Sind alle Eintraege abgerufen, wo gibt [Vt:z[Vt<]] zuletzt eine leere Variable Vt zurueck.
                              Der Rueckgabewert ist ein CSV-String (Strichpunkt-getrennt) mit folgenden Dateninhalten:
                               lfdNr; accessminorhandle; dfnr; dh32; rec.flags; df.flags; df.flags2; usecnt; rec.name; lasttimeused;
                               rec.reclen; rec.recbufflen; rec.file.reccnt; rec.akt_key; rec.rootmai.code; rec.rootmai; rec.m_wRootKeyLen;
                               rec.rootmai2.code; rec.rootmai2
                              Beispiel:
                               000;0002;0001;00004001;2040;2060100c;00000000;00;"SYSDAT\User.rec";496724;830;6632;19;1;-1;"";0;-1;""
          19.01.10 PRNLIB:    Neues Druckvorlagenkommando [Vt:Z[Vt<]] 
                              Mit der Zuweisung :Z zu einer Textvariable koennen die aktuall im Speicher geladenen dynamischen Datenbankobjekte abgerufen werden.
                              Loeschen sie zuerst Vt und rufen sie dann mit dem Aufruf [Vt:Z[Vt<]] die Abfrage auf.
                              Es wird dabei der erste Eintrag der Datenbankobjekte ausgegeben.
                              Wiederholen Sie den Aufruf [Vt:Z[Vt<]] mit unveraendertem Vt-Inhalt. Es wird jeweils der naechste Eintrag zurueckgegeben.
                              Sind alle Eintraege abgerufen, wo gibt [Vt:Z[Vt<]] zuletzt eine leere Variable Vt zurueck.
                              Der Rueckgabewert ist ein CSV-String (Strichpunkt-getrennt) mit folgenden Dateninhalten:
                               lfdNr; handle; m_dh32Parent; pdf.flags; pdf.df_flags; usecnt; pdf.file
                              Beispiel:
                               000;00c8;00004009;00000a01;00005100;01;"Kunden29"
          20.01.10 FFFIRUMS:  Beim Jahresabschluss wird waehrend der Artikelbearbeitung der Online Forecast und Listenkalkulationsmodus zwangsdeaktiviert.
                              Damit sollte eine wesentlich hoehere Verarbeitungsgeschwindikeit beim Bearbeiten der Artikelstammdaten waehrend des Jahresabschluss
                              vorhanden sein.
          21.01.10 FAKTSUB:   Mahnparameter koennen jetzt auch mit F2 gespeichert werden.
                   WINIFW:    Menuepunkt "Mahnparameter veraendern" und "Mehrwerststeuerschluessel" aktiviert.

499 21.01.10 TAPIUTIL: Eingehene Telefonanrufe ueber die TAPITelephony Application Programming Interface -Schnittstelle werden gemeldet.

                              Am Arbeitsplatz muss TAPI-Einstellung in der Arbeitsplatz INI-Datei vorgenommen werden.
                              Sie Befindet sich im IFW-Verzeichnis "User" mit dem Name "ini_xxxx.ini" wobei xxxx fuer den Rechnername
                              steht. Dort kann in der Sektion "Settings#ssssssss], wobei ssssssss fuer die Seriennummer steht, mit dem Wert
                              "TAPIDeviceNameIncomming=xxx" der Name der abzuhoerenden TAPI anegegben werde.
          22.01.10 API_MFRM:  Neues IFW-Kommandos fuer HTML aktiviert:
                              windows.external.GetTapiDataIn();
                              Gibt den aktuellen Status per TAPI eingehender Gespraeche wieder. Das TAPI-Device muss mit
                              "TAPIDeviceNameIncomming=xxx" in der Benutzer-Ini-Datei hinterlegt sein.
                              Als Rueckgabewert ist ein CSV-String (Tabulator-getrennt) mit folgenden Dateninhalten:
                               Leitungszustand; erkannte AdressId aus der Kommunikationsdatenbank; Datum Uhrzeit; Telefonnummer; erkannter Name
                              Beispiel:
                               1\t23123\t25.01.2010 11:23:12\t012345678\tTEL Musterfirma, Herr Mustermann
                              Der Leitungszustand kann den Wert 0 (warten), 1 (klingeln) oder 2 (verbunden) annehmen.
          22.01.10 API_MFRM:  Neues IFW-Kommandos fuer HTML aktiviert:
                              windows.external.GetMaskData( winHandle, maskIndex);
                              Der Aufruf wird verwendet um Daten fuer den Reiter "Zusammnefassungs" in der Datenbankmaske aufzubereiten.
                              Er ruft ein ITB-Programm auf, das die Daten des aktuellen Datensatzes der aktiven Datenbank ausgibt. Das Programm
                              heisst wie die Zusammenfassungs-HTML Seite nur mit der Dateierweiterung ITB. Sie liegt im gleichen Verzeichnis wie
                              die HTML-Datei.
                              Als Rueckgabewert wird der HTML-CSV String mit den Daten zurueckgegeben.
                              Beispiel:
                               Im Kundenstamm ist eine Zusammenfassungsuebersicht aktiviert. Die zugehoerigen Dateinamen lauten:
                               HTML Datei -> basisdat/KundenH0.htm
                               ITB Datei  -> basisdat/KundenH0.itb
          25.01.10 PRGLOAD:   Kommando AssignStoreToDocument erweitert
                              AssignStoreToDocument( Modus);
                              AssignStoreToDocument( Modus, Artikelkennzeichen);
                              Das Kommando ordnet den Waren auf einem Beleg die Entnahmelager zu.
                              Nur mit dem speziellen IFW-Modul "Lagersegmente" verfuegbar.
                              Mit dem optionalen Parameter "Artikelkennzeichen" werden nur Artikel zugeornet, die eines der angegebenen Kennzeichen enthaelt.
                              Modus:
                                 0 (0x0000) alle Laeger ersetzen
                                 1 (0x0001) nur noch nicht zugeordnete Laeger setzen, ansonsten alle Laeger ersetzen
                                 2 (0x0002) Meldungen anzeigen (Meldung nur in Modus 16)
                                 4 (0x0004) Beleg Aenderung: Altemenge beruecksichtigen
                                16 (0x0010) Grossmengen >60% der Sollmenge werden wenn moeglich aus dem Ueberlaufplaetzen geholt (Plaetze D).
                                            Die Entnahme aus einem Ueberlaufplatz erfolgt nur, falls die Menge im Pickplatz vorhanden ist, aber
                                            die Grossmenge ihn fast leerraeumen wuerde. Ist keine ausreichende Menge im Pickplatz vorhanden,
                                            so erfolgt keine Zuordnung aus dem Ueberlaufplatz und es wird keine Lagerzuordnung vorgenommen.
                                            Meldung "Groámenge aus šberlaufplatz xxx entnehmen? (Ja/Nein)" wird mit "Meldung anzeigen" ausgegeben.
                              Hinweis:
                                Die Ausgangsdatei muss ein temporaerer Beleg sein.
                                Sie kann vom Belegkopf oder von den Belegpositionen aus aufgerufen werden.
          29.01.10 DFPDF:     Dynamische generierte Verweisfelder auf Dateianhaenge und benutzerdefinierte Felder erhalten jetzt vorrangig
                              einen Link auf das Primaerkey Feld 145 falls vorhanden. Ansonsten wie bisher auf das Nummernfeld 32.
                              Bisher waren automatisch generierte Dateianhaenge oder benutzerdefinierte Felder nicht auf Datenbanktabellen wie
                              Kundenansprechpartner oder Artikelstuecklisten moeglich. Mit der neuen Regelung koennen auch Verweise in diese
                              Art von Dateien verwaltet werden.

500 02.02.10 STDPRJ: Gepinnte Menuepunkte des Favoritenmanager verschwinden nicht mehr gelegentlich.

          04.02.10 FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "Statistik":
                                LieferantenbewertungBerechnungExtern: Wert 0/1. Default 0.
                                Mit dem Wert 1 wird die Lieferantenbewertung mit dem IFW-internen Berechnungssystem
                                mit dem Monatsabschluss automatisch berechnet und im Lieferantenstamm abgepeichert.
                                Mit dem Wert 0 ist die automatische Berechnung deaktiviert und es kann ueber eine
                                externen Berechnungsmethode eigene eigene Berechnungsformel angewendet werden. Mit dem
                                Wert 0 sind ebenfalls die Berechnungsfunktionen auf der Lieferantenmaske abgeschaltet.
          11.02.10 WINIFW:    Beim Schliessen eine Requesters ohne offenen Fenster wird das Hauptmenu auf der letzten Position geoeffnet.

501 12.02.10 FIBU: Das FIBU-Archiv kann jetzt im IFW direkt per Loginname aufgerufen werden. Dazu wird der Loginname mit

                              dem Kommando &fibuJAHR erweitert.
                              Beispiel Loginname:
                                gast&fibu2004 oder GAST&FIBU2004 
                              Nach dem Login werden die Buchhaltungsdaten vor der Jahresuebertragung des ausgewaehlten Jahres angezeigt.
                              Die Daten koennen nur angesehen, gedruckt oder per IDEA-Export ausgegeben werden.
                              Es sind nur Buchhaltungsmenuepunkte verfuegbar.
          17.02.10 PHP:       PHP-Manager auf MultiIpPorts umgestellt. Parallel eingehende Kommandos werden ueber eine Session verarbeitet.
          18.02.10 API_MFRM:  HTML-Kommando ExecuteProgram() erweitert:
                                ExecuteProgram( winHandle, "ProgrammName", "Label", "Parameter");
                              -Der Wert Parameter kann eine mit TAB (0x07) getrennte Zeichenfolge enthalten.
                               Jeder getrennte Teil wird von Vt bis maximal Vt31 eingespeichert. Damit koennen mehrere Parameter in Vt Variablen 
                               mit einem Aufruf uebergeben werden.
                              -Das Kommando hat als Rueckgabewert den HTML-String des darin mit PrintFile oder PrintFileID zuletzt 
                               aufgerufenen ITB-Programms mit der Option 0x100000 oder dem Befehl SetOutputModeHTML( TRUE).
                               Sollte kein ITB-Programm oder nicht die Option oder der Befehl vorhanden sein so wird der
                               Inahlt der Vt-Variable zurueckgegeben.
          03.03.10 TAPIUTIL:  Die Nummernerkennung bei eingehene Telefonanrufe ueber die TAPI-Schnittstelle ueberarbeitet.
                   TOBITFW:   -Umsetzung der eingehenden Texte ueber einen UTF8-Konverter. Eurozeichen korrigiert.
                              -Die Betreffzeile wird jetzt von Steuerzeichen bereinigt.
                   WINIFW:    Beim Loeschen einer Nachricht oeffnet sich jetzt nicht mehr das Hauptmenu
          04.03.10 WINIFW:    Im Popupmenue koennen jetzt alle Formular oder Druckmenuepunkte mit der Leerzeichentaste aufgerufen werden.
                              In der Formular oder Makroliste (Leerzeichentaste) kann als Druckvorlagensupervisor die Druckvorlagen oder
                              Makrodatei mit der Returntaste aufgerufen werden.
                   FFWARTVE:  Bei der automatische Vertragsabrechnung werden jetzt Rechnungen mit mehr als 99 Positionen korrekt verarbeitet.
                              Im Windows IFW wird der Zaehlrequester beim Modus "Jede Rechnng Anzeigen" korrekt ausgeblendet.
                   FFCPSHOP:  Bei der automatische Vertragsabrechnung werden jetzt Rechnungen mit mehr als 99 Positionen korrekt verarbeitet.
                              Im Windows IFW wird der Zaehlrequester beim Modus "Jede Rechnng Anzeigen" korrekt ausgeblendet.

502 12.03.10 WINIFW: Docustore um einen Twain-Treiber zum direkten Einscannen von Dokumenten erweitert.

                   FAKT.INI:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                                Tageslogbuecher: Wert 0/1. Default 0.
                                Mit dem Wert 1 werden die Logbuchdateien pro Tag gefuehrt.
                                Mit dem Wert 0 entsteht pro Monat eine Logbuchdatei
                   ERRORLOG:  Die Daten im Performance-Logbuch erweitert. Es wird jetzt zusaetzlich die Benutzernummr, Die Prozess-ID und die
                              Zeiten von WAITLOCK-Zugriffen mitprotokolliert.
          16.03.10 WINIFW:    Tasten und Mauseingaben in der Eingabemaskten aktuallisieren die Zeit vom Autologout. Bisher wurde nur 
                              die Listenuebersicht beruecksichtigt.

503 17.03.10 PRGLOAD: Kommando NewMessage erweitert

                              NewMessage()
                              NewMessage( "Programmname")
                              NewMessage( , "Label")
                              NewMessage( "Programmname", "Label")
                              NewMessage( "Programmname", "Label", Modus)
                              -Ruft die Eingabemaske fuer eine neue Nachricht auf (Strg-N). 
                               Vor dem Aufruf wird das angegebene Programm aufgerufen. Mit dem Programm kann die Eingabemaske initialisiert werden.
                              -Wird kein Programmname angegeben, so wird das Label in der gleichen Programmdatei aufgerufen.
                              -Variablen sind als "Programmname" und "Label" erlaubt, man kann also auch indirekte Aufrufziele definieren.
                              -Wir die Eingabemaske mit ESC abgebrochen und ist eine Abort-Sprungmarke (SetAbort()) gesetzt, so wird diese angesprungen.
                               Ist keine gesetzt wird das Makro weiter ohne Meldung ausgefuehrt.
                              -Modus 0x0000 oeffnet die Eingabemaske zum bearbeiten
                              -Modus 0x0001 speichert den Satz ohne Bearbeitung sofort ab.
                                            Wird ein empfaenger angegeben, so wird die Nachricht ohne Nachfrage an den Empfaenger bewegt.
          18.03.10 API_MFRM:  HTML-Kommando ExecuteProgram() erweitert:
                              Uebergebene Parameterwerte werden von ANSI nach Oem konvertiert.
                   PRGLOAD:   Kommando ExecuteItemFunction() erweitert
                              ExecuteItemFunction( Feldnummer);
                              ExecuteItemFunction( Feldnummer, Modus);
                              Felder mit Listenauswahlfunktion werden jetzt unterstuetzt (z.B. Kundenansprechpartner-Id)
                              Modus: 1 Nicht vorhandene Datensaetze werden nicht mit Fehler -409 gemeldet.
                              Modus: 2 Es wird nicht versucht ueber den Pfad "Nummer" (Feldnummer 32) zuzugereifen,
                                       sondern mit der Zugriffsnummer des angegebenen Feldes.
                              Modus: 4 Es werden keine Benutzerhinweise ausgegeben, falls beim Feldabruf internen Hinweise vorhanden sind.
                   PRGLOAD:   Kommando DoHtmlRequest() erweitert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                              Mit Modus koennen verschiedene Optionen geschaltet werden:
                                1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                                2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                                4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                                8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                               16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                              Es wird statt dessen der Tastencode F23 gesendet.
                                              Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                               32 (0x0020) -> Der Dialog wird nicht Modal durchgefuehrt. Nicht modale Fenster koennen auch minimiert werden.
                              256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                              Mit Titel kann ein Fenstertitel angegeben werden.
                              Mit IconId kann ein Icon des Fensters angegeben werden.
                              Mit '?' angehaengte Parameter an der URL der HtmlDatei werden jetzt korrekt an den internen
                              Parameter pinID angehaengt.
          19.03.10 WINLIB:    Beim Klicken auf ein Textfeld im klassischen IFW wurde das Textfeld bei einer PC-Einstellung auf ANSI Zeichensatz
                              geoeffnet. Problem beseitigt.
                   TOBITFW:   Beim Einlesen von Tobit-Logbuechern kann nur noch ein Prozess auf einem ein Logbuch einlesen. Mehrfach laufende
                              IFW-Versionen unter dem gleichen Benutzer koennen nicht mehr zu doppeltem einlesen fuehren.
                   STDCON:    Der Autologout in der klassischen Version findet jetzt auch bei angezeigten aber nicht bestaetigten Nachrichten statt.
                   ERRORLOG:  Das Performance-Logbuch wird nur noch in ifw/tempdat gespeichert, nicht mehr in Mandantenabhengigen tempdat-Verzeichnisse.
                              Im Performancelogbuch wird jetzt zusaetzlich die maximale Zeit eines Events zusaetzlich mitgeschrieben. In der Onlineanzeige
                              im IFW wird jetzt die maximale Zeit, nicht mehr der Durchschnitt pro Event angezeigt.
          22.03.10 WINLIB:    Pfeiltasten/Positioniertasten zum Betreten eines Textfeldes im klassischen IFW reaktiviert.
          24.03.10 API_MFRM:  HTML-Kommando ExecuteProgram() erweitert:
                              Wird als Programmname fuehrend "./" fuer das lokale Verzeichnis angegeben, so wird das Programm
                              bezogen auf den Pfad der aktiven HTML-Datei ausgefueht.

504 24.03.10 API_MFRM: Neues HTML-Kommando ReadProfile()

                                ReadProfile( winHandle, Modus, Sektion, Variable);
                                ReadProfile( winHandle, Modus, Sektion, Variable, DefaultWert);
                              Modus:
                               "user":    Es wird das benutzerabhaengige Profile abgefragt
                               "station"  Es wird das stationsabhaengige Profile abgefragt
                              Sektion:
                               Sektion aus der der Wert gelesen werden soll
                              Variable:
                               Varianble deren Wert gelesen werden soll
                              DefaultWert:
                               Wert der zurueckgegeben wird, wenn die Variable nicht existiert.
                              Hinweis:
                               Besteht der Wert im Profil noch nicht, dann wird als Vorgabe das Masterprofil verwendet.
                               Ist auch im Masterprofil der Wert nicht vorhanden, dann wird der Defaultwert verwendet.
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zur aufgerufenen
                               HTML-Datei lokalisiert. Das Kommando ReadProfile() legt das Verzeichnis nicht automatisch an.
          24.03.10 API_MFRM:  Neues HTML-Kommando WriteProfile()
                                WriteProfile( winHandle, Modus, Sektion, Variable);
                                WriteProfile( winHandle, Modus, Sektion, Variable, Wert);
                              Modus:
                               "user":    Es wird das benutzerabhaengige Profile geschrieben
                               "station"  Es wird das stationsabhaengige Profile geschrieben
                               "master"   Es wird das Masterprofile geschrieben
                              Sektion:
                               Sektion in der der Wert geschrieben werden soll
                              Variable:
                               Variable deren Wert geschrieben werden soll
                              Wert:
                               Wert auf den die Variable gesetzt wird.
                              Hinweis:
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zur aufgerufenen
                               HTML-Datei lokalisiert. Besteht das Verzeichnis noch nicht, wird es mit dem Kommando WriteProfile()
                               automatisch angelegt.
          25.03.10 API_MFRM:  Support der Kommandos ReadProfile() und WriteProfile() in diversen HTML-Views aktiviert (PrinterSetup, MainView, HTML-Print ...).
          26.03.10 ITBPRG:    Neues Kommando ReadProfile()
                                ReadProfile( STRING $strModus, STRING $strSection, STRING $strVar, STRING $strDefaultValue);
                              strModus:
                               "user":    Es wird das benutzerabhaengige Profile abgefragt
                               "station"  Es wird das stationsabhaengige Profile abgefragt
                              Sektion:
                               Sektion aus der der Wert gelesen werden soll
                              Variable:
                               Varianble deren Wert gelesen werden soll
                              DefaultWert:
                               Wert der zurueckgegeben wird, wenn die Variable nicht existiert.
                              Hinweis:
                               Besteht der Wert im Profil noch nicht, dann wird als Vorgabe das Masterprofil verwendet.
                               Ist auch im Masterprofil der Wert nicht vorhanden, dann wird der Defaultwert verwendet.
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zur aufgerufenen
                               ITB-Datei lokalisiert. Das Kommando ReadProfile() legt das Verzeichnis nicht automatisch an.
                   ITBPRG:    Neues Kommando WriteProfile()
                                WriteProfile( STRING $strModus, STRING $strSection, STRING $strVar, STRING $strValue);
                              Modus:
                               "user":    Es wird das benutzerabhaengige Profile geschrieben
                               "station"  Es wird das stationsabhaengige Profile geschrieben
                               "master"   Es wird das Masterprofile geschrieben
                              Sektion:
                               Sektion in der der Wert geschrieben werden soll
                              Variable:
                               Variable deren Wert geschrieben werden soll
                              Wert:
                               Wert auf den die Variable gesetzt wird.
                              Hinweis:
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zur aufgerufenen
                               ITB-Datei lokalisiert. Besteht das Verzeichnis noch nicht, wird es mit dem Kommando WriteProfile()
                               automatisch angelegt.
                   WINIFW:    Beim Oeffnen einer Maske ist der komplette Inhalt des ersten Eingabefelds selektiert.
                   WINIFW:    Menuefunktion "Produktion duplizieren" aktiviert.
          29.03.10 WINIFW:    Beim F2 Bestellen aus der Materialliste eines Beleges werden die korrekten Bezeichnungzeilen uebertragen.
                   FFARTBCH:  Beim F2 Bestellen aus der Materialliste eines Beleges, werden die Bezeichnungzeilen aus dem Artikelstamm in die
                              Bestelliste nachgeladen.
          30.03.10 EDIT_WIN:  Wenn beim GDI-Druck der Drucker-Setup nicht auf den Drucker angewendet werden kann, kommt die Meldung
                              "Der Setup konnte nicht auf Drucker ... angewendet werden".
          01.04.10 PROGAW:    beim HTML-Druck in der klassischen Oberflaeche wird jetzt bei der Meldung
                              "Warten auf den graphischen Druckservice (Weiter/Abbruch)" der Druck automatisch fortgesetzt, wenn der Druckservice
                              wieder bereit ist.

505 07.04.10 FFARTBCH: Artikel ohne Lagerbewertung (aber mit Lagerbstand, KennzeichenÜbersicht über die Datensatz Kennzeichen. W) werden jetzt bei der negativen Bestandsueberwachung

                              beim Buchen nicht faelschlicherweise als negativer Warenwert geblockt.

506 08.04.10 FFARTBCH: Rechnung von Lieferschein aendern, fehlerhafte Negativmeldung. Problem beseitigt.

          09.04.10 WINIFW:    Fensteraktivierung fuer Windows 7 korrigiert.
          15.04.10 ITBPRG:    Neues Kommando GetRecordByCommand( kommando, feld1, inhalt1, feld2, inhalt2, feld3, inhalt3, feld4, inhalt4, feld5, inhalt5, feld6, inhalt6);
                              Es hat die gleiche Funktion wie GetRecord(), nur wird der Wert Kommando mit angegeben:
                              Kommando:
                               0 == der Datensatz mit genau den angegebenen Feldinhalten wird geladen
                               1 >  der naechst groessere Datensatz wird geladen
                               2 >= der gleiche oder naechst groessere Datensatz wird geladen
                               3 <  der naechst kleinere Datensatz wird geladen 
                               4 <= der gleiche oder naechst kleinere Datensatz wird geladen 

507 19.04.10 DFED3LIB: Beim Loeschen von Artikel in den Papierkorb wird jetzt geprueft ob sie in einer Stueckliste noch in Benutzung sind.

                              Meldung "Der Datensatz ist in Benutzung!".
                              Bisher fand die Pruefung nur beim entgueltigen Loeschen statt.
                   FFLAGBCH:  Die Funktion "Artikellisten neu kalkulieren" berechnet jetzt keine Artikel im Archiv mehr.
                   DFLIB:     Beim Stuecklistenabgleich werden Zahlenvergleiche auf 14-stellige Mantisse begrenzt.
          21.04.10 POPUPMNU:  Option W in Druckformular implementiert. Mit der Option W wird ein Menueeintrag im Druckmenue nur dann angezeigt, wenn
                              der Benutzer mit dem WWW-Client online ist.
                   DFPRN:     Option W der Druckerliste implementiert. Mit der Option W wird beim Drucken ueber den Drucker die 
                              Druckoption 5 (kein Email-Dialog) automatisch gesetzt.

508 21.04.10 BRECLIB2: Bei der Mandantensynchronisierung werden Saetze bei der Neuanlage jetzt immer mitgeschrieben, auch wenn kein

                              Lesepuffer zum Aenderungsabgleich gesetzt ist.
          30.04.10 DFEXTFNC:  Schutzverletzung bei Auswertungen ueber das Aenderungsarchiv, Datenbankoption C bei Kommando [D in den Druckvorlagen beseitigt.

509 04.05.10 STDPRJ_: Probleme in der interne Objektverwaltung bei begrenzter Resourcenkapazitaet in Verbindung mit dem Mandantensynchronisierungsmodul beseitigt.

          04.05.10 API_MFRM:  Neues HTML-Kommando GetSysInternals()
                               GetSysInternals( Modus);
                              Modus:
                               0x0001: DataFile Objektdaten lesen
                               0x0002: DynPdfData Objektdaten lesen
                              Hinweis:
                               Mehrere Modis koennen gleichzeitig angegeben werden. Die Werte dazu addieren.
                               Die Daten werden in IFW-genormter CSV Form ausgegeben:
                               \r\n
                               0   \t 100 \t Bezeichnung\r\n
                                1  \t 200 \t DfListe\r\n
                                 2 \t 300 \t DataFile 1  ...\r\n
                                 2 \t 300 \t DataFile 2  ...\r\n
                                 2 \t 300 \t DataFile .. ...\r\n
                                1  \t 201 \t DynPdfListe ...\r\n
                                 2 \t 300 \t DynPdf 1    ...\r\n
                                 2 \t 300 \t DynPdf 2    ...\r\n
                                 2 \t 300 \t DynPdf ..   ...\r\n
                              DataFile Format:
                               1 lfdNr
                               2 df->accessminorhandle
                               3 df->dfnr
                               4 df->m_dh32.getDfHandleDWORD()
                               5 df->rec.flags
                               6 df->flags
                               7 df->flags2
                               8 df->usecnt
                               9 df->rec.name
                              10 df->lasttimeused
                              11 df->rec.reclen
                              12 df->rec.recbufflen
                              13 df->flags &DFF_RAM? (long)df->rambuffanz: df->rec.data->file.reccnt
                              14 df->rec.akt_key
                              15 df->rec.rootmai !=NULL? df->rec.rootmai->code: -1
                              16 df->rec.rootkey
                              17 df->rec.m_wRootKeyLen
                              18 df->rec.rootmai2 !=NULL? df->rec.rootmai2->code: -1
                              19 df->rec.rootkey2
                              DynPdf Format:
                               1 lfdNr
                               2 handle
                               3 dynpdf->m_dh32Parent.getDfHandleDWORD()
                               4 dynpdf->pdf.flags
                               5 dynpdf->pdf.df_flags
                               6 dynpdf->usecnt
                               7 dynpdf->pdf.file? dynpdf->pdf.file: ""
          05.05.10 FIBU:      Beim Login in das FIBU-Archiv mit dem Loginkommando Benutzername&fibuJAHR werden jetzt bei der Option "inaktiven Menuepunkte sichtbar" die
                              nichtbenoetigten Menuepunkte korrekt deaktiviert.
          06.05.10 FFBETON:   Bei der Wiege-Kurzerfassung wird jetzt eine alternative Wiegemaske aufgerufen, wenn die aktuelle durch einen anderen Arbeitsplatz
                              blockiert ist (Fehlermeldung "Error 1 on auftragKurzerfassung" wird umgangen).
          07.05.10 PRGLOAD:   Kommando SupplierQualityCalculation() optimiert.
          14.05.10 FFPROD2:   Kennzeichen I in der Artikelstammliste und in den Produktionen aktiviert. Es steht fuer Material Kanban-Entnahmen.
                              - Das Kennzeichen I wird bei der Produktionsanlage aus der Artikelstueckliste in die Produktion uebertragen
                              - Mit I gekennzeichnete Produktionspositionen werden bei der Funktion "alle Istwerte Eintragen" nicht beruecksichtigt.
                                Beim Masterabschluss wird die Menge automatisch eingetragen.
          18.05.10 PRGLOAD:   Das Kommando DocumentEdit() erweitert um VerarbeitungsModus 64:
                              DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                              Modus:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              14: Beleg abschliessen         (mit Auswahl)
                              VerarbeitungsModus:
                               1 0x0001: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2 0x0002: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4 0x0004: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8 0x0008: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16 0x0010: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                              32 0x0020: Bei "Belege abschliessen" erfolgt ein Zwangsabschluss des Lieferscheins, auch wenn er noch nicht komplett berechnet ist.
                              64 0x0040: Auftraege werden im Modus "Tagesgeschaeft" erfasst. Nach Abschluss des Auftrags wird sofort ein Lieferschein zum Auftrag aufgerufen.
                   PRGLOAD:   Kommando SetItem() um einen Funktionsmodus erweitert.
                              SetItem( Feldnummer, Feldinhalt);
                              SetItem( Feldnummer, Feldinhalt, Feldindex);
                              SetItem( Feldnummer, Feldinhalt, Feldindex, Modus);
                              Modus:
                               1 0x0001 Die Rechenoperation auf dem Feld wird nicht aufgerufen
                               2 0x0002 Das Feld wird auf der Oberflaeche nicht aktuallisiert
          19.05.10 FAKTEDIT:  Zusaetzlich Schutz vor Mehrfachbearbeitung einer Belegart aktiviert.
                   DFPRN:     Beim HTML-Massendruck von Belegen wird das Druckformular korrekt beruecksichtigt.
          25.05.10 TAPIUTIL:  Bei Wahl ueber TAPI wird die Leitung nach der Wahl nicht sofort wieder getrennt. Je nach Laufzeit der Telefonanlage fuehrte dies zu einem 
                              Abbruch der Telefonwahl.
          31.05.10 API_MSK:   Die Belegfunktionen im Popup-Menu sind im Archiv nicht mehr verfuegbar.
                   FFLAGBCH:  Bei Aenderug der Artikelnummer in einer Lagerbuchung wird im Lagerlogbuch die Lagerbuchungsnummer korrekt bei der Rueckbuchung vermerkt.
                   WINIFW:    Beim Loginfenster unter Windows 7 wird das Hauptfenster bei Desktopbedienung nicht mehr sichtbar.

510 02.06.10 FFPROD2: Kennzeichen I der Kanban-Entnahmen beim Produktionsabschluss erweitert.

                              - Beim Masterabschluss wird die Menge automatisch auch dann eingetragen, wenn schon zuvor Mengen gesetzt waren.
                              - I-Positionen werden beim Produktionsersatz nicht beruecksichtigt. Sind Fehlmengen bei I-Positionen vorhanden, so erfolgt nur eine Selektion.
                                Ist die I-Position ein X-Artikel, wird er ersetzt.

511 08.06.10 API_MFRM: Die HTML-Requester sind über das Systemmenue (Linksklick auf das Icon im Fensterrahmen links oben des Requesters) ausdruckbar.

          09.06.10 DFED3LIB:  Beim Oeffnen von Listen in der klassischen Version werden jetzt auch uebergrosse Listenfenster auf die Bildschirmgroesse optimiert.
          10.06.10 HTMLVIEW:  Beim HTML-Druck wird nur noch bei internem Printertemplate die Kopf und Fusszeile und die Seitenraender fuer den Druckvorgang geloescht.
          11.06.10 FFLAGBCH:  Im Lagerlogbuch werden jetzt auch Aenderungen von Bestaenden auf Lagerplaetzen mitprotokolliert.
          14.06.10 FFLAGBCH:  Bei Warenbedarf neu erstellen werden keine Lagerlogbucheintraege mehr geschrieben.
                   FFVERK:    Negative Mengen auf Lieferscheinen zu Auftragspositionen werden bei entstehenden negativen Auftragsliefermengen auf dem Auftrag nicht mehr im Artikelstamm verbucht.
          15.06.10 FFLAGBCH:  Offene AKL Lieferscheinmengen  koennen auf den Lagerplaetzen (externe Lager) gefuehrt werden.
                              Lieferscheinpositionen lassen sich jetzt online veraendern.
          16.06.10 FAKT.INI:  Neuer Schalter in der Sektion [System]
                              ExterneLagerBezeichnungen: Wert "XX;YY". Default ""
                              Um einzelne externe Lager auf externe Lager umzustellen, koennen hier
                              zweistellige Lagerbezeichnungen hinterlegt werden. Mehrere Angaben sind mit ; zu trennen.
                              Externe Lager buchen im Artikelstamm im Feld "in Gebrauch" ihre Mengen und 
                              verringern die Verfuegbarkeit im Feld LAGERBEST.
                              Interne Lager buchen im Artikelstamm in der Warenbedarfsmaske (F1 auf in Gerbauch)
                              im Feld int.Lag ihre Mengen und verringern nicht das Feld LAGERBEST und somit 
                              auch keine Verfuegbarkeit.
                              Geben sie korrekte Gross-/Kleinschreibung der 2-stelligen Lagerbezeichnung an!
                              Die hier angegeben Lagerbezeichnungen haben Vorrang vor allen Systemeinstellungen oder Angaben im Wert "InterneLagerBezeichnungen".
                              ;ExterneLagerBezeichnungen="
          17.06.10 WINIFW:    Die groesse des Druck-SetUp-Fensters laesst sich jetzt mit dem JavaScript-Kommando window.external.SetWindowSize() einstellen.
                              Die Standardgroesse betraegt 528 x 401.
                              Beispiel:
                              window.external.SetWindowSize( g_strPinId, 700, 500);
          18.06.10 DFLOADZW:  Kann beim Beleg laden der belegzwischenspeicher nicht geloescht werden, so wird jetzt die Meldung
                              "Der Belegzwischenspeicher konnte nicht geloescht werden (...). (Abbruch)" ausgegeben.
                   WINIFW:    Beim Kopieren von Reparaturen wird jetzt der Beleg auch bei mehrfachen Kopiervorgaengen korrekt kopiert.
                   PRGLOAD:   Kommando DocumentEdit() VerarbeitungsModus 64 0x0040: "Auftraege Tagesgeschaeft" korrigiert.
                   FFFOCAST:  Bei Forecast Online wird kein fester Zaehlrequester beim Buchen eines Belegs mehr angezeigt.
          21.06.10 DFLIB:     In der IFW-Liste koennen jetzt auch Felder von der gleichen Datenbank mit unterschiedlichen Links nachgeladen werden
                              (z.B. die Texte von 2 verschiedenen Artikelnummernfeldern).

512 21.06.10 FFPROD2: Die Funktion "Fertigteile absplitten + Abschluss" setzt jetzt bei Kanban Kennzeichen I den Istwert = Sollwert.

          23.06.10 FFEINK:    Modul "elektronische Warenlieferungen zu Bestellungen verarbeiten" implementiert.
                              Das Systemmakro .$71 steht zur Verfuegung. Das Makro wird von den temporaeren Wareneingangspositionen aufgerufen (Programmname 032000.$71).
          25.06.10 FFEINK:    Modul zur elektronischen Warenannahme implementiert.
                   FFLAGBCH:  AKL Protokoll um eine elektronischen Warenannahme (I7), Speditionslagermengen und Makroausfuehrung nach Speicherung erweitert.

513 28.06.10 TOBITFW: Kennzeichen '+' in den Flags beim Benutzer schaltet jetzt den Email-Notifier fuer eingehende Emails (erscheint im Meldefenster rechts unten) in der IFW-GUI ab.

                              Es schaltet ebenfalls das blaue Meldefenster im der klassischen Version (wie bisher Kennzeichen '*') ab.

514 29.06.10 FFARTBCH: Schutzverletzung beim Buchen von Variantenproduktionen zu Auftragspositionen mit Variantenstueckliste beseitigt.

          01.07.10 IFWTAB:    Das generieren von Daten als HTML-Ausgabe beschleunigt.
                   PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                                Modus 0x200000: Ein ITB-Programm zeigt einen Zaehlrequester bei der Ausgabe der generierten Datenzeilen an.
          05.07.10 FFSTDVK:   Problem der offenen Auftragsmengen beim IFW-Modul "Offene Lieferscheinmengen auf Lagerplaetze" beseitigt.
          16.07.10 FFBELPRU:  Wird eine Seriennummer zu einem Beleg erfasst, wird sie in der Seriennummernliste gespeichert. Haendische Eintraege enthalten das Kennzeichen A, Eintraege vom
                              automatischen Buchungssystem AKL das Kennzeichen X. Eintraege mit Kennzeichen X behalten jetzt ihr Kennzeichen bei und werden nicht mehr auf
                              Kennzeichen A umgestellt, wenn der Anwender die Seriennummer nochmals speichert.

515 16.07.10 PRGLOAD2: Neue Makrokommandos:

                              HttpCopyFile( URLQuelldatei, Zeildatei, Modus);
                               Kopiert eine Datei von einem HTTP-Server zur Zieldatei.
                               Modus 1: Fehler melden
                               Hinweis:
                               In der VT-Variable wird eine Meldung zurueckgegeben.
                               Wenn ok dann das Wort "Ok", ansonsten eine Fehlertext.
          26.07.10 DFIMP:     IFWINST -> Uninitialisierter Tastencode beim INLINE-Import beseitigt. Er konnte zu einem Abort -224 fuehren.
          28.07.10 PRGLOAD2:  Maximale Datengroese fuer die Datenuebertragung beim PHP-Server von 10k auf 100k erhoeht.

516 04.08.10 FFINVENT: IFW Modul "Laufende StichprobeninventurIFW Programmerweiterung Stichprobeninventur" in Verbindung mit dem INVENT-System implementiert.

                   DFED3LIB:  Error -43 beim Aufruf einer Archivierung einer leeren Datenbank beseitigt.
                   PINBOARD:  Maximale Anzeigegroesse von Texten in der Nachricht auf dem Desktop von 6k auf 16k erhoeht.
          06.08.10 FFPREIS:   Wird bei vorhandenem Stammdatenarchiv ueber die Funktion "automatisch Sonderpreise" ein Preis zum Kunde angelegt,
                              wird er jetzt automatisch aus dem Archiv oder Papierkorb geholt. Bei Neuanlage wird er nicht mehr im Archiv angelegt.
                   PRGLOAD:   Meldung "Grossmengen aus Ueberlaufplatz .. entnehmen?" bei Kommando AssignStoreToDocument() um die betroffene 
                              Position und Artikelnummer erweitert.

517 13.08.10 STDPRJ: Das HTML-Kommando ExecuteProgram() gibt jetzt OEM-Rueckgabewerte aus Vt als ANSI Zeichen aus.

                   PRGLOAD2:  Das HTML-Kommando ExecuteProgram() gibt jetzt keine Fehlerboxen mehr auf der Konsole aus.

518 30.08.10 PRNLIB3: Variablenzugriffe auf das Array Vn auf Indexangaben groesser 32768 erhoeht.

          02.09.10 DFED3LIB:  Beim rearchivieren von Artikeln werden abhaengige Stuecklisten automatisch rearchiviert.
                              Stuecklisteneintraege im Papierkorb bleiben jetzt im Papierkorb und werden nicht mehr automatisch mit rearchiviert.

519 06.09.10 FFPERS: Problem mit haengendem Zaehlrequester beim BDE-Personlaerfassung erzeugen beseitigt.

                   DFOBJ:     Stackfehler beim Zaehlrequester beim sofortigen Abbruch der Zaehlung waehrend der Initialisierung beseitigt.
          07.09.10 PRGLOAD2:  Das HTML-Kommando ExecuteProgram() gibt jetzt nur noch beim PHP-Aufrufen keine Fehlerboxen auf der Konsole aus.
                              Beim lokalen Aufruf per HTML werden Fehlerboxen ausgegeben.
          08.09.10 STDPRJ:    Beim Aufruf von Dateien aus dem Docustore wird jetzt bei schreibgeschuetzt gespeicherten Dateien im Zielverzeichnis der
                              Schreibschutz bei bereits besteneden Dateien aufgehoben.
                              Damit wird der Fehler "Datei ... nicht aktivierbar (Abbruch)" behoben.
                              Sollte die Datei bereits durch ein Programm geoeffnet und blockiert sein (z.B. Word oder Excel), so ist keine
                              Aktivierung moeglich und die Meldung wird ausgegeben.
                   WINIFW:    Beim Bearbeiten eines Belegs bleibt der "Ok" Button auch nach einem Versuch den Beleg zu verlassen aktiv.
                   WINIFW:    In der Statusteile werden die Anzahl selektierte Eintraege mit S:... angezeigt.
                   WINIFW:    Eine Fehlerbox erhaelt zusaetztlich den Text (Id. ERR:xx,yy) falls eine eindeutige Fehlernummer vorhanden ist.
                   FAKT.INI:  Neuer Schalter in der Sektion [Versand]
                              PaketErfassungRechnungMelden; Wert 0/1, Default 1.
                              Mit dem Wert 1 wird beim Erfassen von Paketen die Warnmeldung "Es ist bereits eine Rechnung geschrieben! (Weiter/Abbruch)"
                              ausgegeben, falls bereits eine Rechnung zum Lieferschein erfasst wurde.
                              Mit dem Wert 0 wird beim Erfassen von Paketen keine Warenmeldungen zu Rechnungen ausgegeben.
          09.09.10 API_MSK:   Bei F1 auf einem Text-Auswahlfeld wird der Fokus auf die richtige Zeile gestellt.
                   API_MSK:   Problem bei der Textuebergabe in ein Windows-Textfeld mit nur einem Zeilenumbruch beseitigt.
          10.09.10 IFWTAB:    Die Zaehlanzeige in der Statuszeile bleibt jetzt auch bei lang laufenden Rechnern (>20 Tage) sichtbar.
                   PRGLOAD:   Neues Kommando ReadFileToReturnString
                              ReadFileToReturnString( Dateiname);
                                Das liesst eine Datei ein und speichert den Inhalt in der Rueckgabevariable der HTML-Aufrufe.
                                Somit lassen sich Dateiinhalte in den Aufrudsmakros der HTML-Funktionen zurueckgeben.
                                Ist die Datei nicht vorhanden und mit SetAbort() eine Sprungmarke gesetzt, so wird diese angesprungen.
                                Ist keine Sprungmarke mit SetAbort() gesetzt, wird ein leerer Inhalt zurueckgegeben und das Programm weiter ausgefuehrt.
          11.09.10 PRGLOAD:   Kommando ConvertIcsvToImportCsv() erweitert:
                              ConvertIcsvToImportCsv( Dateiname);
                              ConvertIcsvToImportCsv( Dateiname, Modus);
                              ConvertIcsvToImportCsv( Dateiname, Modus, EbenenLimit);
                                Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                                Mit dem optionalen Parameter "EbenenLimit" kann die Ausgabe hierachischer Daten auf die angegeben maximale Tiefe
                                begrenzt werden. Die Ebene 0 ist die oberste Ebene. Wird kein EbenenLimit angegeben, so werden alle daten ausgegeben.
                                Mit dem Modus 0x0001 kann eine Konvertierung der Datei in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel
                                (0 100, 1 200, 2 300 ...) und Feldbeschriftung mit Variablennamen aus der Kopfzeile erfolgen.
          14.09.10 STRPRJ_:   Beim Oeffnen von Untermasken werden die mit Benutzerrechten versehenen Felder (Strg-F3) korrekt aktiv oder inaktiv dargestellt.
                   PRGLOAD:   Neues Kommando SearchAddExt(), SearchSubExt()
                                SearchAddExt( Modus)
                                SearchAddExt( Modus, "Programmname")
                                SearchAddExt( Modus, "Programmname", "Sprungziel")
                                SearchAddExt( Modus, , "Sprungziel")
                                SearchSubExt( Modus)
                                SearchSubExt( Modus, "Programmname")
                                SearchSubExt( Modus, "Programmname", "Sprungziel")
                                SearchSubExt( Modus, , "Sprungziel")
                              Es hat die gleiche Funktion wie SearchAdd() bzw. SearchSub(). Es Muss aber ein Funktionsmodus angegeben werden
                              Es ist zur Zeit nur eine Option vorhanden:
                                Modus 32:  Kein Benutzerabbruch moeglich
          16.09.10 FFEINK:    Bei der elektronischen Wareneingangsverarbeitung die Sperrmeldung
                              "Die Restmenge ist in Bestellung .../... zu gering! (Abbruch)" in eine Warnmeldung
                              "Die Restmenge ist in Bestellung .../... zu gering! (Abbruch/Weiter)" geaendert.
          21.09.10 FAKTMAIN:  Das TTS-System wird jetzt immer zwangsaktiviert.

520 22.09.10 DF.H: Erweiterung der internen Handleverwaltung zur Addressierung groesserer Resourcenbereiche (32-Bit Handles)

          29.09.10 PRGLOAD2:  Kommando GetRecord und GetRecordByCommand bei ROWDEF-Objekten mit "archiv only"-Status korrigiert.
          04.10.10 EXE_SIGN:  Bei der Pruefung der CRC-Nummer des EXE-Programms wird jetzt bei nicht lesbarere Programmdatei
                              (Nicht zu oeffnen oder gelesene Anzahl Zeichen 0) die Meldung
                              "Die Programmintegritaet konnte nicht geprueft werden. Eine Ausfuehrung wird aus Sicherheitsgruenden verhindert."
                              ausgegeben.
                   STDPRJ_:   Bei Zugriffen aus dem Aenderungsarchiv auf Daten mit vollwertiger Archivdatenbank, wird diese nicht mehr im Aenderungsarchivverzeichnis gesucht.
                              (z.B. Rechnungen->Aenderungsarchiv->Rechnungsposition->Seriennummernliste).
          05.10.10 IFWTAB:    In der IFW-Tabellendatei icsv wird als Datenbankreferenz der 32 Bit Handle mit ausgegeben.
          06.10.10 DF.H:      Erster Release der Erweiterung der internen Handleverwaltung zur Addressierung groesserer Resourcenbereiche (32-Bit Handles)
          07.10.10 WINIFW:    Schutzverletzung bei Anzeige sehr hoher Zahlenwerte (>10^100) in der Statuszeile unterbunden. Der Zahelnwert kann z.B. durch eine
                              textliche Darstellung von Expotentialzahlen entstehen.
          08.10.10 FFEINK:    Bei der elektronischen Wareneingangsverarbeitung werden bei der  Bestelldatenuebernahme die Angaben aktualisiert:
                              -Benutzer und Datum wird angepasse
                              -Kennzeichen werden geloescht
                              -Die Preise und Waehrung in den Positionen wird auf den aktuellen Kurs umgerechnet
                              -Die Kontenangaben zum Artikel werden bei Bedarf abgerufen.
          11.10.10 FFWEG:     Bei Wareneingaengen zu Fremdleistungsbestellungen werden die Produktionspositionen nicht mehr bebucht, wenn die Produktion bereits abgeschlossen ist.
          12.10.10 IFW:       Handbuchmenuepunkte entfernt

521 18.10.10 WINIFW: Archivieren von Belegen mit Dateianhaengen im 32 Bit Handle Modus korrigiert.

                              Drucken von Multizugriffen ueber das ARCHIV im 32 Bit Handle Modus korrigiert.
          22.10.10 DFEDLIB:   Die Funktion "Papierkorb leeren" bei vorhandenen Feld "Systemflags" korrigiert.
                   WINIFW:    Die Funktion "Papierkorb leeren" im Popupmenue und als Tastenfunktion implementiert.

522 25.10.10 FFLAGBUCH: Fehlermeldung beim Aenderung von Laferbuchungen mit Stueckliste. Problem mit 32 Bit Handle korrigiert.

          28.03.10 IFW_WWW:   Neues Release V1.3-05 der WWW-Clients und Host.
                              Es koennen jetzt HTML-Eingabemasken mit DoHtmlRequest() geoeffnet und angewendet werden.
                              Es werden die Kommandos APICOM_setVarFromId, APICOM_getVarFromId, APICOM_readFile, APICOM_getSysInternals, APICOM_readWriteProfile und APICOM_executeProgram unterstuetzt.
                              Groessere Rueckgabewerte von APICOM_executeProgram werden gepackt. Es koennen maximal 130kb gepackte Daten uebertragen werden.
                              Bei IFW-HTML Daten ist etwa ein Packverhaeltnis von 1/10 bis 1/20 moeglich.
          28.03.10 API_MFRM:  HTML-Kommando ExecuteProgram() erweitert:
                              Wird als Sprungmarke fuehrend der Text "*quiet*" angegeben ( z.B. "*quiet*Weiter"), so werden keine Meldungen vom Programm ausgegeben.
          03.11.10 IFWTAB:    In der IFW Tabelle wird bei Tabellebberechnungen auf einem temporaeren Belegobjekt jetzt auch automatisch das temporaere Positionsobjekt verwendet,
                              wenn das Positionsobjekt als Elternelement das temporare Belegobjekt erhaelt. Umgekehrt wird auch automatisch das temporaere Belegobjekt zum
                              temporaeren Positionsobjekt geladen.
                   FFSTDEK:   Der Schalter "Artikelstamm Listen-EK Feld im Verkauf verwenden" reaktiviert. Es war nur die Funktion "Artikelstamm Listen-EK Feld im Angebot verwenden" verfuegbar

523 04.11.10 IFW_WWW: Release V1.3-05 des WWW-Clients und Hosts kann jetzt auch den Druckrequester (Kennzeichen Q) anzeigen. 524 10.11.10 API_MFRM: Neues HTML-Kommando GetMessage():

                                GetMessage( winHandle, Modus)
                              Das Kommando GetMessage liest eine Nachricht aus der Nachrichtenqueue des HTML-Fensters aus.
                              Nachrichten koennen mit dem Kommando ExecuteProgramAsync() entstehen.
                              Modus:
                               0 - Ausgabe der Anzahl der vorhandener Nachrichten.
                               1 - Abholung der aeltesten Nachticht aus der Queue. Die Nachricht wird aus der Queue geloescht.
                   API_MFRM:  Neues HTML-Kommando ExecuteProgramAsync():
                                ExecuteProgramAsync( winHandle, "Context", "ProgrammName", "Label", "Parameter");
                              Es ist funktionsgleich zum Kommando ExecuteProgram() mit folgender Abweichung:
                              - Das Kommando wird zum IFW abgesetzt und die Verarbeitung der HTML seite sofort weitergefuehrt.
                                Als Rueckgabewert wird entweder "*queued*" bei erfolgreichem Absetzen zurueckgegeben oder
                                "*blocked*" falls das Kommando nicht angenommen werden kann.
                              - Ist das Makro im IFW abgearbeitet, so steht das Ergebniss mit dem Kommando "GetMessage()" zur Verfuegung.
                                Nach Fertigstellung wird vom HOST als Signal der Tastencode F22 (Eventcode 133) an die HTML-Seite gesendet.
                                Der Rueckgabewert enthaelt als ersten mit TAB abgetrennten Parameter den Wert "Context" aus dem Funktionsaufruf.
                              Hinweis:
                              Waehrend der Verarbeitung eines Makros mit dem Kommando ExecuteProgramAsync() koennen keine weiteren
                              Kommandos ExecuteProgram() oder ExecuteProgramAsync() von der HTML-Seite an das IFW abgesetzt werden. 
                              In diesem Fall wird immer der Rueckgabewert "*blocked*" zurueck gegeben.
                   IFW_WWW:   Release V1.3-05 des WWW-Clients und Hosts kann jetzt die Kommandos ExecuteProgramAsync() und GetMessage() uebertragen.
          11.11.10 WINIFW:    Die Icons in der Kopfzeile der Datenbankliste in der Selektions oder Anhangsspalte werden jetzt farbig ausgegeben.
                              Sie sollten jetzt beim Drucken auf allen Druckermodellen korrekt ausgegeben werden.
                   DFLIB:     Werden Daten auf Feldern in der Maske beim oeffnen automatisch nachgeladen (MAI_EXT2_OPENMASKLOADDF), dann wird
                              bei ungueltigen Verweisen (z.B. eine ungueltige Kundennummer) der Verweis nicht mehr geloescht.
                   WINIFW:    Die Darstellung der IFW-Eingabemasken bei vorhandenen Fließtextfelder in der Gesamthoehe korrigiert.
          12.11.10 IFWTAB:    Das Kommando GetRow() laedt jetzt auch den Datenbankeintrag, falls einer in der Zeile gesetzt ist.
                   FAKTEDIT:  Beim Belegimport wird ein Zaehler eingeblendet.
                   DFIMP:     Beim Speichern von Listenpositionen beim Belegimport werden keine Benutzermeldungen mehr angezeigt.
          16.11.10 WINIFW:    Lange Zahlen in zu kurzen Eingabefeldern werden unter Windows XP jetzt vollstaendiger angezeigt.
                   PROGLOAD2: Bei Zugriffsfehlern des Kommandos HttpCopyFile() auf Dateien wird keine Schutzverletzung mehr ausgeloest.
                   IFWTAB:    Die Fontgroesse der Fusszeile beim Druck von IFW-Tabellen verkleinert.
          18.11.10 WINIFW:    Die Tasten Alt-1 bis Alt-9 sind jetzt auch in einer Positionsliste innerhalb einer Eingabemaske verfuegbar.
          19.11.10 PRGLOAD:   Kommando DocumentEdit() erweitert.
                              -Es kann fuer Abrufauftraege verwendet werden.
          22.11.10 DFPRN:     Beim Ausdrucken wird bei Zwangsausgabe einer ITB-Datei (Kommando PrintFile Modus 0x80000: Die Vorlage wird immer als ITB-Programm ausgeführt (entspricht Ausgabeoption 'I'))
                              oder bei einer HTML-Erzeugung (Kommando PrintFile Modus 0x100000: Ein ITB-Programm gibt die Daten in einen HTML-String aus, nicht in die Datei.)
                              keine Umleitung in eine Datei bei gedrueckter Umschalttaste vorgenommen.

525 23.11.10 DFLIB: Problem mit Archiv und 32-Bit Handle beseitigt. Die Gesamanzahl der Eintraege im Archiv war inkorrekt.

                   IFWTAB:    Geschwindigkeitsoptimierung bei vielen geloeschten Eintraegen implementiert.
          25.11.10 FFPROD2:   Optimierungen am ASP-HOST fuer Produktionsabschluss per WWW-HTML vorgenommen.
          29.11.10 DFLIB:     F1 Auswahl der Druckformulare bei der Belegausgabe reaktiviert (Meldung "convHandle: Handle=..." beseitigt).
                   WINIFW:    Tastaturfokus-Verlust beim Bestellen von Ware aus dem Auftrag heraus (F2 Ware in Besteliste) beseitigt.

526 30.11.10 DFPRN: Druckumleitung auf den Bildschirm korrigiert.

                   IFWTAB:    Die Fontgroesse beim Druck von IFW-Tabellen angepasst.
          02.12.10 WINIFW:    Die Berechnung der Fensterpositionen beim 2 Monitoren fuer verschiedene Anordnungen der Monitore optimiert.
          06.12.10 WINIFW:    Feldfokus beim Nachrichtenfenster nach "F2" und dann "Zurueck", korrigiert.
          07.12.10 FAKTEDIT:  Beim Speichern eines Belegs kommt eine Fehlermeldung, falls der Speichervorgang nicht durchgefuehrt werden kann und die Fehlermeldung
                              keiner Kategorie angehoert.
          08.12.10 DFLIB:     Default-Datenbankobjekte die von Objekten aus dem Verzeichnis SYSDAT abgeleitet werden, werden jetzt im Defaultverzeichnis belassen
                              (z.B. Termine von der Benutzerliste abgeleitet werden jetzt im BASISDAT aufgerufen, bisher faelschlicherweise im SYSDAT aufgerufen).
          09.12.10-EXE_SIGN:  Die Programmpruefung beim Programmstart wird jetzt mit einem einfacheren Dateizugriff durchgefuehrt (SH_DENYNO statt SH_DENYWR). 
          13.12.10 API_MFRM:  Im HtmlRequest ist jetzt der Maus-Doppelklick zulaessig.
                   DFED3LIB:  Beim Change() Kommando mit Modus 4 (Modus 4: Es werden Eingabewarnungen beim Speichern eines Datensatzes unterbunden)
                              wird jetzt auch nicht mehr die Meldung "Veraenderte Datensaetze deselektieren?" ausgegeben.
          17.12.10 WINIFW:    Hintergrundfenster während der Inventurefassung beseitigt.

527 29.12.10 TOBITFW: Bei eingehenden Emails und Meldungen vom David wird der Mailinhalt per UNC-Pfad falls vorhanden gelesen. Damit sind auch

                              externe Scanlaufwerke (Verzeichnis "Userlogs") moeglich.
                   WINIFW:    Inventurerfassung korriegiert. Das Erfassungfenster ging bei gefuellter Liste nicht auf.
          30.12.10 FFINVENT:  Bei der Uebertragung der Inventurliste in den Artikelstamm werden evt. archivierte Artikel automatisch rearchiviert.
          03.01.11 TOBIFW:    Einlesen von Emailanhaengen mit UNC-Pfaden korrigiert.

! API_MSK: Die Funktion getUNC() liefert jetzt den UNC-Pfad auch wenn die Quelle bereits ein UNC-Pfad ist.

          07.01.11 VIDF:      Kommando ConvertIcsvToImportCsv() mit HTML Konvertierung angepasst. Die 200er Zeilen werden jetzt durchgezaehlt.
                              Kommando ReadProfile() und WriteProfile() OEM Konvertierung deaktiviert.

528 10.01.11 API_MSK: Bei Drag&Drop unter Windows 7 von einem Stream (z.B. Email) ins IFW werden jetzt auch Unicode Dateinamen in voller Länge erkannt. 529 17.01.11 FAKT.INI Neuer Schalter in der Sektion [System]

                                Um einzelne Lieferantenkonsignationslager ohne dispositive Verfuegbarkeit zu fuehren, koennen
                                hier zweistellige Lagerbezeichnungen hinterlegt werden. Mehrere Angaben sind mit ; zu trennen.
                                Lieferantenkonsignationslager buchen ihr Menge additiv zur verfuegbaren Lagermenge um bei der
                                Warendisposition die im Konsignationslager befindliche Ware als verfuegbar zu beruecksichtigen.
                                Sie erhoehen die Verfuegbarkeit im Feld LAGERBEST.
                                Werden hier Lieferantenkonsignationslager durch Angabe ihrer Lagernummer umgeschaltet,
                                so werden die Mengen nicht mehr additiv zum Feld LAGERBEST gebucht und erhoehen somit 
                                auch keine Verfuegbarkeit. Die Menge wird in der Warenbedarfs- und Bestandszahlenuebersicht
                                im Feld "*KonsiLg>" angezeigt.
                                Geben sie korrekte Gross-/Kleinschreibung der 2-stelligen Lagerbezeichnung an!
                   FFLAGER:   Bei den externen Lagern und den Lieferantenkonsignationlager wird die Lagerrelevanz mit dem Kennzeichen L im Lager und in der
                              Lagerposition angezeigt.
                              Externe Lager:
                                ein L  -> externes Lager: Die Ware geht in gebrauch und wird vom Lagerbestand abgezogen.
                                kein L -> internes Lager: Die Ware wird nur am Lagerplatz gehalten und nicht vom Lagerbestand abgezogen.
                              Lieferantenkonsignationslager:
                                ein L  -> Die Ware ist dispositiv verfuegbar und wird zum Lagerbestand hinzugerechnet.
                                kein L -> Die Ware liegt als Reserve vor und wird nicht zum Lagerbestand hinzugerechent.

530 20.01.11 FAKT.INI Neuer Schalter in der Sektion [FIBU]

                                LagerWareneingangskontoInnenumsatz: Wert ""/"999999". Default ""
                                Die Variable LagerWareneingangskontoInnenumsatz wird nur angewendet, wenn die Variable "LagerWareneingangskonto"
                                gesetzt ist (siehe oben).
                                Die Funktion von "LagerWareneingangskontoInnenumsatz" ist gleich der Funktion "LagerWareneingangskonto"
                                wie oben beschrieben.
                                Die Kontoangabe findet dann Verwendung, wenn es sich bei der Eingangsrechnung um einen Innenumsatz (Auslandskennzeichen i)
                                im Beleg handelt. Sie wird dann anstelle der Kontoangabe in "LagerWareneingangskonto" verwendet.
                   FFEINK:    Innenumsaetze beim Einkauf aktiviert. Es koennen jetzt Lieferanten und Eingangsbelege mit dem Auslandskennzeichen 'i'
                              gekennzeichnet werden. Innenumsaetze sind Eingangsbelege die z.B. aus einer Niederlassung stammen, die buchhalterisch als
                              gleiche Firma laufen. Diese Umsaetze sind steuerfrei und werden auf separaten Konten in der Buchhaltung gebucht.
                   FFERLBU:   Kontozuordnung "LagerWareneingangskontoInnenumsatz" implementiert. Sie sorgt dafuer dass bei angegeben Konto in
                              "LagerWareneingangskonto" lagerhaltige Artikel, die durch einen Innenumsatz beim Wareneingang (Auslandakennzeichen i) zugehen
                              dem Konto "LagerWareneingangskontoInnenumsatz" zugeordnet werden.
                   FFERLBU:   Bei der Funktion "Beleg -> Buchungsstapel" wird der Steuerschluessel bei Inlandskonten auch dann im Stapel angegeben,
                              wenn die Konten aus den Erlöskontenparameter, Sektion "Ausweichkonten" angewendet werden.
          21.01.11 WINIFW:    Beim Drucken ueber den IFW-Druckersetup kann jetzt im Setup die Tastatur zur Auswahl des Druckziels und der Druckvorschau verwendet werden.
          28.01.11 PRGLOAD:   Das Kommando PrintFile und PrintFileID schliesst die Eingabemaske einse Beleges nicht mehr, falls es sich auf einen aktuell
                              zu bearbeitenden Beleg bezieht.
                   IFWTAB:    Das Kennzeichen "kein Zaehlrequester anzeigen" bei einem IFW-Tabellenprogramm funktioniert jetzt korrekt.

531 31.01.11 DFIMP: Beim BelegimportIFW Programmerweiterung Belegimport wird vor dem Einlesen der Positionen der bisher gelesene Kopf gespeichert (und sein Makto ausgefuehrt).

                              Damit ist z.B. eine korrekte Uebernahme abweichender Waehrungsangaben moeglich.

532 01.02.11 STRPRJ: Beim Kommando CallDocustore() Modus 4 fuer "Datei anhaengen", kann jetzt der Dateiname mit ? erweitert werden (z.B "dateiname?B").

                              Die Angaben nach dem Fragezeichen werden als Statuskennzeichen in den Dateianhang geschrieben. Damit koennen ueber Makrofunktionen
                              angehaengte Dateien z.B. fuer einen automatischen Dateiversand gekennzeichnet werden.
                   TWAIMAIN:  Maximale Anzahl von Dateien bei einem Scan von 20 auf 999 erhoeht.
          03.02.11 WINIFW:    Funktion "VB-Sammelbuchungen ausbuchen" und "Ueberweisung-Sammelbuchungen ausbuchen" korrigiert.
                   WINIFW:    Funktion "von Auftrag Produktion anlegen" bei grosser Hirachiedichte korrigiert.
                   PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                                Modus 0x400000: Ein Druckauswahlrequester wird geoeffnet (wie Option 'Q' im Ausgabeformular)

533 03.02.11 POPUPMNU: Druckmenue auf Zentrale Ausgabeformulardatei umgestellt.

          08.02.11 WINIFW:    Das IFW Menue oeffnet sich jetzt auch bei aktiviertem Capslock (Dauergrossumschaltung).
                   WINIFW:    Beim Einloggen wird beim Benutzerlimit die korrekte Meldung zurueckgegeben. Bisher kam immer nur die Meldung dass die
                              Benutzer/Passworteingabe ungueltig waere.
                   POPUPMNU:  Zentrales Druckmenue fuer Temporaerdateien korrigiert
                   STDMSK:    Belegausgabe F1 in die Zentrale Ausgabeformularmaske gerichtet.

534 09.02.11 WINIFW: -Rechte auf Sichtbarkeit von Spalten in Listen die in Eingabemasken eingebettet sind, werden jetzt bereits beim 1. Oeffnen der Maske uebernommen.

                              -Nach dem Aufruf einer Makrofunktio wird jetzt die Titelzeile aktuallisiert (evt. Summenanzeige vorhanden).
          10.02.11 FAKT.INI   Neuer Schalter in der Sektion [Verkauf]
                                AuftragAbrufauftragspruefung: Wert 0/1. Default 1.
                                Wird dieser Wert auf 0 gesetzt, so wird die Abrufauftragsueberwachung beim Auftrag schreiben
                                deaktiviert. Damit wird der Status 'E' bei den Abrufauftraegen beim Speichern von Auftraegen
                                nicht mehr ueberwacht.
                                Mit dem Wert 1 wird automatisch der Abrufauftrag beim Schreiben von Auftraegen ueberwacht und
                                der Abruf bei Erreichung der Gesamtmenge automatisch Abgeschlossen. Sollte die Gesamtmenge einer
                                Position noch nicht erreicht sein, so wird er automatisch wieder geoeffnet.

535 15.02.11 DFLIB: Problem mit Archiv und 32-Bit Handle in den Materialpositionen der Reparaturen beseitigt. Die Positionen werden jetzt korrekt angezeigt.

          16.02.11 FFPERS:    In der Stundenerfassung kann der Erfassungstyp 'I' mit einem Zeitraum von/bis angegeben werde.
                              Er dient nur zur Information und bucht keine Zeiten.
          18.02.11 PRGLOAD:   Kommando DocumentImportFile erweitert: 
                              DocumentImportFile um den Modus 0x400 (1024) erweitert:
                              Modus 0x400 (1024) (IMPORT_DOCUMENT_EDIT)
                                Beim Einlesen wird das Dokument zum Bearbeiten geoeffnet.
          18.02.11 IFWTAB:    Es koennen jetzt Spalten mit AddColumn() auch in der Do() Funktion hinzugefuegt werden. Bisher war dies nur im Init() moeglich.
          21.02.11 FAKTPRJ:   Projekte sind jetzt ohne Nummer nicht mehr speicherbar. 
                   DFED2LIB:  Neues Datenbankattribut (PDF_SAVENOEMPTYNUM) zum Unterbinden der Neuanlage von Datensaetzen ohne Nummer (Nummernfeld C32) implementiert.

536 21.02.11 DFLIB: Problem mit Enlosspeicherung beim Aenderungslogbuch der Belege beseitigt. ! 22.02.11 DFED2LIB: Auch in den Angebotspositionen wird im klassischen IFW mit ALT-F1 die zuvor mit SHIFT-F1 gewaehlte Datenbank angeboten.

          25.02.11 PRGLOAD:   Kommandos ImportFile und DocumentImportFile um die Lokalisierung der Importdateinamen erweitert:
                              Dateiangaben mit Pfadangabe mit fuehrendem "..\\" werden vom aufrufenden Makroprogrammpfad ausgefuehrt.
                   DFIMP:     Import Erweitert:
                              Ist ein Inline Porgramm in der Importvorlage vorhanden und die Sprungmarke "HunkHaupt:" vorhanden, so wird diese
                              vor dem Speichern einen Satzes aufgerufen. Ohne der Sprungmarke wird die Vorlage direkt zur Makroausfuehrung aufgrufen.
                   DFIMP:     Import Erweitert:
                              Importkommando @#Repeat...;
                              @#Repeat Prefixzeichenfolge, Zuweisungszeichenfolge, Trennzeichenfolge, Abbruchzeichenfolge;
                              Mit dem Kommando @#Repeat koennen Feldinhalte eingelesen werden, bis die Abbruchzeichenfolge erreicht wird.
                              Dabei werden die Inhalte bis Trennzeichenfolge gelesen und auf das Vorhandensein einer Zuweisungs untersucht.
                              Ist eine Zuweisung vorhanden so wird der Inhalt in das in der Zuweisungsfolge angegeben Feld eingelesen. Die Zuweisung
                              hat den Aufbau Prefix Feldangabe Zuweisungszeichenfolge.
                              Das Kommando bewegt den Lesezeiger in der einzulesenden Datei weiter bis hinter die Abbruchzeichenfolge.
                              Beispiel:
                                @#Repeat "$","=",";","\r\n";
                              liest die Datenzeile
                                1;Materialposition:;$C32=78;$C33=#002104;Endprodukt;$C47=1;0,00
                              ein.
                              Dabei werden einzulesende Felder an dem Prefix $ und der Zuweisung = erkannt. Die Feldangabe erfolgt ueber die Feldnummer
                              z.B.C32. Mit der Datenzeile wird das Feld C32 mit dem Wert "78" belegt, das Feld C33 mit dem Wert "#002104;Endprodukt" und
                              das Feld C47 mit dem Wert "1". Der Lesevorgang wird am Ende der Zeile am Zeilenumbruch beendet. Die Wert ohne Zuweisung, hier "1","Materialposition:",
                              "Endprodukt" und "0,00", werden ignoriert.
                   DFIMP:     Import Erweitert:
                              Importkommando @#Break...;
                              @#Break Vergleich != oder ==, Vergleichswert, Trennzeichenfolge;
                              Mit dem Kommando @#Break kann ein Schleifenabbruch (wie Importkommando @X) abhaenging von einem vorkommenden Wert erzeugt werden.
                              Es wird der Wert bis zur Trennzeichenfolge gelesen und mit dem angegebenen Vergleichswert verglichen.
                              Beim Vergleich "!=" erfolgt ein Abbruch bei Ungleichheit, beim Vergleich "==" erfolgt ein Abbruch bei Gleichheit.
                              Das Kommando aendert den Lesezeiger in der einzulesenden Datei nicht. Er verbleibt auf der Stelle vor dem Kommando.
                              Beispiel:
                                @#Break "!=","Pos",";";
                              liest die ersten Werte der Datenzeilen
                                Kopf;Bestellung an Lieferant:;$C64=1101;$C59=Test Lieferant   1101
                                Pos;Materialposition:;$C32=78;$C33=#002104;Endprodukt;$C47=1;0,00
                                Pos;Materialposition:;$C32=78;$C33=#002104;Endprodukt;$C47=1;0,00
                                Kopf;Bestellung an Lieferant:;$C64=1101;$C59=Test Lieferant   1101
                                Pos;Materialposition:;$C32=78;$C33=#002104;Endprodukt;$C47=1;0,00
                              ein.
                              Wechselt der Zeilenanfang von "Pos" auf "Kopf" so wird ein Abbruch erzeugt. Das Kommando wird z.B. fuer den Belegimport
                              verwendet.

537 02.03.11 FFEINK: Bei elektronischen Wareneingang wird jetzt der Kalkulatorische EK und evt. vorhandene Lieferanten und Gemeinkostenzuschlaege beruecksichtig. 538 04.03.11 DFED2LIB: Bei F1 wird der zu suchende Wert vor dem Zugriff in das Feldformat konvertiert. Bisher wurde er unveraendert (z.B. mit führende Leerzeichen) gesucht.

                   DFIMP:     Import Kommando #Repeat mit ";" als Trenner korrigiert.
          09.03.11 PRGLOAD:   Neues Makrokommando:
                              BDETransferExt( Personalnummer, DatumVon, DatumBis);
                              Uebertraegt die BDE-Stechzeiten in die Personalzeiterfassung.
                              Beispiel:
                               BDETransferExt( "18", "09.03.2011", "09.03.2011"); -> Uebertraegt die BDE-Personalzeiten von PersonNr. 18 vom 19.03.2011
          11.03.11 DFEDLIB:   Das Systemmakro $27 und $28 enthaelt in Vt den original gelesenen Primaerkeyfeld Inhalt (MAIC_PRIMKEY 145 oder MAIC_NUM 32).
                   PRGLOAD:   Kommando SaveNew()
                              Kommando SaveCopy() um Modus 0x200 (512) erweitert:
                                Modus 0x001 (1):   Bestaetigung der zu aendernden Menge durch den Benutzer.
                                Modus 0x002 (2):   selektierte Eintraege nicht deselektieren.
                                Modus 0x004 (4):   Es werden Eingabewarnungen beim Speichern eines Datensatzes unterbunden.
                                Modus 0x008 (8):   Keine Ausgabe der Meldung "Keine Daten selektiert".
                                Modus 0x010 (16):  Keine Zaehl- oder Fragebox wird geoeffnet
                                Modus 0x020 (32):  Kein Benutzerabbruch moeglich
                                Modus 0x100 (256): Der Aenderungslauf wird im Online-Buchungsmodus durchgefuehrt.
                                Modus 0x200 (512): Beim Kopieren von Datensaetzen werden keine zugeordneten Listen mitkopiert
                              Hinweis:
                              Die Kommandos werden wie das Kommando Change() verwendet.
                              Zuerst Datensaetze selektieren und dann anstatt Change() SaveNew() oder SaveCopy() verwenden.

539 14.03.11 DFIMP: Speicherfehler beim Importieren mit Rekursiven Importvorlagen (@H…; Kommando) beseitigt.

         14.03.11 PROGLOAD    Neues Kommando GetRecordNew()
                              Es aktiviert intern die Daten der Eingabemaske wie bei der Funktion "neuer Eintrag aufnehmen" ohne die Eingabemaske zu oeffnen.
                              Nach dem Kommando kann auf die initialisierten Fehldinhalte zugegriffen werden.
         18.03.11 IFWTAB:     Zellen mit maximalem Text (4kB) werden jetzt immer korrekt CSV-Konvertiert ausgegeben.
                  DFEDLIB:    Wird beim Initialisierungsmakros $01 $02 oder $03 ein Rueckgabewert ungleich 0 zurueckgegeben,
                              so wird die Eingabemaske nicht geoeffnet.
                  DFIMP:      Das Stammdatenarchivfeld kann jetzt beim Ueberlesen von Saetzen beim Import bestueckt werden. Bisher wurde es beim
                              Ueberlesen immer zwangsgesetzt. Wird es nicht bestueckt, wird der Satzt automatisch rearchiviert.

540 21.03.11 WINIFW: Neueingabe von Datensaetze und Seriennummernmassenerfassung optimiert:

                              -Es werden nur noch die Eintraege der aktuellen Position angezeigt
                              -Es koennen nicht mehr Eintraege als angegeben erfasst werden
                              -Die Eingabezeile verbleibt auf "Neuer Eintrag" nach dem Speichern einer Neuen Nummer.
         22.03.11 DFPRN:      Beim Ausdrucken wird das Systemmakro $00 bei jeder Datenbanktabelle einmal aufgerufen
         23.03.11 FFPROD3:    Bei hierachischer Produktionsanlage mit K-Artikel ohne Stückliste wird nur die Position 000 angelegt.
         24.03.11 WINIFW:     Schutzverletzung beim Rechtsklick auf den Desktop im klassischen IFW beseitigt.

541 25.03.11 DFLIB: Maximale Datenbankobjekte von 99 auf 227 erhoeht.

         29.03.11 WINLIB:     Dynamische Datenbankverweise auf Objekte >0xFF korrigiert.
         30.03.11 WINIFW:     Beim Kopieren von Datensaetze verbleibt der Fokus auf dem gespeicherten Satz.

542 31.03.11 DFPRN: Bei der BelegausgabeDirektdruck beim Speichern eines Beleges werden die Druckoptionen unterstuetzt (z.B. Y fuer "Kennzeichnen nicht fragen").

         31.03.11 DFLIB:      Dynamische Datenbankverweise auf Objekte MinorId>0x80 korrigiert.
         01.04.11 WINIFW:     Bei Neruanlage von Datensaetze wird der Fokus auf dem gespeicherten Satz gesetzt.
                  IFW_WWW:    Clientversion 1.3-03 und 1.3-04 bringt keine Meldung "Ein neuer Client ist verfuegbar" mehr.
         04.04.11 DFIMP:      Belegimport mit Importhunk der nur "[D48]" enthaelt korrigiert.
                  DFRW:       Beim Kopieren von Datensaetzen wird jetzt die Feldinitialiserung nach einem evt. Loeschen der Felder durch Initialisierungwerte durchgefuehrt.
                              Damit kann z.B. die Funktionsoption zum Eintragen des Neuanlegers des Datensatztes beim Kopieren korrekt ausgefuert werden.

543 06.04.11 FAKTMAIN: IFW ModulManager aktiviert. Folgende Funktionen werden unterstuetzt:

                              - Hauptmenuepunkte aus den Modulen 
                                -> FAKT.MRC Dateien in den Modulverzeichnisen werden aufgerufen. Die Reihenfolge ist alphabetisch nach Modulname
                              - Hauptmenuemakros MENUBnnn.$00 aus den Modulen.
                                -> MENUBnnn.$00 Dateien in den Modulverzeichnisen werden aufgerufen. Die Reihenfolge ist PROGRAMM, SYSPRG, Modulverzeichnis.
                                   Wird die Datei gefunden wird sie ausgefuehrt und die Suche beendet.
                              Hinweis:
                              -Der ModulManager scannt das Modulverzeichnis unmittelbar beim Programmstart. Fuer einen neuen Scann muss das IFW neu gestartet werden.
                               Es sind nur Modulverzeichnisse mit gueltigen Verzeichnisname zulaessig:
                               "???_*" -> Drei Zeichen, Unterstrich '_', keine Namenserweiterung mit '.'. Das Letzte Zeichen darf kein '_' sein.
                              -Mit dem Kommando HTML-GetSysInternals() kann der ModulManager ausgelesen werden.
                  API_MFRM:   HTML-Kommando GetSysInternals() erweitert:
                               GetSysInternals( Modus);
                              Modus:
                               0x0001: DataFile Objektdaten lesen (200)
                               0x0002: DynPdfData Objektdaten lesen (201)
                               0x0004: Registrierte IFW Module lesen (202, 300Index, 300Name, 300Typ, 400Id, 400Name)
                               0x0008: Registrierte MRC Dateien aus den Modulen lesen (203, 300Index, 300Id, 300Name)
                               0x0010: Registrierte MENUBnnn Dateien aus den Modulen lesen (204, 300Index, 300Id, 300Name)
                  DFEXTFNC:   Bei Datentraegeraustausch mit den Banken im DTA Block A "0000000000" anstatt 10 Leerzeichen eingebaut (offset 70)
         08.04.11 FFPROD3:    Bei Produktionsanlage mit Revisionsmanagement werden archivierte/geloeschte Positionen nicht mehr mit angelegt.

544 08.04.11 DFLIB: Problem beim Drucken von Attachmentdateien mit erweiterter 32Bit-Handle Verwaltung beseitigt.

         14.04.11 DFED2LIB:   Bei Archivierung die Pruefung auf den letzten Datensatz korrigiert.
         21.04.11 PRNLIB3:    Das Druckvorlagenkommando [M und [m initialisiert jetzt immer sofort die angesprochene Datenbank.

545 30.04.11 DFPDF: Kategorieverwaltung implementiert.

                  PROGLOAD:   AppendBrowsItem() korrigiert. Wird ein Feld aus einer anderen Datenbank nachgeladen, so wird bei doppelt vorhandener
                              Feldnummer in der Übersicht die Spalte korrekt gesetzt, auch wenn sie nicht nach der Spalte mit der gleichen Nummer vorkommt.
                              Desweiteren wurd die automatische links-/rechstbuendig Korrektur bei Nachladefeldern abgeschaltet.
         02.05.11 IFWTAB:     stripos() beruecksichtigt jetzt die Umlaute korrekt als ANSI.

546 06.05.11 DFEDINFO: Fehler beim Aufruf von Datenbankverknuepfungen (Strg-F9) beseitigt.

         09.05.11 FFVERSND:   Tritt ein Fehler beim Initialisieren der Temporärdateien der Paketerfassung im Versandmodul auf, so wird die
                              Paketerfassung komplett beendet.
                  WINIFW:     Beim Einlogvorgang unter Windows 7 wird beim Task Umschalten mit ALT-TAB kein Hintergrundfenster mehr angezeigt.
         11.05.11 PROFILER:   Dateien mit UNC-Pfadangabe werden jetzt mit ihrem Servernamen separat im Performancemonitor mitgefuehrt.

547 11.05.11 WINIFW: Beim Einloggen ins IFW ist jetzt der Logindialog immmer om Vordergrund. 548 12.05.11 WINIFW: Im Einkauf die Ladeeinheitenumrechnung aktiviert.

                  PRGLOAD:    Kommando DoHtmlRequest() erweitert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                              Mit Modus koennen verschiedene Optionen geschaltet werden:
                                 1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                                 2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                                 4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                                 8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                                16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                               Es wird statt dessen der Tastencode F23 gesendet.
                                               Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                                32 (0x0020) -> Der Dialog wird nicht Modal durchgefuehrt. Nicht modale Fenster koennen auch minimiert werden.
                                64 (0x0040) -> Das Fenster kann nur einmal geoeffnet werden. Besteht es bereits wird das bestehende Fenster aktiviert.
                               128 (0x0080) -> Das Fenster wird maximiert geoeffnet
                               256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                               512 (0x0200) -> In der Titelzeile werden alle Systemmenuefuktionen und Buttons abgeschaltet
                              1024 (0x0400) -> Der Minimierungsbutton ist nicht sichtbar
                              2048 (0x0800) -> Der Maximierungsbutton ist nicht sichtbar
                              4096 (0x1000) -> Des Fenster wird im Fullscreenmodus ohne Rand geoeffnet (Kioskmodus)
                              Mit Titel kann ein Fenstertitel angegeben werden.
                              Mit IconId kann ein Icon des Fensters angegeben werden.
                              Mit '?' angehaengte Parameter an der URL der HtmlDatei werden jetzt korrekt an den internen
                              Parameter pinID angehaengt.
                  IFW_WWW:    Autologin des WWW Clients implementiert.
                              Im Autologin-Modus kann der WWW-Client zu einem Systray-Icon verkleinert werden.
                              Die Logindaten werden in der Datei server.ini des WWW-Clients hinterlegt.
                              Neue Werte in der Sektion [ProtocolPort]
                              - AutoLoginName: Wert Text 16, Default "".
                                Ist der Wert gesetzt, wird der Name automatisch beim Aufruf beim Host eingelogt
                              - AutoLoginPassword: Wert MD5-Text 16, Default "".
                                Ist der Wert AutoLoginName gesetzt, wird des Passwort beim Aufruf automatisch verwendet
                                Das Passwort ist als 32-stelliger MD5-Wert einzutragen
                  IFW_WWW:    Die Arbeitsplatznamen von fernverbundenen Rechnern werden jetzt mit mehr Zeichen erkannt.
         17.05.11 PRGLOAD:    Beim Fullscreenmodus mit dem Kommando DoHtmlRequest() wird bei ALT-F4 nur das Fullscreenfenster geschlossen, nicht mehr 
                              das ganze IFW.
                  WINIFW:     Uebersichtslisten mit Spalten fuer den Aktuellen Monatsumsatz zeigen jetzt den Monatsumsatz des aktuellen Monats an,
                              nicht mehr den Umsatz im Januar.

549 19.05.11 WINIFW: Aufruf der Die Systemmakros $01 bis $04 beim Belegschreiben in der Windowsversion an die klassischen Version angepasst.

                  DFEDLIB:    Die Systemmakros $01 bis $04 werden beim Belegschreiben beim Betreten der Maske immer einmal ausgefuehrt.
                  WINIFW:     Automatisch gross geschriebene Zeichen bei der Feldeingabe (z.B. fuer Kennzeichen) werden jetzt auch bei Umlauten korrekt beruecksichtigt.
         23.05.11 DOCUSTORE:  Systemmakro .$82 implementiert:
                               Programm beim Aufruf von Dokustore-Funktionen.
                               Es wird vom aktuellen Datenbankobjekt und dessen Attachmenstobjekt (nnnnnnAT) aufgerufen.
                               In der Variable V1 steht die aufgerufene Funktion 1-11.
                                1:oeffnen
                                2:ausfuehren
                                3:bearbeiten mit notepad
                                4:kopieren
                                5:bearbeiten Zentralregister
                                6:im Zentralregister: ausfuehren
                                7:im Zentralregister: bearbeiten mit notepad
                                8:im Zentralregister: speichern nach (nicht implementiert)
                                9:im Zentralregister: kopieren
                               10:oeffnen von Maske aus
                               11:Zeile loeschen
                               12:Drop Files
                               Mit einem Rueckgabewert == 0 wird weiter verabreitet, mit 1 wird die Verarbeitung abgebrochen.
                  TOBITFW:    Die Logbuecher von DAVID werden nicht mehr gescannet, wenn entweder keine LogbuchID beim Benutzer hinterlegt ist, oder
                              die Anfangszeichen "un" oder "UN" enthalten sind.
         24.05.11 DOCUSTORE:  Selektierte Einträge in den Dateianhaengen werden beim oeffnen der Dateianahangsliste deselektiert.
                  PROGRAMM:   AppendBrowseItem() gibt bei leerer Textangabe keinen Fehler mehr zurueck. Der Fehler tratt bisher nur gelegentlich auf.
                  MAPI:       Beim Versenden einer Email ueber die Mail-API wird bei erweitertem Logbuch beim Benutzer ein Eintrag im Logbuch mitgeschrieben.
                  MAPI:       Wenn die MAPI nicht geht, aber "Senden an" geht, folgender Registriekey pruefen:
                              HKLM "SOFTWARE\\Microsoft\\Windows Messaging Subsystem", Eintrag "MAPI" muss "1" sein (Textschluessel).

550 26.05.11 FFPROD2: Die Funktion Produktionsabgleich mit RevisionsverwaltungRevisionsverwaltung für Stücklisten implementiert.

         31.05.11 WINIFW:     Update der Nachrichtenfenster auf dem Desktop erweitert. Es werden jetzt auch Aenderung innerhalb einer Milisekunde erkannt.
         01.06.11 FAKT.INI    Neuer Parameter in der Sektion [FIBU]
                               Kreditorkreis1: Wert Text. Default ""
                                Es kann eine mit Liste mit Kreditorenkontonummern angegeben werden, fuer die die folgenden Konten beim Innenumsatz gelten.
                                Die Kontenangaben muessen vollstaendig in voller Laenge (ggf. mit fuehrenden Nullen) angegeben werden.
                                Mehrere Konten sind mit Strichpunkt zu trennen. Es konennen maximal 255 Zeichen angegeben werden.
                                Es koennen bis zu Kreditorenkreise angegeben werden. Verwenden Sie dazu den Wert Kreditorkreis2= und Kreditorkreis3=.
                                Analog zu der Ziffer 1,2 und 3 sind die Werte LagerWareneingangskontoInnenumsatzX und EinkaufKostenInnenumsatzX zu setzen.
                               LagerWareneingangskontoInnenumsatz1: Wert Kontonummer. Default ""
                                Innenumsatzkonto fuer lagerhaltige Waren, das den Kreditorenkontonummern im Wert "Kreditorkreis1" zugeordnet wird.
                               EinkaufKostenInnenumsatz1: Wert Kontonummer. Default ""
                                Innenumsatzkonto fuer nicht lagerhaltige Waren/Leistungen, das den Kreditorenkontonummern im Wert "Kreditorkreis1" zugeordnet wird.
                               Debitorkreis1: Wert Kontonummer. Default ""
                                Es kann eine mit Liste mit Debitorenkontonummern angegeben werden, fuer die das folgende Konten beim Innenumsatz gilt.
                                Die Kontenangaben muessen vollstaendig in voller Laenge (ggf. mit fuehrenden Nullen) angegeben werden.
                                Mehrere Konten sind mit Strichpunkt zu trennen. Es konennen maximal 255 Zeichen angegeben werden.
                                Es koennen bis zu Debitorenkreise angegeben werden. Verwenden Sie dazu den Wert Debitorenkreis2= und Debitorenkreis3=.
                                Analog zu der Ziffer 1,2 und 3 ist der Wert VerkaufErloesInnenumsatzX zu setzen.
                               VerkaufErloesInnenumsatz1: Wert Kontonummer. Default ""
                                Erloeskonto im Verkauf, das den Debitorenkontonummern im Wert "Debitorenkreis1" zugeordnet wird.

551 06.06.11 PROGLOAD: Automatische Zuordnung der Artikelstamm-Systemfunktion zu Objekten aus der Datei FAKT.FRC abgeschaltet.

                               Bisher wurden Dateien die mit "ART..." beginnen mit der Systemfunktion versehen.

552 07.06.11 STDCON: Automatischer Restart im ASP-Hostmodus beim Abriss der Verbindung zum Pervasive verschaertft.

                  PRGLOAD:    Kommando DoHtmlRequest() erweitert:
                                DoHtmlRequest();
                                DoHtmlRequest( "HtmlDatei");
                                DoHtmlRequest( "HtmlDatei", x, y);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus);
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                                DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                              Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                              Mit Modus koennen verschiedene Optionen geschaltet werden:
                                 1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                                 2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                                 4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                                 8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                                16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                               Es wird statt dessen der Tastencode F23 gesendet.
                                               Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                                32 (0x0020) -> Der Dialog wird nicht Modal durchgefuehrt. Nicht modale Fenster koennen auch minimiert werden.
                                64 (0x0040) -> Das Fenster kann nur einmal geoeffnet werden. Besteht es bereits wird das bestehende Fenster aktiviert.
                               128 (0x0080) -> Das Fenster wird maximiert geoeffnet
                               256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                               512 (0x0200) -> In der Titelzeile werden alle Systemmenuefuktionen und Buttons abgeschaltet
                              1024 (0x0400) -> Der Maximierungsbutton ist nicht sichtbar
                              2048 (0x0800) -> Der Minimierungsbutton ist nicht sichtbar
                              4096 (0x1000) -> Des Fenster wird im Fullscreenmodus ohne Rand geoeffnet (Kioskmodus)
                              8192 (0x2000) -> Der ASP-Host wird im Fehlerfall neu gestartet
                              Mit Titel kann ein Fenstertitel angegeben werden.
                              Mit IconId kann ein Icon des Fensters angegeben werden.
                              Mit '?' angehaengte Parameter an der URL der HtmlDatei werden jetzt korrekt an den internen
                              Parameter pinID angehaengt.
                  FFPROD3:    Bei der Produktionsanlage von Auftraegen die Meldung "RevLogID" nicht gefunden bei nicht vorhandener Revisionsverwaltung beseitigt.

553 09.06.11 PRGLOAD: RenameFile, CopyFile und AppendFile unterstuetzen jetzt die Angabe c:/temp.

                  DFED2LIB:   Bei der Sucheingabe in der Maske (+ oder - Taste) in der klassischen Version den Mausklick auf Felder im unteren Bereich
                              einer Maske korrigiert.
         09.09.11 FAKTEDIT:   Systemmakro .$29 implementiert: Belegbearbeitung nach Beleg buchen, ganz zum Schluss (spaeter als .$24, nach der Objekt-Memberfunktion) FAKTEDIT
                  WINIFW:     Spaltenoptimierung in der Datenliste bei Fettdruck optimiert.
         10.09.11 PRGLOAD:    Neue Kommandos ClrColorFilter(), SetColorFilter() und AddColorFilter() 
                               ClrColorFilter();
                               SetColorFilter( Vergleich, Feldnummer, Vergleichswert, Index, Modus);
                               SetColorFilter( Vergleich, Feldnummer, Vergleichswert, Index, Modus, Farbe);
                               SetColorFilter( Vergleich, Feldnummer, Vergleichswert, Index, Modus, Farbe, Icon);
                               AddColorFilter( Vergleich, Feldnummer, Vergleichswert, Modus);
                               AddColorFilter( Vergleich, Feldnummer, Vergleichswert, Modus, Farbe);
                               AddColorFilter( Vergleich, Feldnummer, Vergleichswert, Modus, Farbe, Icon);
                              Mit den Kommandos kann eine Zeile in den IFW-Datenbanklisten eingefaerbt und/oder mit einem Icon versehen werden.
                              Ist eine Vergleichbedingung erfuellt, so wird die Farbe und/oder das Icon in der Zeile dargestellt.
                              Besitzt die Zeile bereits eine Farbe oder ein Icon, so bleiben die Angaben erhalten und es erfolgt keine Aenderung der Anzeige.
                              Es koennen bis maximal 64 Bedingungen gesetzt werden.
                              Die erste Bedingung die zutrifft wird zugeordnet. Mit dem Wert Modus = 1 kann eine Bedinung mit der naechsten
                              Bedinung UND-Verknuepft werden. Bei Modus = 0 erfolgt eine ODER-Verknuepfung.
                              Vergleich:
                                1: Inhalt von Feld Feldnummer == Vergleichswert
                                2: Inhalt von Feld Feldnummer != Vergleichswert
                                3: Vergleichswert als Teilwort im Feld Feldnummer enthalten (keine Gross/Kleinschreibung).
                                4: Einer der Buchstaben aus Vergleichswert im Feld Feldnummer enthalten, geht nur mit Felder der Laenge 1
                                5: Keiner der Buchstaben aus Vergleichswert im Feld Feldnummer enthalten, geht nur mit Felder der Laenge 1
                                6: Inhalt von Feld Feldnummer > Vergleichswert
                                7. Inhalt von Feld Feldnummer >= Vergleichswert
                                8: Inhalt von Feld Feldnummer < Vergleichswert
                                9: Inhalt von Feld Feldnummer <= Vergleichswert
                               10: Vergleichswert als Teilwort im Feld Feldnummer nicht enthalten (keine Gross/Kleinschreibung).
                              Feldnummer:
                               Feldnummer aus der Datenbank
                              Inhalt:
                               Zu vergleichender Inhalt
                              Index:
                               Filternummer 0-63
                              Modus:
                               0: Verknuepfe den Vergleich (Index) ODER mit dem naechsten Vergleich (Index+1)
                               1: Verknuepfe den Vergleich (Index) UND mit dem naechsten Vergleich (Index+1)
                              Farbe:
                               Textfarbe der Zeile AARRGGBB
                               AA: 00 Normalschrift, 01 Fettschrift
                               RR: Roter Farbwert hexadezimal 00-FF
                               GG: Gruender Farbwert hexadezimal 00-FF
                               BB: Blauer Farbwert hexadezimal 00-FF
                              Icon:
                               Einzublendendes Icon 1-999 aus der IFW-Iconliste.
                              Hinweis:
                               Wird als Farbwert 0x01000000 fuer Fettdruck angegeben, so wirkt er zusaetzlich zu einer vom System bereits
                               gesetzten Farbe. Bei allen anderen Angaben hat eine gesetzte Systemfarbe vorrang.
          16.06.11 API_MFRM:  Neues HTML-Kommando GetFileAccess()
                                GetFileAccess( winHandle, Filename)
                              Es wird der Zugriffsstatus der Datei ausgegeben.
                              Rueckgabesting: "exist,read,write,read/write,errno"
                              Die Werte sind 0 oder 1, errno ist der Systemrueckgabewert vom exist-Aufruf.
                   API_MFRM:  Neues HTML-Kommando IsOnline()
                                IsOnline( winHandle)
                              Es wird zurueckgegeben ob das IFW Online ist.
                              "1"->IFW ist online
                              "0"->IFW ist offline
                              Nur der WWW-Client kann offline sein. Das normale IFW-Programm ist immer online.
                   API_MFRM:  Neues HTML-Kommando ReadDir()
                                ReadDir( winHandle, Filename)
                              Es wird eine mit TAB getrennte Liste der gefundenen Dateien zurueckgegeben.
                              Als Dateiname koennen '*' und '?' als Joker verwendet werden.
                              Als Pfad wird der aktuelle IFW-Pfad verwendet.
                              Die Eintraege werden unsortiert in physikalischer Reihenfolge, wie auf dem Datentraeger gespeichert, zurueckgegeben.
                   FAKTEDIT:  Wird ein Beleg rückgängig gemacht, so wird bei aktivem Aenderungslogbuch der Beleg im Aenderungslogbuch gespeichert.

554 17.06.11 API_MFRM: Neues HTML-Kommando GetSysInternalsObject()

                               GetSysInternalsObject( Objektname, Modus);
                              Modus:
                               0x0001: Ausgabe der aktuell zugewiesenen Rechte (220)
          21.06.11 PRNLIB:    Druckvorlagenkommando [Vx:dsDatum] implementiert.
                              Es fuegt dem Dispostrahl die Menge in Vx am Datum hinzu.
                              In Vx wird der neue Dispoaenderungswert des Datums zurueckgegeben.
          22.06.11 FFBSTLST:  Funktion "Bestellvorschläge" in der Windowsversion korrigiert
          23.06.11 DFLIB2:    Archiv/Papierkorbanzeige bei nicht vorhandenem Status-Feld aber vorhandenem Systemflags-Feld beim 2-Dateien-Archiv korrigiert.
          24.06.11 WINIFW:    Tooltip auf den Spalten des Listenfensters beim horizontalen Scrollen korrigiert
                   WINIFW:    Zulaessige Zeicheneingabe in Feldern wird jetzt in der Windowsversion genauso geprueft wie in der klassischen Version.

555 30.06.11 WINIFW: Tastencode Strg-Z (Undo) in einzeiligen Eingabefeldern aktiviert.

                   FAKTMAIN:  IFW ModulManager erweitert;
                              Popup-Menues der Datenbanktabellen kann jetzt global mit Menuepunkten erweitert werden.
                              Die Funktionen werden wie die Hauptmenuepunkte aufgerufen.
                              Es koennen so MENUBnnn.$00 Dateien eingebunden werden.
                              -> TABLE_HEAD.MRC Es werden Menuepunkt am Anfang des Popupmenues eingebunden
                              -> TABLE_FUNC.MRC Es werden Menuepunkt unterhalb des Submenuepunkts "Selektionen" im Popupmenue eingebunden
                              -> TABLE_TAIL.MRC Es werden Menuepunkt am Ende des Popupmenues eingebunden
                              Wird ein MENUBnnn.$00 Makro vom Popupmenu aufgerufen, so enthaelt es als Ausgangsobjekt die aktuelle Datenbanktabelle.
                              Wird ein MENUBnnn.$00 Makro vom Hauptmenu aufgerufen, so enthaelt es als Ausgangsobjekt die Benutzertabelle

556 05.07.11 PRGLOAD: Kommando ConvertIcsvToImportCsv() erweitert:

                              ConvertIcsvToImportCsv( Dateiname);
                              ConvertIcsvToImportCsv( Dateiname, Modus);
                              ConvertIcsvToImportCsv( Dateiname, Modus, EbenenLimit);
                                Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                                Mit dem optionalen Parameter "EbenenLimit" kann die Ausgabe hierachischer Daten auf die angegeben maximale Tiefe
                                begrenzt werden. Die Ebene 0 ist die oberste Ebene. Wird kein EbenenLimit angegeben, so werden alle daten ausgegeben.
                              Modus:
                                0x0000 - Umwandlung in eine CSV Datei mit TAB getrennt.
                                0x0001 - Umwandlung in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel (0 100, 1 200, 2 300 ...) und Feldbeschriftung mit Variablennamen aus der Kopfzeile.
                                0x0002 - Umwandlung in eine XML-Datei im Excel-Format. Dateiname mit Erweiterung .xml
          06.07.11 WINIFW:    Datentabellen an Excel werden jetzt im XML-Format uebergeben. Das Format unterstuezt das Text,Zahlen und Datumsformat
                              Mit dem Schalter "OfficeXmlExport=0" Kann in der Arbeitsplatz-INI Datei im Verzeichnis USER (ini_rechnername.ini) die Konvertierung abgschaltet werden.
          08.07.11 FFARTPR:   Nur noch 'J' Artikel mit Stuecklisten werden in Belegpositionen mit ihrer Materialliste uebernommen. Bisher wurden alle 
                              "Nicht K" "Nicht X" und "Nicht F" Artikel mit ihrer Stueckliste, falls vorhanden, uebernommen.
                              War im Artikelstamm ein Artikel ohne Stuecklistenkennzeichen versehen, so wurde eine evt. vorhandene Stueckliste uebernommen.
                              Mit der neuen Konfigurationen werden nur noch explizit mit 'J' gekennzeichneten Artikel mit ihrer Stueckliste uebernommen.
          11.07.11 FFPROD2:   Beim Produktionsabgleich mit Revisiosnaenderung wird die Revisionsbeschriftung des Artikels in den Porduktionskopf und in die erste Position uebernommen.
                   FFBSTLST:  Beim Bestellung schreiben von Bestellliste kann jetzt in der Bestellliste im Feld Status das Kennzeichen P gesetzt werden.
                              Einkaufspreise in Eintraegen mit gesetztem Kennzeichen P werden jetzt immer in die Bestellung uebernommen.
                              Ohne Kennzeichen P haben Fremdwaehrungspreise aus Lieferantenbezuege vorrang vor den Preisen in der Bestelliste.

557 13.07.11 BRECLIB: Vergleich der "Alternate Collating Sequence" von signed auf unsigned umgestellt. In den Rechtegruppen waren nicht alle Zeichen erreichbar.

          15.07.11 FIBU:      Beim Login in das FIBU-Archiv mit dem Loginkommando Benutzername&fibuJAHR werden jetzt die Datenbankrechte auf versteckte Felder mit aktiviert.
                   FFBETON:   Bei nur einer aktiven Waage ohne Waagenwahl wird jetzt auch die erste Waage aus der waagen.ini verwendet.
                   STDPRJ:    Systemprogramme .$59 fuer Browser aktiviert, wird immer zentral vor .$40 - .$56 aufgerufen.
                   PRGLOAD:   Makrokommando Gosub() erweitert.
                              Wird als Programmname die Programmerweiterung .pr* angegeben, so wird zuerst versucht das Programm mit dem Name
                              .pru aufzurufen. Ist es nicht vorhanden, so wird das Programm mit der Erweiterung .prg aufgerufen.
                   DFLIB:     Uebernahme des Datensatzfokus von unbenutzten Datenbankinstanzen unterbunden. So bleibt der zuletzt angewählte Datensatz
                              eher im Fokus.
                   PRGLOAD:   Neues Makrokommando ReadProfile()
                                ReadProfile( Modus, Sektion, Variable);
                                ReadProfile( Modus, Sektion, Variable, DefaultWert);
                              Modus:
                               "user":    Es wird das benutzerabhaengige Profile abgefragt
                               "station"  Es wird das stationsabhaengige Profile abgefragt
                              Sektion:
                               Sektion aus der der Wert gelesen werden soll
                              Variable:
                               Variable deren Wert gelesen werden soll
                              DefaultWert:
                               Wert der zurueckgegeben wird, wenn die Variable nicht existiert.
                              Hinweis:
                               Besteht der Wert im Profil noch nicht, dann wird als Vorgabe das Masterprofil verwendet.
                               Ist auch im Masterprofil der Wert nicht vorhanden, dann wird der Defaultwert verwendet.
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zum aufrufenden
                               Makro lokalisiert. Das Kommando ReadProfile() legt das Verzeichnis nicht automatisch an.
                               Der Wert wird in Vt zurueckgeliefert.
                   PRGLOAD:   Neues Makrokommando WriteProfile()
                                WriteProfile( Modus, Sektion, Variable);
                                WriteProfile( Modus, Sektion, Variable, Wert);
                              Modus:
                               "user":    Es wird das benutzerabhaengige Profile geschrieben
                               "station"  Es wird das stationsabhaengige Profile geschrieben
                               "master"   Es wird das Masterprofile geschrieben
                              Sektion:
                               Sektion in der der Wert geschrieben werden soll
                              Variable:
                               Variable deren Wert geschrieben werden soll
                              Wert:
                               Wert auf den die Variable gesetzt wird.
                              Hinweis:
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zum aufrufenden
                               Makro lokalisiert. Besteht das Verzeichnis noch nicht, wird es mit dem Kommando WriteProfile()
                               automatisch angelegt.
          16.07.11 STDPRJ_:   Aufruf der Plantafel mit 16 Bit Handle und Mandanten korrigiert. Es gab ein Resourcenfehler in der Ableitung der
                              Termindaten zur Benutzerliste. Problem beseitigt.

558 20.07.11 PRGLOAD: Kommando ConvertIcsvToImportCsv() erweitert um Modus 0x0004, 0x0008, 0x0010 und 0x0020:

                              ConvertIcsvToImportCsv( Dateiname);
                              ConvertIcsvToImportCsv( Dateiname, Modus);
                              ConvertIcsvToImportCsv( Dateiname, Modus, EbenenLimit);
                                Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                                Mit dem optionalen Parameter "EbenenLimit" kann die Ausgabe hierachischer Daten auf die angegeben maximale Tiefe
                                begrenzt werden. Die Ebene 0 ist die oberste Ebene. Wird kein EbenenLimit angegeben, so werden alle daten ausgegeben.
                              Modus:
                                0x0000 - Umwandlung in eine CSV Datei mit TAB getrennt.
                                0x0001 - Umwandlung in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel (0 100, 1 200, 2 300 ...) und Feldbeschriftung mit Variablennamen aus der Kopfzeile.
                                0x0002 - Umwandlung in eine XML-Datei im Excel-Format. Dateiname mit Erweiterung .xml
                                0x0004 - Konvertierung des Dezimaltrenners von Komma "," nach Punkt ".", je nach Systemeinstellung "Zahlenformat bis/ab Excel 2003/2007".
                                0x0008 - Strichpunkt ";" anstatt Tab "\t" als Trennzeichen ausgeben
                                0x0010 - Nur Zeilen vom Typ "Daten" ausgeben. alle anderen Zeilen werden uebersprungen.
                                0x0020 - Nur Spalten ausgeben die das Zeichen Istgleich "=" enthalten ausgeben. Es wird nur der Wert nach dem ersten "=" ausgegeben.
                                         Spalten ohne "=" werden uebersprungen.
          21.07.11 TAPIUTIL:  Die Variable "TAPIDeviceNameIncomming" in der User INI um den Namen "TAPIDeviceNameIncoming" erweitert. Beide Angaben sind erlaubt.
                              Werden beide Werte angegeben hat "TAPIDeviceNameIncoming" vorrang.
          22.07.11 FAKTEDIT:  Beim Kommando DocumentImportFile mit Modus IMPORT_DOCUMENT_EDIT zum direkten Anzeigen und Bearbeiten der
                              einzulesenden Daten wird keine Fortschrittsbalken mehr angezeigt. Dadurch ist ein korrektes Bearbeiten aller Belege moeglich.
                              Bisher konnte nur der 1.Beleg bearbeitet werden. Alle weiteren wurden mit einer Abbruchmeldung belegt.
                   FAKTEDIT:  Beim Kommando DocumentImportFile mit Modus IMPORT_DOCUMENT_EDIT zum direkten Anzeigen und Bearbeiten der
                              einzulesenden Daten wird jetzt auch im Aenderungsmodus D1 und D3 korrekt unterstuetzt.

559 25.07.11 PRGLOAD: Makrokommando ProdCompletion erweitert:

                              ProdCompletion( Modus);
                              ProdCompletion( Modus, Seriennummer);
                              ProdCompletion( Modus, Seriennummer, Ziellager);
                              Damit kann ein Produktions Masterabschluss durchgefuehrt werden. Ueber eine
                              Schleife von selektierten Produktionen kann so der Abschlussvorgang automatisiert werden.
                              Mit Seriennummer kann das Seriennummernfeld vorgegeben werden.
                              Mit Ziellager kann das Lager auf das dass Fertigpordukt gebucht werden soll vorgegeben werden.
                              Modus 0: Evt. auftretende Meldungen aus Pruefmakros werden angezeigt.
                              Modus 1: Es werden keinerlei Meldungen angezeigt.
                              Modus 2: Beim Masterabschluss werden keine Istwerte der Positionen eingetragen. Nur der Istwert des produzierten Artikels.
                              Modus 3: Modus 1 und 2 zusammen.
                              Modus 4: Es werden nur die Istwerte gesetzt, und ggf. das Bearbeitungszeichen B gesetzt.
                              Modus 5: Modus 1 und 4 zusammen.
                              Beim Modus ohne Meldung wird die interne Meldung in der Textvariable Vt gespeichert.
                              Ist Vt leer, so war der Vorgang erfolgreich.
          25.07.11 FFPROD2:   Beim Produktionsabgleich mit Revisionsaenderung die Uebernahme des Revisionsbeschriftung des Artikels in den Porduktionskopf und in die erste Position korrigiert.

560 02.08.11 FFPROD2: Bei der Produktionsanlage mit alternativer Revision Uebernahme des Revisionsbeschriftung des Artikels in den Porduktionskopf und in die erste Position korrigiert.

          03.08.11 PRGLOAD:   Kommando ConvertIcsvToImportCsv() erweitert um Modus 0x0040 und 0x0080
                              ConvertIcsvToImportCsv( Dateiname);
                              ConvertIcsvToImportCsv( Dateiname, Modus);
                              ConvertIcsvToImportCsv( Dateiname, Modus, EbenenLimit);
                                Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                                Mit dem optionalen Parameter "EbenenLimit" kann die Ausgabe hierachischer Daten auf die angegeben maximale Tiefe
                                begrenzt werden. Die Ebene 0 ist die oberste Ebene. Wird kein EbenenLimit angegeben, so werden alle daten ausgegeben.
                              Modus:
                                0x0000 - Umwandlung in eine CSV Datei mit TAB getrennt.
                                0x0001 - Umwandlung in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel (0 100, 1 200, 2 300 ...) und Feldbeschriftung mit Variablennamen aus der Kopfzeile.
                                0x0002 - Umwandlung in eine XML-Datei im Excel-Format. Dateiname mit Erweiterung .xml
                                0x0004 - Konvertierung des Dezimaltrenners von Komma "," nach Punkt ".", je nach Systemeinstellung "Zahlenformat bis/ab Excel 2003/2007".
                                0x0008 - Strichpunkt ";" anstatt Tab "\t" als Trennzeichen ausgeben
                                0x0010 - Nur Zeilen vom Typ "Daten" ausgeben. alle anderen Zeilen werden uebersprungen.
                                0x0020 - Nur Spalten ausgeben die das Zeichen Istgleich "=" enthalten ausgeben. Es wird nur der Wert nach dem ersten "=" ausgegeben.
                                         Spalten ohne "=" werden uebersprungen.
                                0x0040 - Kein CSV Format erzeugen, keine Strichpunkte einsetzen. Das Trennzeichen aus den Nutzdaten zwangsersetzen durch Leerzeichen.
                                0x0080 - Immer CSV Format mit Hochkommas verwenden. Modus 0x0040 hat vorrang.

561 03.08.11 STDPRJ: Problem beim Favoritenmanagement mit erweiterter 32Bit-Handle Verwaltung beseitigt.

                  EMUC:       Neue Verwaltung des Standarddruckers im IFW.
                              - Beim Programmstart wird der Standarddrucker geladen.
                              - Beim Drucken im IFW auf den Drucker "Standarddrucker" wird der Drucker vom Programmstart verwendet.
                              - Nach dem Druck wird immer auf den Drucker vom Programmstart zurueckgeschaltet.
                              Zusaetzlich kann in der Arbeitsplatzeinstellung im Verzeichnis USER (ini_rechnername.ini) mit dem Schalter
                              "DefaultPrinter" der Standarddrucker auf einen festen Druckername gestellt werden. Ist der Wert gesetzt, so 
                              wird beim Programmstart versucht diesen Drucker einzustellen und im weiteren zu verwenden.
                              Der aktuelle Standarddrucker des IFW's laesst sich unter "Programminformationen..." abfragen.
         04.08.11 API_MFRM:   HTML-Kommando MandantNumber korregiert. Es wird jetzt korrekt die Mandantennummer ausgegen, nicht mehr der Mandantenname.
                  API_MFRM:   Kommando WriteProfile() um 5 weitere Modis erweitert
                              Modus:
                               "user":         Es wird das benutzerabhaengige Profile geschrieben
                               "station"       Es wird das stationsabhaengige Profile geschrieben
                               "master"        Es wird das Masterprofile geschrieben
                               "ifwuser"       Es wird das benutzerabhaengige IFW Profile geschrieben
                               "ifwstation"    Es wird das stationsabhaengige IFW Profile geschrieben
                               "ifwcore"       Es wird die IFW Konfigurationsdate fakt.ini geschrieben
                               "ifwcorebase"   Es wird die IFW Konfigurationsdate fakt.ini geschrieben
                               "ifwcoreclient" Es wird die mandantenabhaengig IFW Konfigurationsdate faktnnn.ini geschrieben
                              Hinweis:
                               Die Konfigurationsdateien "user", station" und "master" befinden sich im Verzeichnis "config". 
                               Das Verzeichnis ist zur aufrufenden Funktion lokalisiert. Besteht das Verzeichnis noch nicht, wird es mit dem Kommando WriteProfile()
                               automatisch angelegt.
                              Hinweis Modus "ifwuser", "ifwstation":
                               Die Konfigurationsdateien "ifwuser" und "ifwstation" befinden sich im Verzeichnis "user" im IFW Pfad.
                              Hinweis Modus "ifwcore", "ifwcorebase" und "ifwcorclient":
                               Die Konfigurationsdateien "ifwcore" und "ifwcorebase" und "ifwcoreclient" befinden sich im IFW Pfad.
                               Die 3 Modis koennen nur als IFW-Supervisor verwendet werden.
                 API_MFRM:    Kommando ReadProfile() um 5 weitere Modis erweitert
                              Modus:
                               "user":         Es wird das benutzerabhaengige Profile abgefragt
                               "station"       Es wird das stationsabhaengige Profile abgefragt
                               "ifwuser"       Es wird das benutzerabhaengige IFW Profile abgefragt
                               "ifwstation"    Es wird das stationsabhaengige IFW Profile abgefragt
                               "ifwcore"       Es wird die IFW Konfigurationsdate fakt.ini und die mandantenabhaengig IFW Konfigurationsdate faktnnn.ini abgefragt
                               "ifwcorebase"   Es wird die IFW Konfigurationsdate fakt.ini abgefragt
                               "ifwcoreclient" Es wird die mandantenabhaengig IFW Konfigurationsdate faktnnn.ini geschrieben
                              Hinweis Modus "user" und "station":
                               Besteht der Wert im Profil noch nicht, dann wird als Vorgabe das Masterprofil verwendet.
                               Ist auch im Masterprofil der Wert nicht vorhanden, dann wird der Defaultwert verwendet.
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zur aufgerufenen
                               ITB-Datei lokalisiert. Das Kommando ReadProfile() legt das Verzeichnis nicht automatisch an.
                              Hinweis Modus "ifwuser", "ifwstation":
                               Die Konfigurationsdateien "ifwuser" und "ifwstation" befinden sich im Verzeichnis "user" im IFW Pfad.
                              Hinweis Modus "ifwcore", "ifwcorebase" und "ifwcorclient":
                               Die Konfigurationsdateien "ifwcore" und "ifwcorebase" und "ifwcoreclient" befinden sich im IFW Pfad.
                               Mit "ifwcore" wird zuerst die IFW Konfigurationsdatei fakt.ini abgefragt, dann die mandantenabhaengige IFW Konfigurationsdatei abgefragt.
                               So ergaenzen die zentralen Eintraege die mandantenabhaengigen Eintraege.
                 HTMLVIEW:    Der Standarddruckers des IFW's wird jetzt nach dem Drucken immer gesetzt, egal wie der Druckzaehler gesetzt ist.

! 06.08.11 DFED2LIB Beim Selektieren mit select_records() wird keine selektiertefür die gemeinsame Weiterverarbeitung markierte Datensätze Menge mehr zurueck gegeben. ! Bei der Stichprobeninventur wurde die Menge faelschlicher Weise als Fehlercode interpretiert. 562 10.08.11 WINIFW: Koennen IFW Fenster aus Mangel an Windowsresourcen nicht mehr geoefnet werden, wird die Meldung

                              "Es sind nicht genügend Windowsresourcen zum Oeffnen des Fensters vorhanden!" ausgegeben.
                              Bisher beendete sich das Programm ohne Meldung oder es erfolgte eine Schutzverletzung.
                 WINIFW:      Beim Oeffnen einer Eingabemaske werden jetzt die Unterfenter nicht mehr sofort generiert, erst beim Betaetigen durch 
                              den Anwender. Damit werden Windowsresourcen gespart und es koennen mehr Fenster geoeffnet werden.

563 WINIFW: Korrektur der Aktuallisierung der eingebetteten HTML-Eingabemasken.

                 WINIFW:      Ein modaler HTML-Requester schaltet jetzt auch das aufrufende Fenster ab.
                 WINIFW:      Lokales sortieren der Liste nach einem Suchlauf bei gleicher Sortierspalte unterbunden.

564 29.08.11 TOBITFW: Beim Einlesen von Emails und Konvertierung Von CP_UTF8 zu WideChar die Puffergroesse auf maximale WideChars limitiert 565 30.08.11 BRECLIB: Bei gesetztem Indexfilter wird jetzt auch das Kommando GetGreaterOrEqual auf den Filter geprueft und EOF zurueckgegeben.

                 IFWTAB:      Kommando ForEachFromTo bei gesetztem Linearfilter optimiert. Es wird jetzt ein Indexfilter bei vorhandenem Filterwert
                              und vorhandenem Linearfilter gesetzt. Damit werden unnoetige Datenbankabfragen auf Linearfilterinhalte vermieden, die laengst
                              nicht mehr dem Indexfilterwert entsprechen. Damit wird auch ggf. Fehler -60 bei gesetztem Linearfilter verhindert.
                 BRECLIB2:    Ueberpruefungsbereich bei gesetztem Linearfilter beim Kommando rec_filterGetPrevNext() von 65k auf 6,5M erhoeht.
        31.08.11 STDPRJ:      Beim Ein- und Ausloggen in das IFW wird im Benutzerlogbuch ein "ATH: login" oder "ATH: logout" Eintrag mitgeschrieben.

566 01.09.11 API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0001 um Spalte 21 erweitert:

                              DataFile Format:
                               1 lfdNr
                               2 df->accessminorhandle
                               3 df->dfnr
                               4 df->m_dh32.getDfHandleDWORD()
                               5 df->rec.flags
                               6 df->flags
                               7 df->flags2
                               8 df->usecnt
                               9 df->rec.name
                              10 df->lasttimeused
                              11 df->rec.reclen
                              12 df->rec.recbufflen
                              13 df->flags &DFF_RAM? (long)df->rambuffanz: df->rec.data->file.reccnt
                              14 df->rec.akt_key
                              15 df->rec.rootmai !=NULL? df->rec.rootmai->code: -1
                              16 df->rec.rootkey
                              17 df->rec.m_wRootKeyLen
                              18 df->rec.rootmai2 !=NULL? df->rec.rootmai2->code: -1
                              19 df->rec.rootkey2
                              20 iEbene0
                              21 df->ed_FN_getStateString()
                 WINIFW:     Der Menuepunkt Sysinternals laesst sich jetzt auch aufrufen, wenn gerade ein Beleg bearbeitet wird (Modaler Modus).
                 FAKTMAIN:   Funktionsaufrufsregistration erweitert. Bei einer Schutzverletztung wird sie angezeigt.
        02.09.11 API_MFRM:   Neues HTML-Kommando GetTimeOut()
                               GetTimeOut();
                             Gibt den Bildschirmschonerzustand aus:
                             "logout,on,time sec,left sec"
                             logout: Gibt an ob der Benutzer ausgelogt wird. 0 nicht ausloggen, 1 ausloggen.
                             on: Gibt an ob der Bildschirmschoner ausgeloest wurde. 0 er ist nicht aktiviert, 1 er wurde aktiviert.
                             time: Gibt die eingestellte Zeit in Sekunden an. 0 abgeschaltet, >0 Zeit in Sekunden.
                             left: Restzeit bis zum aktivieren des Bildschirmschoners.

567 05.09.11 API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0020 impelemetiert:

                             Es wird der aktuelle Funktionsstapel ausgegeben.
                              Functionstack:
                              Index= TAB Functionsname= TAB Data= TAB
        06.09.11 DFED3LIB:   Beim Archivieren werden die Dateianhänge beim Benutzen der globalen Archivierungsfunktion immer korrekt mitarchiviert.
                             Bisher wurden die Dateianhänge ohne vorherigem Aufruf der betroffenen Listen wegen fehlender dynamischen Initialisierung nicht
                             mitbewegt.
        08.09.11 WINIFW:     Waehrend asynchron eingehende HTML-Kommandos wird kein Scan der Nachrichten und des Emaileingangs mehr vorgenommen.
                             Die gleichzeitige Verarbeitung konnte zu Bearbeitungskollisionen fuehren.
                 API_MFRM:   Rekursiver Aufruf der Synchronisierung der Nachrichten korrigiert.
        12.09.11 API_MFRM:   Neues HTML-Kommando IsProgramBusy()
                               IsProgramBusy();
                             Gibt "0" zurueck, wenn die Funktion "ExecuteProgram()" verfuegbar ist. Bei einem Wert ungleich "0" (typisch >0) ist die Programmfunktion gerade in
                             Benutzung. In diesem Fall gibt "ExecuteProgram()" immer den Wert "*blocked*" zurueck.
                             Den Wert immer auf "0" oder ungleich "0" abfragen.
        14.09.11 WINIFW:    Die Standard IFW-Tabelle im klassischen IFW wird jetzt auch im XML-Format an Excel uebergeben. Das Format unterstuezt das Text,Zahlen und Datumsformat
                            Mit dem Schalter "OfficeXmlExport=0" kann in der Arbeitsplatz-INI Datei im Verzeichnis USER (ini_rechnername.ini) die Konvertierung abgschaltet werden.

568 14.09.11 WINIFW: Fenster, die gerade in Benutzung sind, haben jetzt einen Schutz vor schliessen des Fenster erhalten.

                            Unter Umstaenden kann die Meldung "Es wird versucht ein Fenster zu schließen, dass noch nicht freigegeben ist!" ausgegeben werden.
        15.09.11 API_MFRM:  Neues HTML-Kommando GetSystemComputerName() und GetSystemVersion()
                              GetSystemComputerName() 
                            Gibt den Windows Computername zurueck.
                              GetSystemVersion()
                            Gibt die Windows Version zurueck.
        16.09.11 STDPRJ:    Das IFW Benutzerprofil im Verzeichnis user/ini_RECHNERNAME.ini ist jetzt fuer Terminalserversessions erweitert.
                            RECHNERNAME wird durch TS.CLIENTNAME ersetzt. Existiert die Datei user/ini_TS.CLIENTNAME.ini noch nicht, so wird als
                            Vorgaben die Datei user/ini_RECHNERNAME.ini verwendet. RECHNERNAME ist dabei der Name des Terminalservers.
        19.09.11 WINIFW:    Refreshproblem der Stueckliste von belegbezogenen Variantenstuecklisten bei der Erfassung beseitigt.

569 21.09.11 WINIFW: Timeout Meldung beim Benutzen von Scannern via TWAIN unterbunden. Sie trat bei diversen Scann-Treibern die nur im Modalen Modus laufen auf.

                            Zusaetzlich wird beim Scannen die Moeglichkeit geboten eine Erweiterung des automatischen Dateinamens einzugeben.
        28.09.11 API_MFRM:  Neue HTML-Kommando ComOpen(), ComClose(), ComRead(), ComWrite()
                            Mit den Kommandos kann ein Serieller Port bedient werden.
                              ComOpen( port)
                            Oeffnet einen seriellen Port 1-64. Gibt "ComOpen port x: erg" zurueck. Mit erg==0 wurder der Port erfolgreich geoeffnet.
                              ComClose( port)
                            Schliesst einem seriellen Port 1-64. Gibt "ComClose port x: erg" zurueck. Mit erg==0 wurder der Port erfolgreich geschlossen.
                              ComRead( port)
                            Liest Daten von einem seriellen Port 1-64. Gibt die gelesenen Daten als String mit abschliesender 0 zurueck.
                            Sind keine Daten vorhanden wird ein leerer String zurueckgegeben.
                            Im Fehlerfall wird "*error x*" mit x = -1 zurueckgegeben.
                              ComWrite( port, data)
                            Schreibt Daten auf einem seriellen Port 1-64. Gibt "ComWrite port x: erg" zurueck. Mit erg==0 wurden die Daten erfolgreich geschrieben.
        29.09.11 SERPORT:   Fehlerhaendling bei Benutzen der seriellen Schnittstelle optimiert.
        12.10.11 DFLOADZW:  Beim Beleg von Beleg schreiben wird bei einem autoselekt eines Eintrags nach der Verarbeitung ein zwangs-deselekt vorgenommen.

570 13.10.11 PRGLOAD: Makrokommando Gosub erweitert:

                              Wird als Sprungmarke fuehrend der Text "*quiet*" angegeben ( z.B. "*quiet*Weiter"), so werden keine Meldungen vom aufgerufenen Unterprogramm ausgegeben.
                              Das Unterprogramm vererbt den Quiet-Mode an weitere Unterprogrammaufrufe.
        15.10.11 PRGLOAD:   Selten vorkommenden Absturz beim Archivieren von Datensaetzen aus dem Datenbanklogbuch beseitigt.

571 17.10.11 PRGLOAD: Makrokommandos mit separatem Systemhandle (DF_RESMHD_MAKRO) versehen. Es gab Kollisionen mit dem Nachrichtensystem.

        19.10.11 PRNLIB3:   Neues Druckvorlagenkommando [.ProcessId<]
                            Damit wird die aktuelle ProcessId (4-Stellige Ziffernfolge, z.B. "0A28") ausgegeben.
        20.10.11 IFWTAB:    Die automatische Breiteneinstellung von Zellen mit Fettdruck so korrigiert, dass der Text komplett angezeigt wird.
        21.10.11 PINBOARD:  Bei aufpoppenden Nachrichten wird das NewFlag gesetzt.
                 WINIFW:    Neue aufrufbare Kommandos aus HTML-Seiten im IFW:
                              PinMessageState( pinId) 
                              -> gibt das Statusfeld der Nachricht aus
                              PinMessageNewFlag( pinId)
                              -> gibt das NewFlag-Feld der Nachricht aus
        24.10.11 PINBOARD:  Die Verwaltung von neueingehenden Nachrichten aktualisiert:
                            - Neue eingehende Nachrichten werden mit einem Neu-Kennzeichen als "Nicht gelesen" versehen.
                            - Das "Nicht gelesen Kennzeichen" wird nicht mehr automatisch geloescht. Es wird nur bei der Frage
                              "Alle Nachrichten als gelesen kennzeichnen? (Kennzeichnen/Nein)" mit Antwort "Kennzeichnen" entfernt.
                            - Alle neuen Nachrichten sind seitlich in einer Liste gefuehrt und koennen dort als gelesen gekennzeichnet werden.
                            - Auf dem Desktop werden die ungelesenen Nachrichten hervorgehoben (evt. roter Hintergrund);
                            Somit wird das Problem aufpoppender Nachrichten ohne dass ein Benutzer vor dem Bildschirm ist oder mehrere Bildschirme
                            aktiv sind umgangen. Der Benutzer muss jetzt immer die Nachrichten als gelesen kennzeichnen.
                 PRGLOAD:   Das Kommando RefreshDesktop() fuehrt jetzt am anwendenden Benutzer sofort ein Refresh aus.
        27.10.11 PROGLOAD2: Beim Druckvorlagenaufrufe von Systemfeldern aus den Programmeinstellungen ueber Makros oder Ifw-Tabellen wird jetzt eine
                            eigen Instanz der Programmeinstellungen verwendet. Damit werden kollisionen asynchron laufender HTML-Portale mit internen
                            Arbeitsvorgaengen verhindert.

572 31.10.11 IFWTAB: Kommando GetRecordByCommand() um Modus +10 erweitert.

                            Beim Suchmodus +10 (also 10 ==; 11 >; 12 >=; 13 <; 14 <= anstatt 0 ==; 1 >; 2 >=; 3 <; 4) wird nur in der aktuellen
                            Datenbank gesucht, nicht in der Normaldatenbank und dann in der Archivdatenbank.
                            Damit ist es möglich in der Do() Funktion einer ForEachFromTo() Schleife weitere Filterfunktionen zu realisieren, ohne
                            den Fokus auf die Datenbank der gerade durchlaufenden Schleife zu verlieren.
                  PROLOAD:  Das Makrokommando PrintFile() kann jetzt auch die Duckvorlagenoptionen als Variablenangabe verarbeiten.
        02.11.11  DFPRN:    Beim Kommando PrintFile wird die Option 0x400000 "Druckrequester anzeigen" (Option Q) in Verbindung mit der Option 
                            0x200 "als IFW Tabelle ausgeben" unterstuetzt.
        03.11.11 API_MFRM:  Neues HTML-Kommando GetDesktopRefreshCnt()
                              GetDesktopRefreshCnt();
                            Gibt 2 Zaehler mit Komma getrennt zurueck: AnzahlDesktoprefresh,AnzahlEvents
                            AnzahlDesktoprefresh -> Aenderung einer Nachricht auf dem IFW-Desktop
                            AnzahlEvents -> Event von Nachrichten oder Alarm.
                 API_MFRM:  HTML-Kommando IsOnline() erweitert
                              IsOnline( winHandle)
                            Es wird zurueckgegeben ob das IFW Online ist.
                            "1"->IFW ist online
                            "0"->IFW ist offline
                            Der WWW-Client kann offline sein.
                            Das normale IFW-Programm ist solange offline bis ein Benutzer eingeloggt ist.
        04.11.11 DFLIB:     Bei einer Schleife ueber selektierte Eintraege (z.B. ForEachSelected) wird bei einem Datenbankfokus auf die Zeile
                            "Neuen Eintrag aufnehmen" keine Fehlermeldung mehr ausgegeben.
                 WINIFW:    Das Druckvorschaufenster ist jetzt immer das Top-Level Fenster bei Aktivierung des IFW-Fensters
                 FFVERSND:  Bei der Paketerfassung zu Lieferscheinen wird bei Konsignationsbelieferungen die Meldung
                            "Dies ist eine Konsignationslagerbelieferung ohne Rechnung. (Weiter/Abbruch)" und beim Speichern die Meldung
                            "x Pakete fertig? (Lieferpapiere drucken/Weiter ohne Ausdruck/Zurueck)" ausgegeben. Eine unmittelbare
                            Rechnungserstellung ist zu Konsignationslieferscheien nicht moeglich.

573 07.11.11 FAKTEDIT: Beim Import von Belegen im Aenderungsmodus erfolgt jetzt eine TTS-Kapselung gesamt um das Loeschen und Neueinbuchen

                            des Belegs. Bisher waren es 2 getrennte TTS-Laeufe was im Fehlerfall der Neueinbuchung zum Verwerfen des Belegs fuehren
                            hat koennen.
                            Hinweis:
                            Die doppelte Kapselung ist immer nur in Verbindung mit der negativen Lagerbestandsblockade beim Buchen oder der
                            Vorbelegspruefung beim Buchen (Standardeinstellung) aktiv!
                 FFFIRUMS:  Beim Monatsabschluss (artums_uebertragen()) wird bei den Warengruppennummern Gross- und Kleinschreibung nicht mehr unterschieden.
                            Bei unterschiedlicher Schreibweise gabs ein Flush Problem beim Speichern und so zu niedrige Warengruppenumsätze.
        09.11.11 API_MFRM:  Neues IFW-Kommandos fuer HTML aktiviert:
                              window.external.DownloadFile( pinId, "QuellnameHost", "ZielnameClient");
                            Uebertraegt die Datei "QuellnameHost" vom Hostsystem zur Datei "ZielnameClient" des IFW WWW-Clients.
                            Das Kommando ist nur auf dem WWW-Client verfuegbar. Es koennen maximal ca. 130kB grosse Dateien (je nach Packungsdichte)
                            uebertragen werden.
                            Als Meldung kann "error parameter", "error read ...", "error open ...", "error write ...", "error client only", "ok nnn" erfolgen.
                            Bei "ok nnn" wird als nnn die Anzahl der geschriebenen Bytes zurueckgegeben.
        10.11.11 BRECORD.H  REC_ERROFF_USER -600 eingefuehrt. Der Offset ist mit weiterem negativen Wert einzusetzen um im Fehlerfall eine Unterscheidung zu
                            den Btrieve Fehlercodes zu bekommen. Die neuen Codes sind bei der Funktion assignStore() erstmals hinterlegt (-602 bis -604).
        09.11.11 API_MFRM:  Neues IFW-Kommandos fuer HTML aktiviert:
                              window.external.IsWWWClient( pinId);
                            Gibt "0" Zurueck wenn es nicht der IFW-WWW Client ist.
                            Gibt "1" Zurueck wenn es der IFW-WWW Client ist.
                 API_MFRM:  HTML Kommando ReadDir() und GetFileAccess() erweitert:
                            Es werden Kommandowoerter im Dateiname unterstuetzt. Sie muessen immer am anfang des Dateinamens stehen:
                            #LOCAL# -> Das Kommando wird lokal auf dem Rechner ausgefuehrt (Beim WWW Client der Client Rechner, ansonsten der Host Rechner).
                            #DIR# -> Es werden Direktorieeintraege gelesen, nicht Dateieintraege (wird nur beim Kommando ReadDir unterstuetzt).
        14.11.11 TERMINPL:  Beim Verschieben von Terminen in der klassischen Version im Terminkalender mit Strg-Return werden zugehoerige Termine bei
                            der Meldung "Alle zusammengehoerigen ... Termine verschieben? (Ja/Nein)" mit Antwort "Ja" mit verschoben. Dabei wird jetzt
                            das Aenderungkennzeichen gesetzt.
        17.11.11 PRGLOAD:   Neues Makrokommando SetFileTemp()
                              Setzt die Datei auf den temporären Speicher. Vor allem fuer den Aufruf der temporaeren Belegverarbeitung konzipiert.
        23.11.11 PRGLOAD:   Kommando DocumentEdit() erweitert.
                              -Es kann der Modus 10 fuer automatisches Speichern verwendet werden
                 DFIMP:     Import Erweitert:
                              Importkommando @#Repeat...; unterstuetzt bei Statusfeldern das Steuerwort "*SETVERMERK*"
                              Wird als Feldzuweisung das Steuerwort als erster Wert angegeben werden alle Nachfolgenden Buchstaben im Feld eingesetzte
                              oder gelöscht. Das Feld wird somit nicht mehr direkt ueberschrieben sondern ergaenzt. Zusaetzlich laesst sich mit dem Zeichen ~ ein Buchstaben loeschen.
                              Beispiel:
                                C46 enthaelt AF, Zuweisung $C46=B, Ergebnis C46 enthaelt B -> Das Statusfeld wird komplett mit dem Buchstaben B ueberschrieben.
                                C46 enthaelt AF, Zuweisung $C46=*SETVERMERK*B, Ergebnis C46 enthaelt ABF -> Das Statusfeld wird mit dem Buchstaben B ergaenzt.
                                C46 enthaelt AF, Zuweisung $C46=*SETVERMERK*B~F, Ergebnis C46 enthaelt AB -> Das Statusfeld wird mit dem Buchstaben B ergaenzt und der Buchstabe F wird geloescht.
                                C46 enthaelt AF, Zuweisung $C46=*SETVERMERK*B~FM, Ergebnis C46 enthaelt ABM -> Das Statusfeld wird mit dem Buchstaben B und M ergaenzt und der Buchstabe F wird geloescht.
                                C46 enthaelt AF, Zuweisung $C46=*SETVERMERK*B~FM~A, Ergebnis C46 enthaelt BM -> Das Statusfeld wird mit dem Buchstaben B und M ergaenzt und der Buchstabe A und F wird geloescht.
        24.11.11 MAPIAPI:   Das Kommando CallMailAPI prueft nicht mehr auf den Schluessel "MAPI" Wert "1" in HKEY_LOCAL_MACHINE "SOFTWARE\\Microsoft\\Windows Messaging Subsystem".
        29.11.11 FFVERSND:  Bei der Lieferscheinauswahl bei der Paketerfassung ist jetzt das Drucken mit F4 freiegegeben.
                 FFFIBU:    Bei den Konten kann das Kennzeichen "=" im Status zur Steuerung der Stapelverarbeitung angegeben werden. Mit gesetztem "=" wird
                            Die Steuerbuchungsart im Buchungssatz auf die Steuerbuchungsart aus dem Konto gesetzt.
                            Beispiel zum Buchen einer Eingangsrechnung mit gleichzeitiger Umsatzsteuer und Vorsteuer (§13b Nr.10):
                              1. Kennzeichen "i" im Feld "Ausland in der Eingangsrechnung.
                              2. In den Erloeskontenparameter unter "Innenumsatz(i)" Angabe des Kontos im Einkaufsbereich
                              3. Im Konto im Feld "auto. Steuerbuchung" das Kennezichen "E" fuer automatische Vorsteuer/Umsatzsteuerbuchung
                              4. Im Feld "Steuerschluessel" z.B. "8"
                              5. Im Feld "Kennzeichen" das Kennzeichen "=" und ">" setzten.
                              6. In der Vorsteuertabelle in der Zeile 8 Angabe der notwendigen Steuerkonten
                 FFEINK:    Im Einkauf lassen sich jetzt die Auslandskennungen in den Belepositionen mit F3 anpassen.
        30.11.11 PRGLOAD:   Das Kommando DocumentEdit() erweitert um VerarbeitungsModus 128:
                            DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                            Modus:
                              0: Neuer Beleg schreiben
                              1: ungespeicherter neuer Beleg weiterschreiben
                              2: Beleg veraendern           (mit Auswahl)
                              3: Beleg kopieren             (mit Auswahl)
                              4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                              6: Beleg rueckgaengig machen  (mit Auswahl)
                              7: Beleg stornieren           (mit Auswahl)
                              9: Beleg duplizieren          (mit Auswahl)
                             10: automatisches Speichern ohne Anzeige
                             14: Beleg abschliessen         (mit Auswahl)
                            VerarbeitungsModus:
                              1 0x0001: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                              2 0x0002: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                              4 0x0004: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                              8 0x0008: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                             16 0x0010: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                             32 0x0020: Bei "Belege abschliessen" erfolgt ein Zwangsabschluss des Lieferscheins, auch wenn er noch nicht komplett berechnet ist.
                             64 0x0040: Auftraege werden im Modus "Tagesgeschaeft" erfasst. Nach Abschluss des Auftrags wird sofort ein Lieferschein zum Auftrag aufgerufen.
                            128 0x0080: bei "Veraendern" nur Laden der Daten ohne Anzeige des Maske und ohne Speicherung

574 01.12.11 PINBOARD: Systemmakro .$83 implementiert:

                              Spezialprogramm beim Erzeugen einer Nachricht im System.
                              Das Programm wird vorm Speichern der Nachricht aufgerufen. Bei einem Rueckgabewert groesser 0 findet keine
                              Speicherung der Nachricht statt. Die Daten stehen zum Zeitpunkt des Aufrufs nur in im Speicher des Nachrichtenobjekts.
                              Die Funktion wird beim Emaileingeingang, beim Versenden einer Systemnachricht zum Meldebenutzer ("Ware ist zu Auftrag ... eingetroffen")
                              und bei der Ablage von Dateien auf dem Desktop ins Docustore aufgerufen. Im Feld 53 (Typ) steht dem Vorgang entsprechend eine Bezeichnung.
                 FFEINK:    Bautreagerumsaetze beim Einkauf aktiviert. Es koennen jetzt Lieferanten und Eingangsbelege mit dem Auslandskennzeichen 'u'
                            gekennzeichnet werden. Bautreagerumsaetze sind Eingangsbelege bei denen der Empfaenger Umsatzsteuerpflichtig ist, nicht der Rechnungsteller.
                            Diese Umsaetze sind Umsatzsteuerpflichtig und Vorsteuerpflichtig. Der Beleg selbst ist ohne Steuer behaftet. Steuer sie im Empfaengerkonto
                            mit dem Schluessel Ex mit x 7-9 und den Uebersteuerungskennzeichen = und > die korrekte Zuordnung bei der Stapelerzeugung und beim Einbuchen
                            in die FIBU.
                 LOADSAVE:  Beim Erzeugen von temporaeren Dateien beim Drucken (PrintFile Modus 0x10000) wird zusaetzlich die ProzessID (..._XXXX.$io) im Dateiname eingefuegt.
                 PRGLOAD:   Kommando ConvertIcsvToImportCsv() erweitert um Modus 0x0100 und 0x0200
                              ConvertIcsvToImportCsv( Dateiname);
                              ConvertIcsvToImportCsv( Dateiname, Modus);
                              ConvertIcsvToImportCsv( Dateiname, Modus, EbenenLimit);
                                Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                                Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                                Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                                Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                                Mit dem optionalen Parameter "EbenenLimit" kann die Ausgabe hierachischer Daten auf die angegeben maximale Tiefe
                                begrenzt werden. Die Ebene 0 ist die oberste Ebene. Wird kein EbenenLimit angegeben, so werden alle daten ausgegeben.
                              Modus:
                                0x0000 - Umwandlung in eine CSV Datei mit TAB getrennt.
                                0x0001 - Umwandlung in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel (0 100, 1 200, 2 300 ...) und Feldbeschriftung mit Variablennamen aus der Kopfzeile.
                                0x0002 - Umwandlung in eine XML-Datei im Excel-Format. Dateiname mit Erweiterung .xml
                                0x0004 - Konvertierung des Dezimaltrenners von Komma "," nach Punkt ".", je nach Systemeinstellung "Zahlenformat bis/ab Excel 2003/2007".
                                0x0008 - Strichpunkt ";" anstatt Tab "\t" als Trennzeichen ausgeben
                                0x0010 - Nur Zeilen vom Typ "Daten" ausgeben. alle anderen Zeilen werden uebersprungen.
                                0x0020 - Nur Spalten ausgeben die das Zeichen Istgleich "=" enthalten ausgeben. Es wird nur der Wert nach dem ersten "=" ausgegeben.
                                         Spalten ohne "=" werden uebersprungen.
                                0x0040 - Kein CSV Format erzeugen, keine Strichpunkte einsetzen. Das Trennzeichen aus den Nutzdaten zwangsersetzen durch Leerzeichen.
                                0x0080 - Immer CSV Format mit Hochkommas verwenden. Modus 0x0040 hat vorrang.
                                0x0100 - Pipe-Zeichen "|" anstatt Tab "\t" als Trennzeichen ausgeben. Der Modus hat vorrang vor modus 0x0008
                                0x0200 - Erzeugung der Zieldatei ueber eine temporaere Datei mit der Erweiterung name.XXXX.$io. XXXX Steht fuer die Prozessnummer.
                                         Nach der Erzeugung wird die Zieldateiname geloescht und die temporarere Datei in den Zieldateiname umbenannt.
                 PRNLIB:   DVL-Kommandos erweitert:
                           @#MakeDirTree "";    Verzeichnispfad erstellen
                           Der Verzeichnispfad wird ueber den Original-Ausgabedateinahme zusammengebaut und dann die komplette Verzeichnisstruktur erstellt.
                           Kann die Verzeichnisstruktur nicht erstellt werden oder existiert sie bereits, wird keine Fehlermeldung ausgegeben.
                 PRGLOAD:  Makrokommando Gosub um Modus erweitert:
                            Gosub( "Programmname")
                            Gosub( , "Label")
                            Gosub( "Programmname", "Label")
                            Gosub( "Programmname", "Label", Modus)
                            -Ruft ein Programm auf und kehrt zu seiner Aufrufzeile zurueck.
                            -Wird kein Programmname angegeben, so wird das Label in der gleichen Programmdatei aufgerufen.
                            -Variablen sind als "Programmname" und "Label" erlaubt, man kann also auch indirekte Aufrufziele definieren.
                            -Mit einem Rueckgabewert von 1 wird der Programmlauf abgebrochen (ABORT).
                            Modus:
                              0x0001 - Der Aufruf erzeugt kein eigenes Sperrlevel fuer die Makroausfuehrung. Ein vor dem Aufruf vorhandenes Sperrlevel bleibt bestehen.
                              0x0002 - Der Aufruf loescht komplett das Sperrlevel fuer die Makroausfuehrung. Ein vor dem Aufruf vorhandenes Sperrlevel wird ebenfalls entfernt.
                                       Nach dem Aufruf wird das zuvor bestandene Sperrlevel wieder hergestellt.
                            Hinweis:
                             Das Sperrlevel verhindert die Ausfuehrung von Makros aus HTML-Oberflaechen. Es verhindert Kollisionen von HTML-Events die asynchron eintreffen.
                             Das HTML-Kommando ExecuteProgram() erhaelt bei einer Sperre im Rueckgabewert den Text "*blocked*". Siehe auch HTML-Kommando IsProgramBusy().
        02.12.11 EDIT_WIN: Beim GDI Druck wird jetzt bei der Fontumschaltung SetSelectionCharFormat() zusaetzlich der Defaultfont mit SetDefaultCharFormat() umgeschaltet.
                           Damit werden Zeichen ab der horizontalen Linie in der korrekten Font-Groesse ausgegeben, und nicht mehr auf der Standardfontgroesse beim
                           Oeffnen des Fensters.
                 PRNLIB:   Neue Druckoption [Vt:G"abc.asc"].
                           Die Funktion ist aehnlich der Funktion [Vt:f"abc.asc"] und [Vt:F"abc.asc"].
                           Erweitertung des Dateiname um den Pfad, in dem das Programm IFW gestartet wurde.
                           Beispiel:
                           [Vt:f"abc.txt"]  -> "C:\IFW\abc.txt".
                           [Vt:f"abc"]      -> "C:\IFW\abc"
                           [Vt:f".txt"]     -> "C:\IFW\.txt"
                           [Vt:f"."]        -> "C:\IFW\."
                           [Vt:f""]         -> "C:\IFW\"
                           Erweitert den Dateiname um den Pfad der Zieldatei.
                           Beispiel:
                           [Vt:F"abc.txt"]  -> "TEMPDAT\abc.txt".
                           [Vt:F"abc"]      -> "TEMPDAT\abc"
                           [Vt:F".txt"]     -> "TEMPDAT\txt"
                           [Vt:F"."]        -> "TEMPDAT\."
                           [Vt:F""]         -> "TEMPDAT\"
                           Erweitert den Dateiname um den vollen Pfad des aufrufenden Formulars oder Makros.
                           Beispiel:
                           [Vt:G"abc.txt"]  -> "c:\ifw\formular\abc.txt".              ("c:\ifw\module\usr_test\abc.txt")
                           [Vt:G"abc"]      -> "c:\ifw\formular\abc.zielerweiterung"   ("c:\ifw\module\usr_test\abc.pru")
                           [Vt:G".txt"]     -> "c:\ifw\formular\formular.txt"          ("c:\ifw\module\usr_test\makro.txt")
                           [Vt:G"."]        -> "c:\ifw\formular\formular."             ("c:\ifw\module\usr_test\makro.")
                           [Vt:G""]         -> "c:\ifw\formular\formular.dvu"          ("c:\ifw\module\usr_test\makro.pru")
        03.12.11 PRGLOAD:  Das Kommando DocumentEdit() erweitert um VerarbeitungsModus 256 und 1024:
                           DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                           Modus:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              10: automatisches Speichern ohne Anzeige
                              14: Beleg abschliessen         (mit Auswahl)
                             VerarbeitungsModus:
                               1 0x0001: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2 0x0002: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4 0x0004: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8 0x0008: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16 0x0010: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                              32 0x0020: Bei "Belege abschliessen" erfolgt ein Zwangsabschluss des Lieferscheins, auch wenn er noch nicht komplett berechnet ist.
                              64 0x0040: Auftraege werden im Modus "Tagesgeschaeft" erfasst. Nach Abschluss des Auftrags wird sofort ein Lieferschein zum Auftrag aufgerufen.
                             128 0x0080: bei "Veraendern" nur Laden der Daten ohne Anzeige des Maske und ohne Speicherung
                             256 0x0100: bei "Autospeichern" die Daten als Aenderung speichern
                            1024 0x0200: bei "0x0080 Veraendern laden" und bei "0x0100 Autospeichern" das Belegaenderungmanagement fuer Logbuch und Kollision anwenden.
        05.12.11 DOCUSTORE:Der Speicherort einer Datei wird nur noch auf IP-Ebene verglichen, nicht mehr auf Servernamensebene.
                           Damit wird eine Dateiumbenennung bei unterschiedlicher UNC-Pfadangabe (eine mit IP) nicht mehr ausgeloest.
                           Da beide Dateien am gleichen Speicherort liegen fuehrte das bisher zu einer Fehlermeldung beim Speichern
                           eines Dokumenteneintrags.
        06.12.11 FAKTEDIT: Beim Belegspeichern wird jetzt das Datenbanklogbuch auch fuer Benutzerfelder mitgeschrieben. Die Benutzerfelder muessen
                           in den Datenbankparametern mit ihrem Namen KARTEIex angemeldet werden (z.B. reparaex).
        07.12.11 PRGLOAD:  Kommando CopyExternData() in Verbindung mit der 32Bit-Handle Verwaltung korrigiert.
                 FFDATEV:  Beim DATEV-Disketten erzeugen wird bei erreichten Nummernbereich die OP-Kennzeichnung unterdrueckt. Sie erfolgt jetzt nur noch
                           nach dem tatsaechlichen Erzeugen der DATEV-Diskette.
                 DFED3LIB: Beim Initialisierung einer IFW Tabelle und bei den Kommandos GetRecord() und GetRecordFilter() bei den Makros wird der Cache der Benutzerfelder 
                           der betroffenen Datenbankobjekte geloescht.
        08.12.11 WINIFW:   Bei graphischem IFW-Login wird das IFW maximiert geoeffnet, wenn es maximiert geschlossen wurde.
                           Beim Schliessen des IFW's wird nochmal ein Refresh der Plazierung der Nachrichten in die Datenbank vorgenommen,
                           auch wenn sie nur durch ein Mausklick verschoben wurden.
        12.12.11 PRGLOAD:  Das Kommando PrintFile() erweitert:
                            Der Parameter "Druckvorlage" kann jetzt auch ueber eine Vt-Variable angegeben werden.
        14.12.11 PRGLOAD:  Kommando ImportFile() um Modus 0x800 erweitert.
                           Modus:
                           0x0001 1     Datei nach erfolgreichen import löschen
                           0x0002 2     Felder die nicht vorhanden sind nicht melden
                           0x0004 4     Keine Rechenoperationen der Felder auslösen
                           0x0008 8     Es werden alle Dateien ImportDatei aus dem Verzeichnis eingelesen
                           0x0010 16 (IMPORT_CLRDATA)
                                        Es können beim Import Datenbereiche in der Datenbank zuvor gelöscht werden. Damit ist es möglich Datenbereiche komplett neu einzulesen und die bereits gepeicherten Daten in dem Bereich automatisch zuvor zu löschen.
                                        Dazu muss in der Datei ein Feld das einen Datenbereichsschlüssel darstellt vorhanden sein. Das Feld muss mit einem Indexpfad versehen sein. Beim Import der neuen Daten muss das Feld mit dem entsprechenden Schlüsse versehen werden. In der Importvorlage muss das Feld über die Option @Cxx; mit xx als Feldnummer angegeben werden. Das Feld xx muss durch den Import mit dem entsprechenden Schlüsseltext versehen werden.
                                        Wird beim Import ein Datensatz gespeichert, dann wird geprüft ob der angegeben Schlüssel das erste mal gepeichert wird. Ist es das Erstemal, dann werden zuerst alle in der Datenbank enthaltenen Datensätze mit dem Schlüssel gelöscht und dann der Satz gepeichert. Wurde bei einem Importlauf der Schlüssel schon einmal gepeichert, so erfolgt keine Löschung mehr. Bei kombinierten Pfaden werden alle Datensätze gelöscht, die den Schlüssel im ersten Feld haben.
                           0x0020 32 (IMPORT_RENAME_FILE)
                                        Die Datei wird vor dem Import Umbenannt, aber nach dem Importlauf ohne Modus 1 nicht gelöscht (Die Datei bleibt mit dem temporären Namen erhalten). Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                           0x0040 64 (IMPORT_NOWRITE)
                                        Es werden keine Daten beim Import gespeichert. Eine evt. aktive Löschung mit Modus 16 (IMPORT_CLRDATA) wird aber durchgeführt. Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                           0x0080 128 (IMPORT_SELECT)
                                        Es werden alle importierten und geschrieben Datensätze hinzuselektiert.
                                        Bei zusätzlich angegebener Option 64 (IMPORT_NOWRITE) werden keine Datensätze geschrieben, aber die Selektion trotzdem durchgeführt.
                           0x0100 256   Die Datenbank wird im Modus "OnlineBuchen" beim Import verarbeitet.
                           0x0200 512 (~IMPORT_VIEWCNTREQUEST)
                                        Die Anzeige des Zaehlrequests in der Windowsversion wird unterdrückt.
                           0x0400 1024 (IMPORT_NOUSERBREAK)
                                        Der Benutzer kann den Einlesevorgang nicht abbrechen.
                           0x0800 2048  Der Import wird als Belegimport durchgefuert. Die Option ist beim Import von temporaeren Belegdatenbanken sinnvoll.
                                        Der Aenderungsmodus ist auf den geladenen Beleg anwendbar.
                                        In den Positionen werden beim Einlesen die Feldinhalte nicht geschleppt (Im Gegensatz zum Kommand DocumentImport()!).
        14.12.11 EDIT_WIN: Beim GDI Druck die Fontumschaltung mit SetDefaultCharFormat() deaktiviert. Sie erzeugte sehr lange Laufzeiten.
        23.12.11 VIDF:     Bei ConvertIcsvToImportCsv() modus 0x0001 - Umwandlung in eine HTML-API Importdatei werden jetzt CSV Hochkommas korrekt unterstuetzt.

575 03.01.12 WINIFW: Das Paragraphenzeichen wird jetzt korrekt unterstuetzt (REC_CharToOem wandelt es jetzt korrekt in 0x15 um, von Windows wurde es in 0xF5 umgewandelt).

        04.01.12 LOADSAVE: Beim Oeffnen von Dateien wird ueber den IFW-Pfad der gesamte absoluter Name verwendet. Damit wird bei bei Druckertreibern die den aktuellen
                           Pfad der aufrufenden Applikation verstellen die Datei trotzdem korrekt geoeffnet.
                 PRNLIB:   Die maximale Speichergroesse von Vt Variablen von 1199 auf 4096 Byte erhoeht.
        05.01.12 PRGLOAD:  Maximale Laenge bei Parametern mit Defaultprogrammnamen von 64 auf 260 Zeichen erhoeht (wird fuer lange Pfadnamen geraucht)
        16.01.12 FAKTMAIN: Beim Internen Neustart des IFW werden Druckausgabedateien zusaetzlich geschlossen.
                 EDIT_WIN: Beim GDI Druck die Fontumschaltung korrigiert. Barcodes wurden nicht mehr gedruckt.
                 FAKTEDIT: Korrektur beim Beleg rückgängig gemacht vorgenommen: Der Beleg wird jetzt bei aktivem Aenderungslogbuch im Aenderungslogbuch gespeichert.
                 WINIFW:   Die Popupfunktion "Aenderungsarchiv gesamt oeffnen" zeigt jetzt alle Eintraege an.
                           Sie hatte bisher faelschlicherweise die Funktion von "Aenderungsarchiv des Eintrags oeffnen".

576 19.01.12 PRGLOAD: Das Kommando DocumentImportFile () erweitert um den Modus 0x800 (2048) erweitert:

                           Modus 0x800 (2048) (IMPORT_BELEGIMPORT_IDSAVE)
                             Bei erfolgreim Einlesen eines Dokuments wird in der Importdatei die Kennung "*??????????????*" mit der erzeugten
                             Belegnummer ersetzt. Die Kennung muss immer 16 Zeichen lang sein. Es werden alle Zeichen mit der Nummer ersetzt.
                             Fehlende Zeichen werden mit Leerzeichen aufgefüllt.
                 DFIMP:    Das Kommando @Repeat...; erweitert.
                             Wird beim Einlesen der Feldinhalt "*??????????????*" gefunden, wo wird der Datensatz uebersprungen und nicht gespeichert.
                 DFED3LIB: Die Automatischen Attachement, Attribut und Kategoriedatenbankanlage unterstuetzt jetzt auch Tabellen mit MAIC_LFD als Primaerkey (z.B. Lagerbuchungen).
        23.01.12 FFFIRUMS: Jahresabschlussmeldungen um die Meldung "Jahresabschluss ausfuehren und vergessene Jahre ueberspringen?" erweitert.
                           Monatsabschlussmeldungen ueberarbeitet. Pattsituation "Bitte Jahresabschluss ausfuehren" und "Bitte Monatsabschluss ausfuehren" beseitigt.
        24.01.12 PRGLOAD:  Das Kommando DocumentEdit() unterstuezt jetzt auch Gutschriften.

577 25.01.12 PRNLIB2: Beim Drucken wird der veraltete Wert stdprn nicht mehr supportet. Damit wird ein versehendliches Uebergehen beim Schliessen einer

                           Ausgabedatei beim Drucken oder Tabellen generieren verhindert.
        27.01.12 WINIFW:   Bei der Uebertragung von IFW Tabellen an Excel gilt jetzt folgende Regel:
                           - Sind im IFW Zeilen selektiert, werden genau die selektierten Zeilen uebertragen
                           - Sind kein IFW Zeilen selektiert, aber mehr als eine Windowsselektion vorhanden, werden genau die Windows-Selektierten Zeilen uebertragen
                           - Sind keine Selektionen vorhanden, werden alle Zeilen der Tabelle ausgegeben.

578 30.01.12 TEXTEDIT: Im TexteditorIFW Texteditor in der klassischen Version werden einzelne Zeilenumbrueche nur mit einem Wagenruecklauf (Carrige-Return CR) ohne einem Zeilenumbruch (Linefeed LF)

                           Mit einem ASCII-Symbol 28 dargestelle (Symbol wie ein kleiner Haken nach rechts).
                           Zeilenumbrueche sind in der Regel immer CR/LF Kombinationen.
        02.02.12 IFWTAB:   In der IFW Tabelle sid jetzt mit Rechtsklick Funktionen zum Oeffnen und Schliesser der Baumstrucktur vorhanden.
        07.02.12 PRGLOAD:  Das Kommando ConvertIcsvToImportCsv() bei Modus 0x0001 erweitert.
                           Modus 0x0001 (eine Konvertierung der Datei in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel)
                           Die Optionssysmbole "&", "+" und "_" in der Zeilenbeschriftung, werden  jetzt als Prefix zu den erzeugten Variabelnwerten "col...." vorangestellt.
        08.02.12 FFPROD3:  Bei der Produktionsanlage wird bei der Frage "Verfuegbarer Lagerbestand von ... verwenden? (Ja/Nein/Immer/niE)" in der Windowswersion die
                           Eingabemaske des betroffenen Produkts angezeigt.

579 10.02.12 WINIFW: Die Frage "Bearbeitung Abbrechen" beim Betaetigen des Abbruch-Knopfs wird nur noch gestellt, wenn der Vorgang bereits laeuft.

                           Bei der initialen Frage beim Start des Vorgangs wird die Frage beim Abbruch nicht mehr angezeigt.
                 DFED3LIB: Beim Loeschen von Eintraegen wird geprueft ob selektierte Eintraege vorhanden sind. Sind selektierte Eintraege vorhanden,
                           dann muss der Fokus auf einem der selektierten Eintraegen sein. Ansonsten wird das Loeschen mit der Meldung
                           "Sie haben Datensaetze selektiert. Bewegen Sie zum Loeschen den Fokus auf die Selektion! (Abbruch)" abgelehnt.
        13.02.12 FAKTFNC:  Wird mit dem WWW Client eine Verbindung beendet, so wird die Bearbeitung von Ersatzartikel in Produktionen korrekt abgebrochen.
        14.02.12 FFPROD3:  Ein fehlendes Ebenenfeld im Artikelstamm wird bei der hierachischen Produktionsanlage nicht mehr als fehlend gemeldet.
                           Bei der Produktionsanlage direkt aus dem Artikelstamm als einzelne Produktionscheine wird bei der Frage
                           "Verfuegbarer Lagerbestand von ... verwenden? (Ja/Nein/Immer/niE)" in der Windowswersion die Eingabemaske des betroffenen Produkts angezeigt.
                 FAKTMAIN: Die "Name, Vorname" Ausdruckssteuerung mit dem FAKT.INI Schalter FNameConvert ist jetzt standardmaessig deaktiviert.
        22.02.12 LOADSAVE: Meldung beim Lesen sich staendig vergroessernden Dateien beseitigt (HTML Funktion ReadFile -> longLoad)

580 24.02.12 STDCON: Multithreading fuer den Filescan von fakt.snc und stopifw.ini implementiert (projektspezifische Aktivierung).

        28.02.12 IFWTAB:   Das Kommando DoRequest() in der IFW Tabelle zeigt den Text jetzt korrekt in ANSI Zeichen an. 
                 API_MFRM: HTML-Fenster bleiben im Hintergrund aus dem HTML-Code eine Funktion gerade aufgerufen wird (z.B. F1 Auswahl aus einer Liste).
        29.02.12 API_FUNC: Multithreading Sofortmeldung bei Desktopaenderungen optimiert.
        01.03.12 REQUEST:  Bei sehr niederiger Aufloesung (80x25) im klassischen IFW koennen Meldungen zu breiten Text enthalten.
                           Der Text wird jetzt am Anfang gekuerzt.
                 PRNLIB2:  Lokalisierung der relativer Dateinamen von Formulardateien auf das Startverzeichnis vom IFW erweitert.
                 STDMSK:   Beim Abrufen der Druckerliste werden jetzt die Drucker auch als "HTM:"-Eintraege angeboten.
                 API_MFRM: Neues HTML-Kommando EnumPrinter()
                             EnumPrinter( winHandle, Client)
                           Es wird eine mit CR/LF getrennte Liste der gefundenen Drucker zurueckgegeben.
                           Ein Druckerwert besteht aus drei Teilen die mit TAB getrennt sind:
                           PRINTER_ENUM_LOCAL oder PRINTER_ENUM_CONNECTIONS TAB Druckername TAB Portname oder Servername
                           Also 3 Einträge in der CSV Liste entsprechen einem Drucker.
                           Auf dem Arbeitsplatz wird fuer den Ausdruck der Drucker immer mit dem Druckername angesprochen.
                           Mit dem Wert Client == "0" wird die Druckerliste auf dem ASP-Host oder bei normalen IFW-Betrieb auf dem Arbeitsplatz
                           abgerufen.
                           Mit dem Wert Client == "1" wird in Verbindung mit dem WWW-Cleint die lokale Druckerliste auf dem Arbeitsplatz abgerufen.
                 IFWTAB:   GetRecord() und GetRecordByCommand() beruecksichtigen jetzt geloeschte Eintrage im Papierkorb, abhaengig der 
                           "deleted" - Einstellung in der ROWDEF-Deklaration.

581 02.03.12 IFWTAB: GetRecord() und GetRecordByCommand() beruecksichtigen jetzt bei Modus 1 bis 4 (groesser/kleiner) und aktivem Archiv

                           den Eintrag der in einem der beiden Datenbanktabellen groesser oder kleiner ist. Bei Gleichheit hat die Hauptdatenbank
                           vorrang vor dem Archiv.
        03.03.12 WINIFW:   Aufrufssicherung in doAPIEditData() entschaerft, wird nur noch geblockt wenn das aufrufende Fenster bereits Modal laeuft.
                           Die Dokumentensuche konnte keine Ergebnislisten mehr aufrufen.
        09.03.12 FFART:    Kennzeichen L im Artikelstamm deaktiviert. Das Buchungssystem fuer Lagerbuchungen wird nur noch mit dem Systemschalter
                           "ext.Lagerbuchungen fuer alle Artikel aktiv" eingeschaltet.
        13.03.12 FAKTINI:  Neuer Schalter in der FAKT.INI in der Sektion [AKL]:
                           ;ProduktionIstwertNurErhoehen; Wert 0/1. Default 0
                           ;Wird eine AKL Buchung (Anbindung eines externen Lagersystemens, AllgmeinesKleinteileLager) zu einer Produktion
                           ;vorgenommen, so wird die Istmenge in der Produktion bis maximal zur Sollmenge auf die AKL Menge gesetzt.
                           ;In der Istmenge enthaltene Werte werden dabei ueberschrieben und dadurch ggf. auch verringert.
                           ;Mit dem Wert 1 werden die Istwerte in der Produktion nur noch bis maximal zur Sollmenge erhoeht. Eine
                           ;Verringerung der Istmenge wird nicht durchgefuehrt.
        15.03.12 FFEINK:   Die Meldung "Auslandskennung anpassen? (Ja/Nein)" bei F3 in den Einkaufsbelegen wird nur noch bei abweichender
                           Auslandskennung ausgegeben.
        19.03.12 PRGLOAD:  Das Kommando DocumentEdit() erweitert, VerarbeitungsModus 16 und 2.
                           Er kann jetzt auch fuer "Beleg stornieren" verwendet werden.
                 FAKTEDIT: Systemmakro .$84, .$85 und .$86 implementiert: 
                           .$84:Buchungsmakro beim Beleg einbuchen, innerhalb der TTS-Kapselung
                           .$85:Buchungsmakro beim Beleg rueckbuchen, innerhalb der TTS-Kapselung
                           .$86:Buchungsmakro beim Beleg speichern vorm Material einbuchen, innerhalb der TTS-Kapselung
                           Die Buchungsmakros muessen bei fehlerfreiem Durchlauf den Wert 1 zurueckgeben. Bei einem Abbruch den Wert 2.
                           Alle anderen Werte, auch der Wert 0, werden als Fehler gewertet.

582 21.03.12 IFWTAB: Maximale Spaltenanzahl von 107 auf 157 erhoeht.

                 PRGLOAD:  Das Kommando DocumentEdit() unterstuezt jetzt auch Reparaturruecksendungen und Warenruecksendungen.
                 FFIBUDV:  Systemmakro .$87 implementiert:
                           Makro beim Erstellen des Buchungsstapels. Wird ein Wert gleich 1 zurueckgegeben, so wird der Op oder VB nicht uebertragen.
                           in V1 steht beim Aufruf der Modus: 
                           0 pro Vorgang Normal
                           1 pro Vorgang Storno
                           2 Start Normal 
                           3 Stop Normal
                           4 Start Storno
                           5 Stop Storno
                 DFIMP:    Beim Import das geladene Formular aus dem globalen Formularspeicher ausgeklinkt. Damit koennen bei Importe im Speichermakrobereich
                           weiter Druckformulare verwendet werden ohne den Import zu stoeren.
        23.03.12 PRNLIB:   Bei Fliesstextzuweisung [Vt:=[C87#<]] wird der komplette Fliesstext in Vt uebergeben.
        28.03.12 FFSTDVK:  Programmparametereinstellung "Meldungen bei den Vertriebsbelegen" um eine Sektion "Reparaturen" erweitert.
                           Bisher wurde fuer Reparaturen die Einstellung aus "Auftraegen" verwendet.
                 DFIMP:    Beim Belegimport zusaetzlich den Programmeinsprung "HunkHauptUpdate" aufgenommen.
                           Beim Speichern des Belegkopfs wird, falls vorhanden, beim 1. Speichervorgang der Programmeinsprung "HunkHaupt" aufgerufen.
                           Beim 2. Speichervorgang wird, falls vorhanden, der Programmeinsprung "HunkHauptUpdate" aufgerufen. Ist er nicht vorhanden dann 
                           wird der Programmeinsprung "HunkHaupt" aufgerufen (wie bisher).
                           Mit dem Einsprung "HunkHauptUpdate" kann ein doppelter Aufruf eines Nachladebefehls (ExecuteItemFunction) verhindert werden.
                           Er fuehrt bei mehrfacher Verwendung zu einem Verwerfen einer evt. vorhandenen Lieferadresse.

583 29.03.12 DFED3LIB: Interne maximale Speichergroesse fuer Benutzerdefinierte Felder von 40 auf 100 Zeichen erhoeht.

        30.03.12 IFWC:     Wird das IFW in einer Terminalserver Session gestartet, so wird der Clientname mit TS. korrekt erkannt. Bisher wurde
                           global der Terminalservername verwendet.

! STDPRJ_: Meldung bei der Pruefung der Menge an Datenbankobjekten beim Erstellen und Loeschen entfernt (cnt_df…). 584 03.04.12 DFIMP: Aufruf von indirekten Hunks beim Import korrigiert (Meldung Hunk … nicht gefunden mit Kommando @Hx;). Problem seit Rev. 582.

                 IFWTAB:   Die IFW Tabelle in der klassischen Version (Taste ALT-F10) laesst sich wieder mit Inhalt an Excel uebertragen, auch wenn im Hintergrund
                           Eintraege selektiert sind.
                 WINIFW:   Uebernahme von allen Eintraegen einer IFW Datenbanktabelle in das Excel auch mit Stammdatenarchiv bei grossen Datenmengen korriegiert.
                           Es konnte bisher ein Ladefehler im XML in Excel entstehen. Problem beseitigt.
                 PRGLOAD:  Das Kommando DocumentEdit() erweitert um VerarbeitungsModus 2048:
                           DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                           Modus:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              10: automatisches Speichern ohne Anzeige
                              14: Beleg abschliessen         (mit Auswahl)
                             VerarbeitungsModus:
                               1 0x0001: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2 0x0002: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4 0x0004: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8 0x0008: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16 0x0010: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                              32 0x0020: Bei "Belege abschliessen" erfolgt ein Zwangsabschluss des Lieferscheins, auch wenn er noch nicht komplett berechnet ist.
                              64 0x0040: Auftraege werden im Modus "Tagesgeschaeft" erfasst. Nach Abschluss des Auftrags wird sofort ein Lieferschein zum Auftrag aufgerufen.
                             128 0x0080: bei "Veraendern" nur Laden der Daten ohne Anzeige des Maske und ohne Speicherung
                             256 0x0100: bei "Autospeichern" die Daten als Aenderung speichern
                            1024 0x0200: bei "0x0080 Veraendern laden" und bei "0x0100 Autospeichern" das Belegaenderungmanagement fuer Logbuch und Kollision anwenden.
                            2048 0x0400: bei "Stornieren" ist die Datumspruefung des Belegs abgeschaltet

585 03.04.12 FFEINK: Das IFW Modul "Preisstaffel im Einkauf" erweitert.

                           Die Anzahl Preisstaffeln von 4 auf 8 Staffeln erhoeht.
                           Ein Gueltigkeitsdatum "bis" implementiert. Ist ein Gueltigkeitsdatum enthalten und wird es ueberschritten,
                           wird die Meldung "Die hinterlegte Preisstaffel zum Artikel und Lieferant ist nicht mehr gueltig." ausgegeben und die
                           Staffel nicht angewendet.
        16.04.12 FFWEG:    Bei der QM Wareneingangsbewertung wird der Status vorheriger Positionen auch dann in den Belegkopf uebertragen,
                           wenn nachstehende Positionen keine QM-Bewertung benoetigen.
                 PRGLOAD:  Kommando ConvertIcsvToImportCsv() erweitert um Modus 0x0400
                             ConvertIcsvToImportCsv( Dateiname);
                             ConvertIcsvToImportCsv( Dateiname, Modus);
                             ConvertIcsvToImportCsv( Dateiname, Modus, EbenenLimit);
                               Das Kommando konvertiert eine IFW-Tabelle in eine CSV-Datei die mit Tabulatorzeichen getrennt ist.
                               Der Dateiname muss eine IFW-Tabellendatei mit der Erweiterung .icsv sein.
                               Es wird automatisch eine Datei mit dem gleichen Dateiname und der Erweiterung .imp erzeugt.
                               Sollte die Konvertierung fehl schlagen, so wird eine evt. vorhandene .imp Datei geloescht.
                               Mit dem optionalen Parameter "EbenenLimit" kann die Ausgabe hierachischer Daten auf die angegeben maximale Tiefe
                               begrenzt werden. Die Ebene 0 ist die oberste Ebene. Wird kein EbenenLimit angegeben, so werden alle daten ausgegeben.
                             Modus:
                               0x0000 - Umwandlung in eine CSV Datei mit TAB getrennt.
                               0x0001 - Umwandlung in eine HTML-API Importdatei mit fuehrenden Ebenenschluessel (0 100, 1 200, 2 300 ...) und Feldbeschriftung mit Variablennamen aus der Kopfzeile.
                               0x0002 - Umwandlung in eine XML-Datei im Excel-Format. Dateiname mit Erweiterung .xml
                               0x0004 - Konvertierung des Dezimaltrenners von Komma "," nach Punkt ".", je nach Systemeinstellung "Zahlenformat bis/ab Excel 2003/2007".
                               0x0008 - Strichpunkt ";" anstatt Tab "\t" als Trennzeichen ausgeben
                               0x0010 - Nur Zeilen vom Typ "Daten" ausgeben. alle anderen Zeilen werden uebersprungen.
                               0x0020 - Nur Spalten ausgeben die das Zeichen Istgleich "=" enthalten ausgeben. Es wird nur der Wert nach dem ersten "=" ausgegeben.
                                        Spalten ohne "=" werden uebersprungen.
                               0x0040 - Kein CSV Format erzeugen, keine Strichpunkte einsetzen. Das Trennzeichen aus den Nutzdaten zwangsersetzen durch Leerzeichen.
                               0x0080 - Immer CSV Format mit Hochkommas verwenden. Modus 0x0040 hat vorrang.
                               0x0100 - Pipe-Zeichen "|" anstatt Tab "\t" als Trennzeichen ausgeben. Der Modus hat vorrang vor modus 0x0008
                               0x0200 - Erzeugung der Zieldatei ueber eine temporaere Datei mit der Erweiterung name.XXXX.$io. XXXX Steht fuer die Prozessnummer.
                                        Nach der Erzeugung wird die Zieldateiname geloescht und die temporarere Datei in den Zieldateiname umbenannt.
                               0x0400 - Umwandlung in eine XML-Datei. Dateiname mit Erweiterung .xml Es werden folgende Tags unterstuetzt:
                                        $XMLTEXTLINE= -> es wird der Text direkt als Zeile in die XML Datei geschrieben.
                                        $XMLTAG=      -> Ein Tag wird in spitzen Klammern eroeffnet.
                                        $XMLPARA=     -> Ein Parameter innerhalb der spitzen Klammern. Format $XMLPARA=type=test. Es wird type=test in die XML-Datei geschrieben.
                                        $XMLDATA=     -> Eine Datenzeile mit spitzen Klammern. Format $XMLDATA=name=xxx. Es wird <name>xxx</name> in die XML-Datei geschrieben.
                                        Die IFW-Tabellen Hierachie wird abgebildet. Achten Sie darauf, das eine Zeile mit der Spalte einer $XMLTAG Angabe startet.
                                        Sie kann MEHRERE Spalten mit $XMLPARA-Angaben enthalten und nur EINE Spalte mit einer $XMLDATA-Angabe.
                                        Werden $XMLPARA-Angaben und eine $XMLDATA-Angabe benoetigt, so MUSS die Spalte der $XMLDATA-Angabe nach den Spalten der $XMLPARA-Angaben in der Zeile erfolgen!
                 PRGLOAD:  Kommando Change() SaveNew() und SaveCopy() um Modus 0x004 (4) erweitert:
                             Modus 0x001 (1):   Bestaetigung der zu aendernden Menge durch den Benutzer.
                             Modus 0x002 (2):   selektierte Eintraege nicht deselektieren.
                             Modus 0x004 (4):   Es werden Eingabewarnungen beim Speichern eines Datensatzes unterbunden.
                                                Es wird auch keine Meldung zum kopieren zugeordneter Listen ausgegeben. Die Listen werden
                                                immer mitkopiert (abhaengig von Modus 0x200).
                             Modus 0x008 (8):   Keine Ausgabe der Meldung "Keine Daten selektiert".
                             Modus 0x010 (16):  Keine Zaehl- oder Fragebox wird geoeffnet
                             Modus 0x020 (32):  Kein Benutzerabbruch moeglich
                             Modus 0x100 (256): Der Aenderungslauf wird im Online-Buchungsmodus durchgefuehrt.
                             Modus 0x200 (512): Beim Kopieren von Datensaetzen werden keine zugeordneten Listen mitkopiert
                           Hinweis:
                           Die Kommandos werden wie das Kommando Change() verwendet.
                           Zuerst Datensaetze selektieren und dann anstatt Change() SaveNew() oder SaveCopy() verwenden.
        20.04.12 FFBETON:  Das Kundenvertragsmodul so erweitert, dass es in der Betonbranche verwendungsfaehig ist.
                           Erstellung der Abrechnungen ueber ein HTML-Portal und einer IFW-Tabelle
        23.04.12 PRGLOAD:  Kommando EditFile DisplayFile schaltet von "nur selektierte" auf alle Eintraege um, wenn beim Aufruf keine
                           Eintraege selektiert sind. Bisher blieb eine Leere Liste zurück.

586 26.04.12 DFPRN: Die Anzahl Stationsdrucker von 10 auf 36 erhoeht. Sie koennen jetzt mit S0 bis S9 und Sa bis Sz aufgerufen werden (Bisher nur S0 bis S9).

                 PRGLOAD:  Makrokommando SetSysPrgCallMode( Modus) Modus 1 korrigiert.
                 WINIFW:   Problem mit geoeffneten Sucheingaben und nicht reagierendem IFW beseitigt.
                           Folgender Ablauf fuehrte zu einem Stillstand im IFW:
                           1. Datenbanktabelle 1 oeffnen (z.B Artikelstamm)
                           2. Datenbanktabelle 2 oeffnen (z.B Kundenstamm)
                           3. Sucheingabe im der Datenbanktabelle 2 beginnen -> Das Sucheingabefenster oeffnet sich
                           4. Waehrend das Fenster offen ist auf die Datenbanktabell 1 mit der Maus klicken
                           5. Die Datenbanktabell 1 schliessen -> der Fokus geht auf die Datenbanktabell 2, nicht auf das Eingabefenster!
                           6. Die Datenbanktabell 2 schliessen -> Das IFW reagiert nicht mehr!
                           Loesung:
                           Bei Verlusst des Eingabefokus der Sucheingabe schliesst sich jetzt sofort die Sucheingabe.
        27.04.12 IFWTAB:   Das Oeffnen des Zaehlrequesters bei der Ausgabe von IFW-Tabellen bei kleinen Mengen (<100) verhindert.
                 PRNLIB2:  Das Druckvorlagenkommando @#OpenFile, @#IfExistFile und @#FindInFile unsterstuetzt jetzt die c:\temp Automatik.
                 API_MFRM: Das HTML-Kommando FileExist() unsterstuetzt jetzt die c:\temp Automatik.

587 03.05.12 FFIBUDV: Systemmakro .$87 erweitert:

                           Makro beim Erstellen des Buchungsstapels. Wird ein Wert gleich 1 zurueckgegeben, so wird der Op oder VB nicht uebertragen.
                           in V1 steht beim Aufruf der Modus: 
                           0 pro Vorgang Normal
                           1 pro Vorgang Storno
                           2 Start Normal 
                           3 Stop Normal
                           4 Start Storno
                           5 Stop Storno
                           6 Stapel speichern, MarkFile = Buchungsstapel, Rueckgabewert ohne Bedeutung, immer auf 0 setzen
                           7 Stapel speichern Storno, MarkFile = Buchungsstapel, Rueckgabewert ohne Bedeutung, immer auf 0 setzen
                 FFFIBU21: Stapelverarbeitung erweitert. Wird im Feld "Steuersatz" der Eintrag "=E" vorhanden, so wird beim Verbuchen eines Stapeleintrags 
                           einer Verbindlichkeit der Steuerschkuessel im Buchungsjournal auf "ES" gesetzt.
                 FAKTEXT:  Neue Exportfunktionen der FIBU:
                           "Gesamtes Buchungsjournal exportieren, X ignorieren" -> Es werden alle Buchungen in den Buchungsstapel exportiert,
                           unabhaengig vom Exportkennzeichen X im Buchungsjournal. Es wird kein X beim Export gesetzt.
                           "Konten exportieren, X ignorieren" -> Es werden alle selektierten Konten in den Buchungsstapel exportiert Es wird kein X beim Export gesetzt.

588 04.05.12 FFFIBU21: Stapelverarbeitung erweitert. Bei der Stapelerzeugung von Verbindlich wird bei Paragraph 13b Umsaetzen (Belegauslandskennzeichen 'u') jeder

                           Betrag steuerlich getrennt im Stapel erzeugt. Im Feld "Auftrag" des Stapels steht "$SCHL0", "$SCHL1" oder "$SCHL2" je nach Steuer.
                           Das Feld Steuerschl. wird immer mit 0 angegeben, wenn keine Kontenuebersteuerung aktiv ist (wie bisher).

589 04.05.12 WINIFW: In einer RAM-Liste (Positionsliste in einer Position) koennen jetzt einzelne Saetze mit der Leerzeichentaste selektiertmehrere Datensätze sind für die gemeinsame Weiterverarbeitung ausgewählt. werden und selektierte

                           Saetze geloescht werden.
                 DFEDLIB:  Beim Datensatz kopieren werden nur noch Felder, die Initial geloescht oder Initial auf "0" sein sollen, gesetzt.
                 DFPRN:    Im F4 Ausgabeformular kann als Druckvorlagenname ein Eintrag mit einem fuehrenden Doppelkreuz # angegeben werden.
                           Der Dateiname wird dann als Makro ausgefuehrt.
                 DFOBJ:    Wird beim Programmaufruf mit ':' eine Zeichenfolge an den Dateiname angehaengt, so wird die Zeichenfolge als Sprungmarke verwendet.
                           Der Doppelpunkt muss sich nach der 2 Position des Dateinamens befinden. Der Programmaufruf darf nicht schon eine Sprungmarke enthalten.

590 08.05.12 ITBPRG: Neues Kommando AddArray.setAddMode()

                             AddArray.setAddMode( INT $iModus);
                           Das Kommando schaltet die Rechenoperation der Arrayspalte innerhalb der aufsteigenden Hierachie um.
                           $iModus:
                           0: Addieren (default)
                           1: Subtrahieren
                           2: Multiplizieren
                           3: Dividieren
                           4: Minimum
                           5: Maximum
                           6: Setzen
                           +16: Option +16 schaltet 0 Werte ab. Die ist in Kombination mit Minimum und Maximum sinnvoll. 0-Inhalte werden gesetzt, 0-Zuweisungswerte uebergangen.
        10.05.12 PRGLOAD:  Das Kommando DocumentEdit() erweitert um VerarbeitungsModus 4096:
                           DocumentEdit( Modus, "Programmname", "Label", VerarbeitungsModus);
                           Modus:
                               0: Neuer Beleg schreiben
                               1: ungespeicherter neuer Beleg weiterschreiben
                               2: Beleg veraendern           (mit Auswahl)
                               3: Beleg kopieren             (mit Auswahl)
                               4: Von Beleg schreiben. Die Quelldatei ist die mit MarkFile gesetzte Datei.
                               6: Beleg rueckgaengig machen  (mit Auswahl)
                               7: Beleg stornieren           (mit Auswahl)
                               9: Beleg duplizieren          (mit Auswahl)
                              10: automatisches Speichern ohne Anzeige
                              14: Beleg abschliessen         (mit Auswahl)
                             VerarbeitungsModus:
                               1 0x0001: Bei Selektion mehrerer Quelldokumente wird bei einer Adressaenderung keine Warnung ausgegeben
                               2 0x0002: Bei "von Beleg schreiben" keine Auswahlliste oeffnen
                               4 0x0004: Nur einen Eintrag, auch wenn mehrere selektiert sind verarbeiten
                               8 0x0008: "Von Auftrag Belegschreiben" verwendet den Produktionsabgleich, falls vorhanden.
                              16 0x0010: "Belege rueckgaengig machen" wird ohne Benutzerabfrage durchgefuehrt. "Belege abschliessen" wird ohne Benutzerabfrage durchgefuehrt.
                              32 0x0020: Bei "Belege abschliessen" erfolgt ein Zwangsabschluss des Lieferscheins, auch wenn er noch nicht komplett berechnet ist.
                              64 0x0040: Auftraege werden im Modus "Tagesgeschaeft" erfasst. Nach Abschluss des Auftrags wird sofort ein Lieferschein zum Auftrag aufgerufen.
                             128 0x0080: bei "Veraendern" nur Laden der Daten ohne Anzeige des Maske und ohne Speicherung
                             256 0x0100: bei "Autospeichern" die Daten als Aenderung speichern
                            1024 0x0200: bei "0x0080 Veraendern laden" und bei "0x0100 Autospeichern" das Belegaenderungmanagement fuer Logbuch und Kollision anwenden.
                            2048 0x0400: bei "Stornieren" ist die Datumspruefung des Belegs abgeschaltet
                            4096 0x0800: Es werden keine Meldungen beim Speichern angezeigt.

591 10.05.12 ITBPRG: Neues Kommando Column.setRecEditMode()

                             Column.setRecEditMode( INT $iModus);
                           Das Kommando setzte den Bearbeitungsmodus beim Aufrufen eines Datensatzes mit F1.
                           $iModus:
                             0: nur anschauen
                             1: bearbeiten

592 16.05.12 ITBPRG: Neues Kommando System.formName() und System.formFullName()

                             System.formName();
                           Gibt den Formularname mit Pfad relativ zum IFW-Pfad zurueck.
                             System.formFullName()
                           Gibt den Formularname mit gesamter Laufwerk und Pfadangabe zurueck.
                 PRNLIB3:  Neues Druckvorlagenkommando [.FormularName<]
                            Gibt den Formularname mit Pfad relativ zum IFW-Pfad zurueck.
                 PRNLIB3:  Neues Druckvorlagenkommando [.FormularFullName<]
                            Gibt den Formularname mit gesamter Laufwerk und Pfadangabe zurueck.
                 ITBPRG:   Neue Initialisierungfunktion IfwTabBase::RowDefInit();
                            Die Funktion wird als aller erste Initialisierungsfunktion aufgerufen.
                            Die Initialisierungfolge ist nun folgende:
                            IfwTabBase::RowDefInit();
                            IfwTabBase::PreInit();
                            IfwTabBase::Init();
                 ITBPRG:   Neues Kommando SetParent()
                             SetParent(STRING $strRdName, STRING $strParentRdName, INT $iLfdEbeneOffset);
                            Setzt den Parenteintrag einer ROWDEF-Deklaration.
                            $strRdName: Name der zu veraendernden ROWDEF-Deklaration
                            $strParentRdName: Zu setztender Partentwert in $strRdName.
                            $iLfdEbeneOffset: Rangfolgeoffset in einer Ebene, wenn der mehrere ROWDEF in einer Ebene liegen.
                                              Zulaessig sind Werte von -20 bis +20
                            Hinweis:
                            Die Funktion SetParent() ist nur in der Initialisierungsfunktion IfwTabBase::RowDefInit() verfuegbar.
                 IFW:      Kommando WriteProfile() um den Modus "file" erweitert
                              Modus:
                               "user":         Es wird das benutzerabhaengige Profile geschrieben
                               "station"       Es wird das stationsabhaengige Profile geschrieben
                               "master"        Es wird das Masterprofile geschrieben
                               "ifwuser"       Es wird das benutzerabhaengige IFW Profile geschrieben
                               "ifwstation"    Es wird das stationsabhaengige IFW Profile geschrieben
                               "ifwcore"       Es wird die IFW Konfigurationsdate fakt.ini geschrieben
                               "ifwcorebase"   Es wird die IFW Konfigurationsdate fakt.ini geschrieben
                               "ifwcoreclient" Es wird die mandantenabhaengig IFW Konfigurationsdate faktnnn.ini geschrieben
                               "file:FILENAME" Es wird direkt eine Datein aufgerufen. Als FILENAME ist der Dateiname nach dem Doppelpunkt anzugeben.
                              Hinweis:
                               Die Konfigurationsdateien "user", station" und "master" befinden sich im Verzeichnis "config". 
                               Das Verzeichnis ist zur aufrufenden Funktion lokalisiert. Besteht das Verzeichnis noch nicht, wird es mit dem Kommando WriteProfile()
                               automatisch angelegt.
                              Hinweis Modus "ifwuser", "ifwstation":
                               Die Konfigurationsdateien "ifwuser" und "ifwstation" befinden sich im Verzeichnis "user" im IFW Pfad.
                              Hinweis Modus "ifwcore", "ifwcorebase" und "ifwcorclient":
                               Die Konfigurationsdateien "ifwcore" und "ifwcorebase" und "ifwcoreclient" befinden sich im IFW Pfad.
                               Die 3 Modis koennen nur als IFW-Supervisor verwendet werden.
                              Hinweis Modus mit ":" im Namen:
                               Bei den Modis kann jetzt zusaetzlich mit einem Doppelpunkt ein Dateipfad und Name angegeben werden.
                               Die Dateien werden dann relativ zu diesem Pfad aufgerufen.
                 IFW:      Kommando ReadProfile() um den Modus "file" erweitert
                              Modus:
                               "user":         Es wird das benutzerabhaengige Profile abgefragt
                               "station"       Es wird das stationsabhaengige Profile abgefragt
                               "ifwuser"       Es wird das benutzerabhaengige IFW Profile abgefragt
                               "ifwstation"    Es wird das stationsabhaengige IFW Profile abgefragt
                               "ifwcore"       Es wird die IFW Konfigurationsdate fakt.ini und die mandantenabhaengig IFW Konfigurationsdate faktnnn.ini abgefragt
                               "ifwcorebase"   Es wird die IFW Konfigurationsdate fakt.ini abgefragt
                               "ifwcoreclient" Es wird die mandantenabhaengig IFW Konfigurationsdate faktnnn.ini geschrieben
                               "file:FILENAME" Es wird direkt eine Datein aufgerufen. Als FILENAME ist der Dateiname nach dem Doppelpunkt anzugeben.
                              Hinweis Modus "user" und "station":
                               Besteht der Wert im Profil noch nicht, dann wird als Vorgabe das Masterprofil verwendet.
                               Ist auch im Masterprofil der Wert nicht vorhanden, dann wird der Defaultwert verwendet.
                               Die Konfigurationsdateien befinden sich im Verzeichnis "config". Das Verzeichnis ist zur aufgerufenen
                               ITB-Datei lokalisiert. Das Kommando ReadProfile() legt das Verzeichnis nicht automatisch an.
                              Hinweis Modus "ifwuser", "ifwstation":
                               Die Konfigurationsdateien "ifwuser" und "ifwstation" befinden sich im Verzeichnis "user" im IFW Pfad.
                              Hinweis Modus "ifwcore", "ifwcorebase" und "ifwcorclient":
                               Die Konfigurationsdateien "ifwcore" und "ifwcorebase" und "ifwcoreclient" befinden sich im IFW Pfad.
                               Mit "ifwcore" wird zuerst die IFW Konfigurationsdatei fakt.ini abgefragt, dann die mandantenabhaengige IFW Konfigurationsdatei abgefragt.
                               So ergaenzen die zentralen Eintraege die mandantenabhaengigen Eintraege.
                              Hinweis Modus mit ":" im Namen:
                               Bei den Modis kann jetzt zusaetzlich mit einem Doppelpunkt ein Dateipfad und Name angegeben werden.
                               Die Dateien werden dann relativ zu diesem Pfad aufgerufen.
        18.05.12 PRGLOAD:  Das Kommando DocumentEdit() um Bestellungen erweitert.
                 DFED3LIB: Problem mit leeren Benutzerfeldern in der Maskenansicht nach Benutzung eines Makros beseitigt.
        21.05.12 WINIFW:   Modale HTML-Requester erhalten jetzt standardmaessig den Maximierbutton.
                 WINIFW:   Problem mit Speicherabfrage eines Beleges trotz Schliessen mit [x] beseitigt.
        22.05.12 FAKT.INI: Die Gross-/Kleinschreibung bei den Lagerangaben ExterneLagerBezeichnungen, InterneLagerBezeichnungen und 
                           LieferantenkonsignationslagerNichtInLagerbestand wird nicht mehr beruecksichtigt.

593 24.05.12 WINIFW: Eine Positionsliste in einem Eingabefenster kann nicht mehr nach unten verlassen werden, wenn kein Feld unterhalb der Liste vorhanden ist.

                           Beim Zoomen einer Maske mit einer Positionsliste wird jetzt der Zoombereich oberhalb der Positionsliste bis auf ein eventuell vorhandenes Textfeld
                           ausgedehnt. Dadurch wird beim Zoomen auch das Textfeld mit vergroessert.
                 WINIFW:   Beim Schliessen eines Listenfensters mit [x] wird jetzt standardmaessig Escape zurueckgeliefert (bisher 0).

594 30.05.12 PRGLOAD: Das Management zum Schliessen von Datenbanktabellen nach Zugriff per Makro verbessert.

                 FAKTINI:  Neuer Schalter in der FAKT.INI in der Sektion [System]:
                             BenutzeLangeTemporaereDateinamen: Wert 0/1. Default 1.
                             Mit dem Wert 1 wird fuer die Belegbearbeitung lange temporaere Dateinamen mit der Stationsnummer und der Prozess-Id im Dateinamen verwendet.
                             Dadurch hat der Benutzer die Moeglichkeit, unter seinem Namen in mehrere geoeffneten IFW's die gleiche Belegart parallel zu bearbeiten.
                             Dabei wird beim Logout aufgerufene Belegarten vom langen Dateiname in einen kurzen, fuer den Benutzer pro Belegart nur einmal vorhandene, Dateiname kopiert.
                             Nach dem Login wird beim ersten Aufruf einer Belegart der einmalig vorhandene kurze Dateiname in den langen Dateinamen des Prozess kopiert.
                             Somit steht dem Benutzer nach Verlassen des IFW's trotzdem der zuletzt bearbeitete Beleg in einem Zwischenspeicher zur Verfuegung.
                             Mit dem Wert 0 wird nur ein kurzer Name verwendet wobei der Benutzer eine Belegart nur einmal bearbeiten kann
                             (Meldung "Die Belegart wird von Ihnen bereits bearbeitet (Abbruch)").
                 ERRORLOG: Die Angabe des Dateinamens im Logbuch von maximal 20 Zeichen auf maximal 30 Zeichen erhoeht.
        31.05.12 API_MFRM: HTML-Kommando ExecuteProgram() und ExecuteProgramAsync() um den Parameter "Modus" erweitert:
                             ExecuteProgram( winHandle, "ProgrammName", "Label", "Parameter", "Modus");
                             ExecuteProgramAsync( winHandle, "Context", "ProgrammName", "Label", "Parameter", "Modus");
                           Modus:
                             "4": Es wird ein Logbuch bei der Ausfuerung des IFW-Programms mitgeschrieben.
                                  Das Logbuch heisst genauso wie das IFW-Programm, nur mit der Erweiterung ".log".
                                  Es befindet sich im gleichen Verzeichnis wie das IFW-Programm.

595 01.06.12 WINIFW: Beim HTML Druck kann jetzt ein neue Printertemplate im Internet Explorer 8 Modus verwendet werden.

                           Dazu muss im Kopf der HTML Datei die Anweisung "<!-- IfwPrintTemplate=IE8 -->" enthalten sein.
                           Wird die Anweisung erkannt, wird auf ein neues IE8 Printertemplate umgeschaltet.
        11.06.12 WINIFW:   Weisser Loginbildschirm und F4 Druckrequester bei Installiertem IE9 korrigiert.
                           Der Druckrequester wird mittig gesetzt, wenn er vom System vergroessert wird.

596 14.06.12 WINIFW: Die Fentergroesse einer Eingabemaske wird benutzerbezogen gespeichert und angewendet.

                           Maximierte Fenster werden in der groesse nicht beruecksichtigt.
                           Mit "Deskeinstellung zuruecksetzen" werden alle ausgangsgroessen zurueckgesetzt.

!597 15.06.12 PRNLIB: Datumsvergleich mit KW-Datum und leerem Datum korrigiert. 598 18.06.12 API_MFRM: HTML-Kommando ExecuteProgram() und ExecuteProgramAsync() in Verbindung mit dem Parameter "Modus" WWW-Client kompatibel umgebaut.

        20.06.12 PRGLOAD:  Neues Makrokommando SetFileChild()
                             Setzt die Datei wie das Kommando SetFile. Das Objekt wird aber im Bezug zur aktuellen Datei gesetzte. SetFile setzt die Datei als Makro-Root.
                 DFPRN:    Wird im F4 Ausgabeformular ein Makro angegeben (fuehrendes Doppelkreuz #), so wird nach einem Ausdruck im Makro nicht mehr
                           die Meldung "Ein Programmaufruf ist nur mit einer Zieldatei moeglich! (Taste)" ausgegeben.

599 21.06.12 ITBPRG: Funktionsaufrufe mit Variablen vom Typ ROWDEF implementiert.

        25.06.12 DFIMP:    Beim Einlesen in temporaere Positionslisten wird die Ausloesegruppe der Kopffelder verwendet.
        28.06.12 DFIMP:    Beim Dokumentenimport wird bei einem Abbruch durch das Speichermakro in der Funktion "HunkHauptUpdate" das
                           Speichern des Dokuments unterdrueckt, auch wenn es bei der Funktion "HunkHaupt" gespeichert wurde.
        02.07.12 FFFIBU21: Leere Kontonummern sind nicht mehr speicherbar.
        03.07.12 WINIFW:   Datumspruefung bei Felder mit "nur Lesen" deaktiviert.

600 09.07.12 WINIFW: Druckvorschau eines Belegs aktiviert. Funktionsbutton in der Kopfzeile waehrend der Belegeingabe bei offener Maske. Hotkey Alt-F5.

                           Es wird die Funktion (IFW Makrofunktion) "Druckvorschau" aufgerufen.
        12.07.12 FFARTPR:  Meldungen ueber Bestand oder Sonderpreisuebernahme beim DocumentImport deaktiviert.

601 23.07.12 DFIMP: Es koennen jetzt Dateien auch mit enthaltenem Zeichen 255 eingelesen werden. 602 02.08.12 FFART: Die Regel bei der Erkennung bei den Lagerangaben ExterneLagerBezeichnungen, InterneLagerBezeichnungen und LieferantenkonsignationslagerNichtInLagerbestand

                           erweitert:
                           1. Lagerangaben mit Leerzeichen in der Lagernummer werden nicht unterstuetzt.
                           2. Es koennen jetzt auch Lagernummer mit mehr als 2 Zeichen verwaltet werden (IFW Modul)
                           3. Es kann jetzt eine Lagerangabe mit dem Zeichen '*' am Ende eingetragen werden ('*' nur am Enden!). Dabei werden
                              alle Lager die mit den Zeichen vor dem '*' beginnen als ein solches Lager erkannt.
        02.08.12 FFBDE2:   Beim Gehen Eintrag im BDE-Logbuch wird der Zeitstempel aus der Steuerdatei uebernommen. Bisher wurde die Systemzeit des
                           BDE-Managers verwendet.

603 03.08.12 ITBPRG: Neue Option der ROWDEF-Deklaration:

                            "temp false" -> das Datenbankobjekt wird normal Objekt geoeffnet.
                            "temp true"  -> das Datenbankobjekt wird als temporaeres Objekt geoeffnet (Verzeichnis TEMPDAT)
                            Die Standardeinstellung ist "temp false".
                            Anstatt dem Wert "false" kann auch "off" angegeben werden.
                            Anstatt dem Wert "true" kann auch "on" angegeben werden.
        08.08.12 WINIFW:   Die Anzeige von Textrahmen in Eingabemasken optimiert.

604 09.08.12 FFARTPR: Es werden bei den erweiterten Kundenpreise jetzt auch Preise mit Gueltigkeitsdatum von/bis unterstuezt.

                           Als Datum fuer die Preisabgrenzung wird das Belegdatum verwendet.
                           Es wird immer der Eintrag mit kleiner gleichem gueltig ab-Datum gesucht. Ist das bis-Datum des gefundenen
                           Eintrags leer oder groesser gleich des Belegdatums, wird der Preiseintrag verwendet.
                           Als Rueckmeldung wird "St:x PG:y JJMMTT" mit dem Startdatum des gefundenen Zeitintervals ausgegeben.
                           Wird keine gueltiger Eintrag gefunden, wird der Preis aus dem Artikelstamm mit der Meldung
                           "PG:y Artikelstamm" ausgegeben.
        09.08.12 ITBPRG:   Zeilennummernsystem im Programmlader implementiert. Bei Fehlermeldungen werden jetzt dateispezifische korrekte Zeilennummern ausgegeben.
        11.08.12 DIRLIB:   Beim Aufruf von Verzeichnissen beim Ausgabeformular, werden Verzeichnisse mit einem fuehrenden Underscore '_' nicht mehr angezeigt.
        12.08.12 PRGLOAD:  Erweiterung von Kommando SetItemAccessLevel
                            Modus 0x8000:
                           Es wird kein Fehler zurueckgegeben, wenn die Feldnummer nicht existiert.

605 31.08.12 ITBPRG: Neues Kommando SetLinearFilter()

                            SetLinearFilter(INT $iModus, INT $iFeldNummer, STRING $strFeldInhalt);
                            Setzt einen Linearfilter in der Datenbank. Es werden nur Datensaetze die dem Filter entsprechen zurueckgegeben.
                            $iModus: Filterfunktion: 1 ==, 2 !=, 3 Teilwort enthalten, 4 Eines der Zeichen enthaltenm nur mit Felder der Laenge 1 verfuegbar, 5 Ein Zeichen ist nicht enthalten, geht nur mit einem Zeichen, das Feld kann beliebig lang sein.
                            $iFeldNummer: Feldnummer der Filterfunktion
                            $strFeldInhalt: Feldinhalt der Filterfunktion
                 ITBPRG:   Neues Kommando ClrLinearFilter()
                            ClrLinearFilter();
                            Loescht einen gesetzten Linearfilter in der Datenbank.

606 03.09.12 DFIMP: Import mit Umlaute als Suchstring reaktiviert (seit Rev. 601 fehlerhaft).

                 FFARTBCH: Buchung von offenen Lieferscheinmengen in den externen Lagern bei Konsignationslieferscheinen (Vorgang 10) korrigiert.
        07.09.12 FFPERS:   BDE-Uebrtragung mit Auftragsnachkalkulation Primaerkey Feld 145 in der Personalstundenerfassung beruecksichtigt.

607 07.09.12 ITBPRG: Neue Option der ROWDEF-Deklaration:

                            "link nnn" -> es wird das Datenbankobjekt initialisiert, dass ueber die Feldnummer nnn verknuepft ist.
                 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                            KonsignationslieferscheinLagerPruefen; Wert 0/1, Default 1.
                            Beim Speichern eines Verkaufsbeleges wird bei Konsignationslieferungen die Lagerangabe Ziellager/Quellager geprueft.
                            Es werden nur Belege mit unterschiedlichen Lager und vorhandenem Ziellager akzeptiert.
                            Mit dem Wert 0 wird die Pruefung abgeschaltet, so dass auch Konsignationslieferungen in das Hauptlager
                            (keine Lagerangabe) moeglich sind.

608 13.09.12 PRNLIB2: Dateinamensregel beim Kommando #include erweitert:

                           Ist ein Laufwerksbuchstaben angegeben, so wird dieser verwendet (wie bisher)
                           Ist ein Verzeichnissname mit fuehrendem Backslash angegeben, so wird der Verzeichnisname direkt verwendet (wie bisher)
                           Ansonsten wird an den aktuellen Pfad der Hauptdatei der Pfadname angehaengt (neu)
                 PRGLOAD:  Kommando PrintFile() und PrintFileId() erweitert:
                            Modus 0x800000: Bei einer IFW Tabelle wird ein Logbuch mitgeschrieben. Das Logbuch befindet im gleichen Verzeichnis
                            wie das Tabellenprogramm und hat die Dateiendung ".log".
                 ITBPRG:   Maximale Groesse von RowStr.dim() von 100 auf 4095 Byte erhoeht.

609 19.09.12 DFLOADZW: Beim Bearbeiten von Belegen wird der Datenbankbackup zur Aenderungskontrolle direkt beim Laden des Belegs erzeugt. Bisher

                           wurde er unmittelbar nach dem Laden des Belegs erzeugt. Dies konnte in sehr seltenen Faellen zu einer nicht gemeldeten
                           Benutzerkollision fuehren.
        27.09.12 FFPERS:   Bei der Berechnung der Anwesenheitsdauer einer Person im Personalstamm sind jetzt die Optionen Q und R verfuegbar:
                           Q: keine Pausenzeiten abziehen -> Es werden keine Pausenzeiten zwischen Kommen und Gehen abgezogen (Zeittabellenoption P).
                           R: kein Kommen/Gehen runden -> Es werden keine Auf-/Abrundungen bei Kommen/Gehen vorgenommen (Zeittabellenoption 1,2,3,4)

610 28.09.12 FFDATEV: Korrektur des Buchungsschluessel beim Import von Datev-Disketten im OBE Format.

        02.10.12 FFBDE2:   Der Filescannservice von BDE ist jetzt Mandantenabhaengig´. Je nach Mandant wird das Verzeichnis bdecom oder bdecom.MMM mit 
                           MMM als Mandantennummer gescannt. Beim Standardmandant 000 wird wie bisher das Verzeichnis bdecom gescannt.
        04.10.12 API_MFRM: HTML-Kommando GetSystemVersion() erweitert.
                            Es gibt die Form "MajorVersion,MinorVersion,BuildNumber,PlatformId;Systerm in Textform" zurueck.

611 05.10.12 PRNLIB2: Preprozessorkommando #ifdb erweitert:

                           #ifdb( dbname )
                           #ifdb( dbname, Feldnummer )
                            Damit eingegrenzte Formularteile werden nur verwendet, wenn die angegebene Datenbank vorhanden ist.
                            Wird eine Feldnummer mit angegeben, so muss zusaetzlich zur Datenbank auch das Feld in der Datenbank existieren.
                 FFARTBCH: Im Lagerlogbuch wird das Feld "Periode" (falls vorhanden) nur noch dann auf die System-Buchungsperiode gestellt,
                           wenn der Schalter "LagerPeriodeAktiv" gesetzt ist. Ohne dem Schalter wird die Buchungsperiode auf das Datum des
                           Lagerlogbucheintrags gesetzt. Der Schalter steht nur mit einem speziellen IFW Modul zur Verfuegung.

612 11.10.12 ITBPRG: Kommando PrintFile( STRING $strFileName, INT $iMode); um Modus 4 erweitert.

                             PrintFile( STRING $strFileName, INT $iMode);
                           Mit dem Kommando koennen Dateien direkt in die Ausgabedatei ausgegeben werden.
                           Der Parameter $strFileName enthaelt den Dateiname der auszugebenden Datei.
                           Mit dem Parameter $iMode koennen verschiedene Optionen aktiviert werden.
                           $iMode:
                             1: Der Platzhalter %HTML_CSV_DATA% wird in der Datei gesucht und durch den Inhalt der Tabellendaten ersetzt.
                               Die Option ist nur in Verbindung mit dem Kommando SetOutputModeHTML( TRUE) sinnvoll.
                               Hinweis: Die Option 1 wird nach Ausfuehrung von Option 2 und 4 ausgefuehrt.
                             2: Es wird nach eienr Zeile mit dem Kommando <!--#include filename.ext --> gesucht. Es muss genau der der Text "<!--#include " enthalten sein.
                               Der Dateiname wird ab "<!--#include " bis "-->" ermittelt. Es wird versucht die Datei zu laden und ab der naechsten Zeile einzufuegen.
                               Der Dateiname wird dabei folgendermassen interpretiert:
                               1. Lautet der Dateiname MAINFILE.xxx so wird der Platzhalter MAINFILE durch den Dateiname der original geladenen Datei ersetzt. Die Erweiterung
                                   bleibt erhalten. Ist die Datei nicht vorhanden, so wird keine Fehlermeldung ausgegeben und das Kommando ignoriert.
                               2. Ist als letztes Zeichen der Dateierweiterung ein '*' enthalten (z.B. Briefe01.dv*) so wird zuererst Versucht die Datei mit einem 'U' als
                                   letztes Zeichen zu laden (z.B. Briefe01.dvU), ist sie nicht vorhanden, dann die Datei mit einem 'L' (z.B. Briefe01.dvL).
                                   Ist auch diese Datei nicht vorhanden wird eine Fehlermeldung ausgegeben.
                               3. Ist als letztes Zeichen der Dateierweiterung ein '?' enthalten (z.B. Briefe01.dv?) so wird das Fragezeichen durch den angegebnen Includeextender
                                   ersetzt (Das ist ein Zeichen dass im Ausgabeformular angegeben werden kann). Ist kein Includeextender angegeben oder die Datei mit dem
                                   Includeextender nicht vorhanden, so wird das Zeichen 'L' vorgegeben (z.B. Briefe01.dvL).
                                   Ist die 'L'-Datei nicht vorhanden wird eine Fehlermeldung ausgegeben.
                             4: Es wird nach einer Zeile "<script src=\" .... </script>" gesucht.
                                Ist solch eine Zeile vorhanden, wird sie ersetzte:
                                <script type=\"text/javascript\">
                                ... Inhalt der Datei Dateiname, die mit src="Dateiname" angegeben ist ...
                                </script>
        12.10.12 DFLOADZW: Funktion beim neu schreiben von Belegen durch Kopie mehrerer Quellbelege des eigenen Typs korrigiert (z.B. Neues Angebot durch Selektion und Kopie mehrerer
                           vorhandener Angebote". Funktionsstoerung seit Rev. 609.
                 STDMSK:  Bei Uebernahme von Formulare in die Formularmaske wird bei leerem [Optionen] Block im Formular nicht mehr "*keine Optionen*" eingetragen.
                          Nur noch bei fehlendem [Optionen] Block.
                 WINIFW:  Nach oeffnen einer Maske zum Suchen mit "+" blieb in den Untermasken (TAB's) bei weiterer normalen Bearbeitung die F1 Links deaktiviert.
                          Problem beseitigt.
        22.10.12 FFPROD2: Beim "Produktion abschliessen" wird nach Aktivierung der TTS-Kapselung zusaetzlich eine Abfrage des Abschlusskennzeichen E vorgenommen.
                          Damit soll ein doppeltes Einbuchen bei gleichzeitiger Betaetigung an mehreren Plaetzen verhindert werden.

613 24.10.12 STDPRJ_: Problem mit Archivierung von Vertreterregeln beseitigt.

                          Merkmal PDF_LINKNOFALLBACK in den Datenbanktabellen zur Steuerung der Orts-Vererbung hinzugefuegt.
                 PRGLOAD: Kommando PrintFile() und PrintFileId() erweitert:
                           Modus 0x1000000: Bei einer IFW Tabelle wird ein Zeitprofil mitgeschieben. Das Profil befindet im gleichen Verzeichnis
                           wie das Tabellenprogramm und hat die Dateiendung ".profile".
                           Diese Option ist nur in speziellen IFW-Versionen verfuegbar.
                           Modus 0x2000000: Bei einer IFW Tabelle wird ein Optimierungsprozess verwendet. Damit laeuft die Erstellung
                           schneller ab. Pruefen Sie das Ergebniss, ob es zu einem Erstellungslauf ohne Optimierung Unterschiede gibt.
        30.10.12 DFPRN_:  Waehrend dem Printrequester wird das Sperrlevel fuer die Makroausfuehrung gesetzt.
        31.10.12 API_REQ: Die Fortschrittsanzeige wird bei einem Lauf ueber Makrokommando SerachSub und PrintFile kombiniert angezeigt.

614 02.11.12 IFWTAB: KW Angaben bei Datumszuweisenungen werden jetzt immer mit beruecksichtigt.

                          Wenn eine Datumsangaben ein gesetztes KW Flag besietzt, wird auf KW-Ebene verglichen.
                 PRGLOAD: Zeilen die mit einem '/*' Zeichen beginnen, werden jetzt als Kommentarzeilen intrepretiert (wie Zeilen mit ';').
        05.11.12 CALCMAI: Beim Umwandeln von Texten in Zahlen wird jetzt zusaetzlich zur Datumserkennung auch ein Kalenderwochenerkennung
                          (KW 01/12) verwendet. Die Datumsangaben werden in den Tagesoffset zum Kalenderbeginn umgandelt.

615 15.11.12 FFFIBUDV:Das Kontomerkmal '=' sorgt bei der Stapelerstellung auch zu einer Uebersteuerung der Umsatzsteuer/Vorsteuer logik.

                          Damit ist es moeglich im Verkauf spezielle gekennzeichnete Kostenkonten mit Vorsteuer zu bebuchen und im Einkauf
                          spezielle gekennzeichnete Erloeskonten mit Umsatzsteuer zu bebuchen.
                          Die Verriegelung ueber das Automatikkennzeichen 'A' wird dabei ebenfalls beruecksichtigt.
        16.11.12 DFED2LIB:Pruefung auf Fehler bei der Autonummerierung um Feld 54 erweitert:
                           Sollte beim Speichern eines Datensatz mit Autoincrement auf Feld Nummer 32 oder 54 die Nummer fehlschlagen, so wird
                           mit 3 Versuchen zusaetzlich eine Nummernfortschreibung vorgenummen (Meldung "New: autoincrement retry mc:%d '%s', cnt:%d").
                           Sollte dies kein Erfolg haben so wird eine Zwangsfortschreibung der Nummer versucht
                           und der Eintrag "New: autoincrement failed, retry force mc:%d '%s', cnt:%d" im Benutzerlog vermerkt.
                 STDPRJ:  Wird im Docustore eine Datei angehaengt, dann wird fuer die Vergleichspruefung zusaetzlich zum Dateiname und der 
                          Dateigroesse im Vorfeld die CRC-Summe mit einbezogen. Damit wird die Anzahl der direkten Dateivergleiche reduziert.
        19.11.12 PRGLOAD: Makrokommando Gosub um Modus  4 erweitert:
                           Gosub( "Programmname")
                           Gosub( , "Label")
                           Gosub( "Programmname", "Label")
                           Gosub( "Programmname", "Label", Modus)
                           -Ruft ein Programm auf und kehrt zu seiner Aufrufzeile zurueck.
                           -Wird kein Programmname angegeben, so wird das Label in der gleichen Programmdatei aufgerufen.
                           -Variablen sind als "Programmname" und "Label" erlaubt, man kann also auch indirekte Aufrufziele definieren.
                           -Mit einem Rueckgabewert ungleich 0 wird der Programmlauf abgebrochen (ABORT).
                           Modus:
                             0x0001 - Der Aufruf erzeugt kein eigenes Sperrlevel fuer die Makroausfuehrung. Ein vor dem Aufruf vorhandenes Sperrlevel bleibt bestehen.
                             0x0002 - Der Aufruf loescht komplett das Sperrlevel fuer die Makroausfuehrung. Ein vor dem Aufruf vorhandenes Sperrlevel wird ebenfalls entfernt.
                                      Nach dem Aufruf wird das zuvor bestandene Sperrlevel wieder hergestellt.
                             0x0004 - Bei einem Rueckgabewert ungleich 0 wird der Programmlauf beendet und der Wert zurueckgegeben.
                                      Die Option wird bei System-Speichermakros in Verbindung mit Abbruch des Vorgangs aus Unterprogramme heraus verwendet.
                           Hinweis:
                            Das Sperrlevel verhindert die Ausfuehrung von Makros aus HTML-Oberflaechen. Es verhindert Kollisionen von HTML-Events die asynchron eintreffen.
                            Das HTML-Kommando ExecuteProgram() erhaelt bei einer Sperre im Rueckgabewert den Text "*blocked*". Siehe auch HTML-Kommando IsProgramBusy().
                 TAPIUTIL: Wird beim Aktivieren der Telefon TAPI ein Fehler festgestellt, dann wird die Anmeldung mit der Meldung "Telefon: TAPI meldet einen Fehler"
                           abgebrochen und die Anmeldeautomatik deaktiviert. Das verhindert ein immer wiederkehrender Anmeldeversuch und die Signalisierung an das IFW-Desktop.

616 21.11.12 PRGLOAD: Makrokommando Gosub Modus 4 korrigiert.

        22.11.12 POPUPMNU:Die Tooltipanzeige des Druckerpfades in der klassischen Version um die Stationsdrucker A-Z erweitert.
        23.11.12 PRGLOAD: Kommando SetItem() um Funktionsmodus 4 erweitert.
                           SetItem( Feldnummer, Feldinhalt);
                           SetItem( Feldnummer, Feldinhalt, Feldindex);
                           SetItem( Feldnummer, Feldinhalt, Feldindex, Modus);
                           Modus:
                             1 0x0001 Die Rechenoperation auf dem Feld wird nicht aufgerufen
                             2 0x0002 Das Feld wird auf der Oberflaeche nicht aktuallisiert
                             4 0x0004 Ist die aktuelle Datenbank eine temporaere Datenbank, so wird der Datensatz abgespeichert und die Windows-Eingabemaske aktualisiert.

617 26.11.12 FFFIBU: Beim ExportDatenausgabe in eine Datei der FIBU in den Buchungstapel wird bei Skontozahleungen jetzt zusaetzlich der DATEV-Steuerschluessel mit ausgegeben.

                 FFFIBU:  Buchung von Kostenkonten im Verkauf oder Erloeskonten in Einkauf:
                          In der Regel sind Kostenkonten mit Vorsteuer im Verkauf oder Erloeskonten im Umsatzsteuer im Einkauf nicht buchbar.
                          Wird die Bebuchung durch Uebersteuerung der Konten erzwungen, so wird fuer die Steuerung der Steuerbuchung beim Skontoabzuegen folgenes
                          Kennzeichnungssystem verwendet:
                          1. Das Kennzeichen "=" wird bei Forderungen (OP's), Verbindlichkeiten, Im Buchungsstapel und im Buchungsjournal eingefuehrt.
                          2. Wird bei der Stapelerzeugung bei Forderungen oder Verbindlichkeiten eine Uebersteuerung erkannt, so wird das Kennzeichen "=" im Stapel
                             und beim Verarbeiten des Stapels in den Forderungen/Verbindlichkeiten gesetzt.
                          3. Es duerfen keine gemischten Belege mit Kosten-Positionen UND Erloese-Positionen angelegt werden. In diesem Fall ist keine korrekte
                             automatische Steuerrueckrechnung im Skontobereich moeglich.
                          4. Wird eine Forderung/Verbindlichkeit mit dem Kennzeichen "=" bezahlt, wird im Buchungssatz das Kennzeichen "=" gesetzt.
                             Das Kennzeichen "=" im Buchungssatz sorgt bei Bezahlung mit Skonto zu einem Vertauschen der Einkauf/Verkauf Erkennung (Vorsteuer/Umsatzsteuer)
                             und so zur geaenderten Buchung der Steueranteile des Skontobertrags.
                          5. Beim Export des Buchungen in den Stapel wird bei Skontozahlung das Kennzeichen "=" im Buchungsjournal mit der Forderung/Verbindlichkeit verglichen.
                             Weichen die Kennzeichen ab, so wird der Export gesperrt und eine entsprechende Meldung ausgegeben.
                             ("Buchung %s: OP %s ist ... als Kostenbuchung gekennzeichnet! (Abbruch)" oder 
                             "Buchung %s: VB %s ist ... als Erloesbuchung gekennzeichnet! (Abbruch)").
                          6. Mit dem Kennzeichen "=" werden bei der Stapelerzeugung entsprechend die DATEV-Buchungsschluessel bei Skontobezahlungen angepasst.
                          7. Wird ein Buchungsberichtigungsschluessel im Buchungssjournal bei der Skontozahlung angegeben, so hat er beim Stapelexport vorrang und wird dort
                             direkt in den Stapel uebertragen.

618 07.12.12 PRNLIB3: Neues Druckvorlagenkommando [.SysComputerName<]

                           Gibt den Computername zurueck.
                 PRNLIB3: Neues Druckvorlagenkommando [.SysVersion<]
                           Gibt die Form "MajorVersion,MinorVersion,BuildNumber,PlatformId;Systerm in Textform" zurueck.
                 PRNLIB3: Neues Druckvorlagenkommando [.ProgrammAufrufZaehler<]
                           Gibt das aktuelle Sperrlevel der Makroausfuehrung zurueck.
                 PRNLIB3: Neues Druckvorlagenkommando [.SysIeVersion<]
                           Gibt die IE Version in der Form "9.0.8112.16421" (Beispiel IE 9) zurueck.
        10.12.12 FFWEG:   Beim Wareneingang mit Versandkostenverteilung wird bei 0 Angabe und 0 Menge kein ungueltieger kalkulatorischer EK berechnet.
                 CALCMAI: Beim Setzen von Zahlen in Zahlenfelder werden ungueltige Fliesskommawerte auf 0 gesetzt.
        13.12.12 IFWWWW:  Beim ASP Host fuehren bei der Datenuebertragung NULL-Pointer in den Rueckgabewerten nicht mehr zu einem Verbindungsabriss.
        19.12.12 IFWWWW:  Inventur externe Lager uebertragen erzeugt jetzt einen Eintrag mit "L:LG.NNN", bisher war er "LG NNN". LG steht fuer die Lagernummer
                          und NNN fuer die laufende Position.
        02.01.13 PRGLOAD: Beim Kommando DocumentEdit() wird bei VerarbeitungsModus 16 beim Auftrag stornieren keine Meldung mehr angezeigt.
        07.01.13 ITBPRG:  Initialisierungfunktion IfwTabBase::RowDefInit() freigegeben und aktiviert.

619 09.01.13 TOBITFW: Wird durch ein Email ein Import ausgeloest, so wird der Importlauf vor einer Unterbrechung durch einen Scheduler geschuetzt.

        10.01.13 ITBPRG:  Schutzverletzung beim Aufruf von Tabellen ohne Spalten (kein AddColumn() enthalten) entfernt.
        15.01.13 FFVERSND:Systemmakro .$88 implementiert:
                          Beim Aufruf von Lieferscheinen zur Paketerfassung wird nach Auswahl der Lieferscheine das Makro aufgerufen (liesch.$88).
                          Mit einem Rueckgabewert ungleich 0 wird die Paketerfassung nicht aufgerufen.
        18.01.13 API_MFRM:Javascript-Aufruf aus dem IFW implementiert:
                          -Bei einem asynchronen IFW Aufruf wird versucht die Funktion "IfwEvent_CallBack()" aufzurufen.
                           Wird sie nicht gefunden wird der Tastenkode F22 gesendet (wie bisher).
                          -Bei einem Telefonevent oder einem Terminkalender Refreshevent wird versucht die Funktion "IfwEvent_Key0()" aufzurufen.
                           Wird sie nicht gefunden wird der Tastenkode '0' gesendet (wie bisher).
        22.01.13 DOCUSTORE:Umlaute im Windows-Benutzerprofil werden beim Dateiaufruf nicht mehr konvertiert.

620 25.01.13 PRGLOAD: Das Kommando WriteProfile() unterstuetzt jetzt Werte bis maximal 90KB.

        25.01.13 PRGLOAD:  Kommando DoHtmlRequest() erweitert:
                             DoHtmlRequest();
                             DoHtmlRequest( "HtmlDatei");
                             DoHtmlRequest( "HtmlDatei", x, y);
                             DoHtmlRequest( "HtmlDatei", x, y, Modus);
                             DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                             DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                           Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                           Mit Modus koennen verschiedene Optionen geschaltet werden:
                               1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                               2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                               4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                               8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                              16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                             Es wird statt dessen der Tastencode F23 gesendet.
                                             Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                              32 (0x0020) -> Der Dialog wird nicht Modal durchgefuehrt. Nicht modale Fenster koennen auch minimiert werden.
                              64 (0x0040) -> Das Fenster kann nur einmal geoeffnet werden. Besteht es bereits wird das bestehende Fenster aktiviert.
                             128 (0x0080) -> Das Fenster wird maximiert geoeffnet
                             256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                             512 (0x0200) -> In der Titelzeile werden alle Systemmenuefuktionen und Buttons abgeschaltet
                            1024 (0x0400) -> Der Maximierungsbutton ist nicht sichtbar
                            2048 (0x0800) -> Der Minimierungsbutton ist nicht sichtbar
                            4096 (0x1000) -> Des Fenster wird im Fullscreenmodus ohne Rand geoeffnet (Kioskmodus)
                            8192 (0x2000) -> Der ASP-Host wird im Fehlerfall neu gestartet
                           16348 (0x4000) -> Fenster nicht sichtbar
                           Mit Titel kann ein Fenstertitel angegeben werden.
                           Mit IconId kann ein Icon des Fensters angegeben werden.
                           Mit '?' angehaengte Parameter an der URL der HtmlDatei werden jetzt korrekt an den internen
                           Parameter pinID angehaengt.

621 31.01.13 API_MFRM: Druckfunktion von HTML Seiten die per DoHtmlRequest() aufgerufen werden erweitert:

                           Ist der Eintrag <!-- IfwPrintTemplate=IE8 --> in der HTML Datei enthalten und das ie8-Printertemplate
                           im IFW installiert (binhtml/prntempl.ie8 vorhanden) so wird das IFW Printertemplate verwendet.
        31.01.13 API_MFRM: Neues HTML-Kommando Print()
                            Print( winHandle, Modus, Drucker)
                           Modus:
                            0 Gibt den in der HTML Seite zuletzte verwendeten Drucker zurueck
                            1 Der Ausdruck wird mit einem Druckrequester gestartet
                            2 Der Ausdruck mit Druckvorschau wird gestarte
                           Hinweis:
                            Gibt die Funtkion "*busy*" zurueck, so laeuft bereits der Ausdruck oder die Druckvorschau. Bei groesseren HTML-Seiten
                            kann es etwas dauern bis der Ausdruck beendet ist. Mit Modus 0 kann der Status periodisch abgefragt werden.
                            Die Funktion ist nur in HTML-Seiten die mit DoHtmlRequest() aufgerufen wurden verfuegbar.
        01.02.13 WINIFW:   Beim Drucken innerhalb eines HTML Requesters mit offenenr Druckvorschau bleibt beim automatischen Schliessen der Druckvorschau
                           das HTML Fenster im Vordergrund.

622 05.02.13 FIBU: Das Buchungsjournal lässt sich jetzt archivieren. Es können nur Einträge ausserhalb der 3 Buchungsjahre archiviert werden.

                 FIBU:     Als Buchungsberichtigungsschluessel wird jetzt der Schluessel 40 und 80 unterstuetzt.
                            40: Aufhebung der Automatik -> es wird auf ein Konto (auch Automatikkonto) zwangsweise ohne Steuer gebucht
                            80: Aufhebung der Automatik und Generalumkehr -> es wird auf ein Konto (auch Automatikkonto) zwangsweise ohne Steuer als Generalumkehr gebucht.
                 WINIFW:   Wird im Archiv beim Anschauen F2 gedrueckt, verschiebt sich der Datensatzfokus nicht mehr.
                 PRGLOAD:  Kommando ConvertIcsvToImportCsv() erweitert um Modus 0x0800
                             Modus 0x0800: bei Modus 0x0001 HTML-CSV.Convert das % bei Prozentspalten mit ausgeben

623 11.02.13 FIBU: Pruefung auf Steuerabweichung auf Automatikkonten und Pruefung der Offene Posten Verbindungen beim Archivieren deaktiviert.

        12.02.13 STRPRJ_:  Wird bei der Initialisierung eines Datenbankobjekts mit 2 Dateienarchiv erkannt dass eine Archivierungsabhaengigkeit zu einer Listendatenbank
                           besteht, so wird diese Listendatenbank automatisch mit einem Archivierungsbezug versehen.
                           Damit bleibt die Archivierbarkeit erhalten, auch wenn in der Projektdeklaration (FAKTPRJ) die Abhaengigkeit nicht eingetragen ist.
                 PRGLOAD:  Neues Makrokommando CallJS(), RegisterJS(), FunctionJS()
                            CallJS(...) maximal 10 Parameter
                           CallJS() ruft direkt Funktionen aus der Javascript-Konsole des IFW's auf.
                            RegisterJS(...) maximal 8 Parameter
                           RegisterJS() registriert die aktuelle Makrodatei als Modul in der Javascript-Konsole. Die Markodatei muss entsprechend präpariert sein.
                            FunctionJS( FunktionsName, ...) maximal weitere 7 Parameter
                           FunctionJS() ruft die Javascript-Funktion "FunktionsName" aus der Makrodatei auf. Die Datei muss zuvor mit RegisterJS() registriert werden.
                           Muster Makrodatei mit Javascriptcode (Den Makroteil mit / * * / (ohne Leerzeichen) aus dem Javascript deaktiveren):
                             / *
                             Main:
                               RegisterJS();
                               FunctionJS( "display", "hallo");
                             End();
                             * /
                             //-----------------------------------------------------------------------------
                             // anonymisierte JavaScript Funktionen
                             //-----------------------------------------------------------------------------
                             (function ()
                             {
                               var m_oVar = {};
                               function display( str)
                               {
                                 alert( "Funktion display " + str);
                               }
                               function set( strVar, strVal)
                               {
                                 m_oVar[strVar] = strVal;
                               }
                               function get( strVar)
                               {
                                 if( m_oVar[strVar])
                                   return m_oVar[strVar];
                                return "";
                               }
                               IfwRegisterFunction(display);
                               IfwRegisterFunction(set);
                               IfwRegisterFunction(get);
                             }
                             )();
                             IfwRegisterFunctionEnd();

624 13.02.13 WINIFW: Als Spalten eingeblendete Attribute (benutzerdefinierte Felder) koennen jetzt in der Uebersicht direkt sortiert werden.

                           Die Spalten sind mit einer gruenen Schrift markiert.
                           Wird solch eine Spalte angeklickt, werden nur die Datensaetze angezeigt, die dieses Attribut mit einen Wert enthalten.
                           Es ist zu beachten, dass dadurch NICHT ALLE Datensaetze der Datenbank angezeigt werden! Diese Teilmenge wird erst wieder
                           beim Umsortieren auf eine blaue Spalte (Datenbanksuchpfad) aufgehoben.
                           Sind Saetze selektiert, die nicht dieses Attribut enthalten, so bleiben sie im Hintergrund selektiert.
                           Will man alle selektieren Saetze bei aktiver Attributsspalte sehen, so ist auf "nur selektierte" umzuschalten.
        14.02.13 WINIFW:   Es wird jetzt direkt im Fensterrahmen der Liste eine Statuszeile eingeblendet.
        15.02.13 PRNLIB3:  Neues Druckvorlagenkommando [.MHANDLE32<]
                            Gibt den 32 Bit Handle der aktuellen Datenbanktabelle in der Hexadezimalen Form "0xnnnnnnnn" zurueck.
                 PRGLOAD:  Makrokommando SetFile() erweitert.
                            -Der erste Parameter kann als Vt Varianble uebergeben werden
                            -Ist der Erste Paramater in der Form "0xnnnnnnnn" dann wird direkt die Datenbanktabelle mit dem Handle aufgerufen.
                 PRGLOAD:  Makrokommando AppendBrowseItem() erweitert.
                            -Der erste Parameter kann als  Vt Varianble uebergeben werden
                            -Wird nur ein Paramater angegeben, so wird sein Inhalt als mit Komma getrennte Parameterliste verwendet.
                             Die Paramaterliste hat die gleiche Form wird die Normale Aufrufsparameterliste des Kommandos.
                 PRGLOAD:  Neues Makrokommando RefreshBrowse().
                             Synchronisiert die Spalteneinstellungen an die graphische UI.
                             Das Kommando ist nach Manipulation der Spalten mit z.B. AppendBrowseItem() einzusetzen.
                             Es wird NICHT in den .$4x Systemmakros benoetigt.
        18.02.13 WINIFW:   Anzahl maximaler Spalten in der Listenuebersicht von 32 auf 64 erhoeht.

625 05.03.13 WINIFW: Selektion mit +/- Taste F2 korrigiert. Sie blieb unter bestimmten Umstaenden ohne Funktion.

                           Sortierung nach Selektion nur noch bei geaenderter Sortierfolge.
                 WINIFW:   HTML-Statuszeile in der Listenuebersicht aktiviert.
                 WINIFW:   Die Anzeige des Loginfensters korrigiert. Es blieb unter bestimmten Umstaenden ohne Graphik.
        06.03.13 WINIFW:   Sortierung von gepufferten kleinen Datenmengen (<500) beim Klick auf die schwarze Spalte korrigiert.
        07.03.13 ITBPRG:   Die ROWDEF Option "link" ist jetzt auch auf Kennzeichenfelder (Feldcode 46) verfuegbar.
        11.03.13 FFFIRUMS: Die Summe Auftragseingang wurde bei der Funktion "Monatsumsatz berechnen" unter ganz bestimmten Umstaenden ohne Archivierte Auftraege berechnet.
                           Problem beseitigt.
        11.03.13 DFOBJ:    Beim Initialisieren der Belegaenderungsdatenbank (InitChgDat) und beim Initialisieren der Mandantensysnchronisation (DfSyncBuff::init) eine genauere
                           Pruefung der Dateihandles implementiert.

626 12.03.13 HTMLWIN: Javascript-Aufruf aus dem IFW in der Zusammenfassung aktiviert:

                          -Beim Aktualisieren der "Zusammenfassung" (Reiter in der IFW Datenbankmaske) wird versucht die Funktion "IfwEvent_Key24()" aufzurufen.
                           Wird sie nicht gefunden wird der Tastenkode F24 gesendet (wie bisher).
                 WINIFW:   Beim Aufruf von Tabellen aus der Zusammenfassung heraus, wird die Tabelle nicht mehr in den Hintergrund geschaltet.
                 FFERLBU:  Schutzverletzung bei Uebernahme von Eingangsrechnungspositionen auf eine Bautraeger Eingangsrechung (Auslandskennzeichen "u") mit
                           aktivem Schalter "WareneingangKontenuebernahme=1" in der FAKT.INI beseitigt.

627 19.03.13 API_MFRM: HTML-Kommando ExecuteProgram() und ExecuteProgramAsync() um den Parameter "Modus 8" erweitert:

                             ExecuteProgram( winHandle, "ProgrammName", "Label", "Parameter", "Modus");
                             ExecuteProgramAsync( winHandle, "Context", "ProgrammName", "Label", "Parameter", "Modus");
                           Modus:
                             4: Es wird ein Logbuch bei der Ausfuerung des IFW-Programms mitgeschrieben.
                                Das Logbuch heisst genauso wie das IFW-Programm, nur mit der Erweiterung ".log".
                                Es befindet sich im gleichen Verzeichnis wie das IFW-Programm.
                             8: Der Aufrufschutz "*blocked* wird uebergangen.
                                Um Kollisionen mehrerer asynchron ablaufende Programmaufrufe zu verhindern wird ein Blocklevel bei jeden Programmaufruf gesetzt.
                                Mit dem Modus 8 kann dieser Aufrufschutz uebergangen werden. Diese Option darf NUR IN BESONDEREN FAELLEN verwendet werden,
                                wenn die aufgerufenen Funktionen keine Datenbankobjektmanipulationen vornimmt.
        19.03.13 DFPRN:    Erweiterung des Printer-Setups.
                           Es wird jetzt ein zusaetzliches Optionsfeld "Sichtbar" fuer Druckvorlagenoptionen im Ausgabeformular unterstuetzt.
                           Enthaelt es Optionen, so werden nur diese im Printersetup angezeigt.
                           Ist es leer, werden die Optionen " - " aus der Druckvorlage angezeigt (wie bisher).
                           Zusaetzlich werden jetzt auch Programmaufrufe im Printersetup unterstuetzt. Der Aufrufschutz "*blocked*" muss dabei mit Modus 8 abgeschaltet werden.
        19.03.13 WINIFW:   Aktualisierung der Listenuebersicht in Verbindung mit der Attributssteuerung und Indexfilter ueberarbeitet.
        20.03.13 PRGLOAD:  Makrokommando AppendBrowseItem() erweitert.
                           - Wird vor die anzufuegende Feldnummer ein Stern '*' gesetzt, so wird die Spalte nur angefuegt, wenn sie noch nicht vorhanden ist.
                           - Wird als Suchpfad -2 angegeben, so wird der erste Suchpfad fuer das Feld gesucht und zugewiesen.
        22.03.13 PRGLOAD:  Kommando TransferSelectionToMarkedFile erweitert.
                            Wenn die Zieldatei mit Basisdatarchiv versehen ist, werden auch nur noch die dem Anzeigemodus entsprechenden Eintraege selektiert.
                 PRGLOAD:  Kommando SetFileBackToMarkedFile angepasst.
                            Das abgeleitete MarkedFile wird vor dem automatischen Schliessen geschuetzt.
        25.03.13 WINIFW:   Aktualisierung der Listenuebersicht in Verbindung mit geschaetzten Mengen aus Datenbanktabellen ueberarbeitet.

628 04.04.13 WINIFW: Funktion der Taste Escape in der Druckvorschau der Listenuebersicht korrigiert.

        18.04.13 FFART:    Fremdwaehrungspreise im Artikelstamm werden bei Kursaenderung beim naechsten Aufruf der Preisfelder so aktualisiert, dass sich nur
                           der interne Kurs und nicht der Fremdwaehrungspreis aendert.
        26.04.13 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "Verkauf":
                            WartungAmErsten: Wert 0/1, Default 0.
                            Kunden Wartungsvertraege werden auf den Monatsletzten berechnet.
                            Mit dem Schalter WartungAmErsten=1 werden sie auf den naechsten Monatsersten berechnt.
                            WartungAmErsten=0

629 30.04.13 WINIFW: In der IFW-Listenuebersicht kann jetzt eine HTML-Statuszeile eingeblendet werden.

                            Die HTML Datei liegt in binhtml/ifwgui_listframe_statusbar.htm
                            Die Hoehe der Statuszeile wird mit dem HTML Kommando window.external.SetWindowSize() gesetzt. Mit der Hoehe 0 ist die Statuszeile deaktiviert.
                            Um sie zu aktivieren, muss das Kommando window.external.SetWindowSize() mit einer Hoehe groesser 0 angewendet werden.
                            Daten fuer die HTML-Statuszeile koennen mit dem HTML Kommado window.external.ListViewGetData() geladen werden.
                 WINIFW:   In der IFW-Maske kann jetzt eine HTML-Statuszeile eingeblendet werden.
                            Die HTML Datei liegt in binhtml/ifwgui_maskframe_statusbar.htm
                            Die Hoehe der Statuszeile wird mit dem HTML Kommando window.external.SetWindowSize() gesetzt. Mit der Hoehe 0 ist die Statuszeile deaktiviert.
                            Um sie zu aktivieren, muss das Kommando window.external.SetWindowSize() mit einer Hoehe groesser 0 angewendet werden.
                            Daten fuer die HTML-Statuszeile koennen mit dem HTML Kommado window.external.ListViewGetData() geladen werden.
                            In der IFW-Maske ist beim Kommando ListViewGetData() nur Modus 8 und 9 anwendbar.
                 API_MFRM: Neues HTML-Kommando ListViewGetData()
                             ListViewGetData( winHandle, Modus)
                           Modus:
                            1: StatuslineAnzahl
                            2: StatuslineSumme
                            3: m_iStatuslineItemIndex;m_dwStatuslineMax;m_bStatuslineEstimated;m_dwStatuslineSelCnt;m_dwStatuslineCache
                            4: m_dwStatuslineCount;m_dStatuslineTotal
                            5: m_bMode; isOnlySelected; m_bDoNewLine; m_bNewLineExist; m_iWinVirtualUnitsMode
                               (m_bMode des Listviews: 0 Normal, 1 Records gecacht: beim Anzeigen laden, 2 win virtuell: nur der Anzeigebereich geladen, 3 win virtuell: wie 1, aber sort wird selbst gemacht)
                               (m_iWinVirtualUnitsMode: WinVirtualUnitsMode_NONE 0, WinVirtualUnitsMode_DB 1, WinVirtualUnitsMode_ATTRIB 2, WinVirtualUnitsMode_SELECT 3)
                            6: m_rcd.m_bIndex;         //Indexpfad fuer den das gilt
                               m_rcd.m_bFilterMode;    //0 aus, 1 Indexfilter, (2 linearer Filter)
                               m_rcd.m_dProzentStart;  //bei Filter evt. >   0.0
                               m_rcd.m_dProzentEnd;    //bei Filter evt. < 100.0
                               m_rcd.m_dwAnzahlDbAll;  //Anzahl aller Saetze in der Datenbank
                               m_rcd.m_dwAnzahlDbInx;  //Anzahl Saetze in dem Indexpfad der Datenbank
                               m_rcd.m_dwStartListe;   //geschaetzte Startnummer der Liste, wenn kein Filter, dann 0
                               m_rcd.m_dwAnzahlListe   //geschaetzte Anzahl, wenn kein Filter, dann m_dwAnzahlListe = m_dwAnzahlInx
                            7: APICOM_columnToolTipANSI -> Tooltip Text wie im Listenkopf auf einer Spalte
                            8: DfHandle32 -> Datenbanktabellenhandle; AktBrowseNr; aktuelleZeile; RecAdr; Datenbanktabellenname (in Kleinbuchstaben)
                            9: Record Daten laden ->  RecAdr; PrimKeyFeldNummer; PrimKey
                 API_MFRM: HTML-Kommando CloseWindow() erweitert:
                            Bezieht sich das Fenster auf eine HTML-Statuszeile, so wird das Fenster nicht geschlossen sondern nur der Fokus 
                            auf das Hauptfenster uebergeben.
        03.05.13 WINSERP:  Das Oeffnen von seriellen Schnittstellen groesser als COM9 korrigiert.
        06.05.13 API_MFRM: Neues HTML-Kommando SetSysInternalsObject()
                            SetSysInternalsObject( Paramater, Kommando);
                           Kommando:
                            1: Zuweisung des IFW Standarddruckers, es wird der Windows Standarddrucker nach dem Kommando zurueckgegeben
                            2: Reinit des TapiDevices, neu lesen der Tapi Eintraege aus der user.ini
                           Hinweis:
                            Wird ein ungueltiges Kommando angegeben, wird "*error* unknow command" zurueckgegeben.
                 API_MFRM: Neues HTML-Kommando EnumTapiDevice()
                             EnumTapiDevice( winHandle)
                           Es wird eine mit CR/LF getrennte Liste der gefundenen TAPI Devices zurueckgegeben.
                           Eine Zeile besteht aus drei Werten die mit TAB getrennt sind:
                           TAPI (fixer Text) TAB lfd Nummer TAB TapiDeviceName

630 10.05.13 DVAPI32: David Kalenderabgleich erweitert:

                           - Es koennen jetzt Kalendereintraege anderer Benutzer abgegelichen werden, wenn im David die Zugriffsrechte vorhanden sind
                           - Neuanlage von Eintraegen aus dem David im IFW sind mit korrekte Umlauten in der Betreffzeile
                           - Es werden nur noch David Kalendereintraege im angegebenen Zeitraum beruecksichtigt.
                           Mit dem Erweiterten Benutzerlogbuch (Flag ~) werden die Abgleichaktionen und Fehler im Benutzerlogbuch mitgeschrieben.
                           Moegliche Fehlercodes (in Klammer sind die internen Fehlernummern des erweiterten Benutzerlogbuchs):
                            +++++++++++ Initialisierungsfehler 100 + 400 ++++++++++++++++++
                            -500 (-100) Erstellen der API Instanz fehlgeschlagen
                            -501 (-101) David Login fehlgeschlagen
                            -502 (-102) Die CLSID konnte nicht geladen werden
                            -503 (-103) Kalender Archiv konnte nicht geladen werden
                            -504 (-104) DAVID-API ist nicht initialisiert
                            -505 (-105) David Liste der User nicht gefunden
                            -506 (-106) David User in Liste nicht gefunden
                            -507 (-107) David User Kalenderarchiv nicht gefunden
                            -508 (-108) David User Kalenderarchiv keine Rechte
                            +++++++++++ Synchronisierungs Fehler 200 + 400 ++++++++++++++++
                            -600 (-200) Laden der DVL Datei fehlgeschlagen
                            -601 (-201) Laden der laufenden Nummer aus IFW fehlgeschlagen
                            -602 (-202) Laden des Subjects aus David fehlgeschlagen
                            -603 (-203) Laden aller Items aus dem Archiv fehlgeschlagen
                            -604 (-204) Laden des ItemCounts fehlgeschlagen
                            -605 (-205) Laden des Items fehlgeschlagen
                            -606 (-206) Laden des Bodytextes fehlgeschlagen
                            -607 (-207) Item konnte anhand der ID nicht gefunden werden
                            -608 (-208) BodyText des Items konnte nicht geladen werden
                            -609 (-209) UserObject des Accounts konnte nicht geladen werden
                            -610 (-210) DavidUSer != IFW Benutzer => keine Sync
                            -611 (-211) Benutzername nicht ladbar
                            -612 (-212) Parameterangaben ungueltig
                            -613 (-213) Laden des Items fehlgeschlagen (transfer auf Kalendereintrag)
                            -614 (-214) Laden des Items fehlgeschlagen (von ID Item2 auf Item)
                            +++++++++++ Release Fehler 900 + 400 ++++++++++++++++++++++++++  
                            -1300(-900) Archiv konnte nicht released werden
                            -1301(-901) App konnte nicht releaed werden
                            -1302(-902) Account konnte nicht released werden
        15.05.13 API_MFRM: HTML-Kommando ReadFile( WinHandle, DateiName) erweitert
                           - Enthaelt der DateiName den Prefix #BASE64#, so werden die Daten BASE64-codiert gelesen.
        17.05.13 API_MFRM: HTML-Kommando Readprofile() korriegiert:
                           - Bei den Modis 2 Master, 3 IfwUser, 4 IfwStation, 6 IfwCoreBase, 7 IfwCoreClient, 8 file wurder der Defaultwert nicht beruecksichtigt.

631 22.05.13 DVAPI32: David Kalenderabgleich korrigiert:

                           - Es wird die maximale Subject Laenge von David beruecksichtigt (95 Zeichen). Es wird immer genug Platz fuer die IFW-ID im Subject reserviert.
                           - Beim Schliessen der DAVID-API wird das Logoff Kommando zusaetzlich angewendet.
                           - Bei den David eintraegen wird ueber einen Zeitfilter das Terminstartdatum auf den Intervall eingegrenzt
        27.05.13 DVAPI32:  David Kalenderabgleich erweitert:
                           - Fehler -614 (-214) entfernt, es wird nur noch ein Eintrag im erweiterten Logbuch geschrieben.
                           - Null-Pointer trotz erfolgreichem Kommando beruecksichtigt.

632 29.05.13 WINIFW: Verarbeitung von IFW-Tabellen mit einem Speicher bis zu 1GB aktiviert (Linker Option /LARGEADDRESSAWARE).

        31.05.13 WINIFW:   Windowslogin mit Loginnamen mit Umlauten aktiviert. Dies betrifft auch das Passwort. Sollten Umlaute im
                           Passwort vorhanden sein, so muss es vom Supervisor geloescht und neu eingegeben werden.
                 WINIFW:   Wird bei einer Bestellung ein Stuecklisteartikel aufgeloest, so wird die Positionsanzeige sofort aktualisiert.
                 WINIFW:   Die Javascriptkonsole wird beim Schliessen mit dem [X] Button nicht mehr zerstoert, sondern nur noch unsichtbar gemacht
                           (Schutz vor versehentlichem Loeschen der Javascript-Variaben).
        05.06.13 WINIFW:   Speicherverwaltung >2GB in Verbindung mit der Linker Option /LARGEADDRESSAWARE korriegiert (Einloggen im IFW Klassisch war nicht mehr meoglich)

633 07.06.13 WINIFW: In Fliesstexten steht jetzt mit Rechtklick die Option "Fixer Zeichensatz" (Buchstaben mit gleicher Breite) und "Leerzeichen anzeigen" zur Verfuegung.

        10.06.13 DFPDF:    Moeglichkeit der Benutzerfelderverwaltung in der Benutzerliste implementiert (Dateien im SYSDAT).
        13.06.13 PRGLOAD:  Neues Kommando GetItem()
                            GetItem( Feldnummer);
                            GetItem( Feldnummer, Feldindex);
                           Gibt den Feldinhalt aus Feld "Feldnummer" in der Variable Vt zurueck.
                           Ist das Feld "Feldnummer" nicht vorhanden wird der Fehlerwert "*err*,Feldnummer,Feldname" in Vt zurueckgegeben.
                           Kommando SetItem() kann jetzt auch mit Variablen Feldnummern aufgerufen werden

634 20.06.13 PRGLOAD: Kommando SetItem() bei Zahlenfelder korrigiert.

                 DFIMP:    Beim Einlesen von Daten in leere temporaere Dateien, wird beim Ueberspringen von Datensaetzen der erste gespeicherte Satz nicht mehr geloescht.
        02.07.13 PRNLIB:   Angaben von '/' (Slashs) im Dateinamen von DVL und ITB Formulare werden beim Laden zu '\' (backslashs) umgewandelt.

635 04.07.13 API_MFRM: Kommando ReadProfile() und WriteProfile() erweitert:

                            Wird ein Dateipfad oder Name mit fuehrendem ".\", "..\", "./", oder "../"  angegeben, so wird die Datei abhaengig vom Ort des aufrufenden Programms
                            gesucht. Ansonsten wird vom Ort des IFW-Verzeichnisses gesucht (wie bisherige Funktion).
        30.07.13 DFPDF:    In den Anhangsdatenbanken wird jetzt fuer das Feld 160 (Kategorie) nach der F1 Auswahldatei "nnnnnnnak" im INFODAT Verzeichnis gesucht.
                           Bisher wird nur fuer das Feld 46 (Status) die F1 Auswahldatei "nnnnnnax" gesucht.

636 31.07.13 DFED3LIB: Bei Massenaenderung von benutzerdefinierten Felder die Optionen zum Werte wechseln und Variablen setzen A B C D korrigiert.

        01.08.13 ITBPRG:   String.strtoupper() und String.strtolower() aktiviert.
                            Alle Zeichen im String werden auf klein oder gross umgewandelt. Umlaute ae oe ue ss werden unterstuetzt.
                 WINIFW:   Der Requester fuer den Fortschrittsbalken wird jetzt fuer jeden Anzeigeart separat geoeffnet,
        06.08.13 FFFIRUMS: Bei der Statistik Monatsberechnung wird jetzt bei allen Belegobjekten in der Windowsversin ein Fortschrittsbalken angezeigt.

637 06.08.13 FAKTEDIT: Beim Bearbeiten von OP's, Verbindlichketien und Nachrichten wird jetzt eine seaparate Ausgangsinstanz der Datenbank verwendet.

                           das verhindert eine Kollision (error -219), wenn waehrend dem Schreiben mit der Masu der Menuepunkt "anschauen/ausdrucken" aufgerufen und
                           die Tabelle wieder geschlossen wird.
                 WINIFW:   Auf die ifwgui_* Framework HTML Dateien wird nur noch zugegriffen, wenn sie vorhanden sind (ggf. oeffnete sich der IE der Meldung, dass die Seite nicht gefunden wurde).
                 FAKTEDIT: Bei Reparaturen wird bei Kennzeichen S nicht mehr nach "Stornieren" gefragt. Bei Kennzeichen S wird die Reparatur nicht gebucht. Das Kennzeichen kann
                           fuer einen Kostenvoranschlag verwendet werden.
                 PRGLOAD:  Bei Gosub Anweisungen werden jetzt bei erweiterten Logbuch der Start und das Ende jedes Makroaufrufs mitgeschrieben.
                 PINBOARD: Waehrend des Aufrufs von Systemmakro $83 wird eine Sperrlevel fuer eingehende Nachrichten gesetzt.
        09.08.13 PRGLOAD:  Kommando NewMessage() mit Makroaufruf korrigiert.

638 09.08.13 API_MFRM: HTML-Kommando GetSysInternalsObject() um Modus 0x0002 und 0x0004 erweitert

                             GetSysInternalsObject( Objektname, Modus);
                           Modus:
                             0x0001: Ausgabe der aktuell zugewiesenen Rechte (220)
                             0x0002: Ausgabe Felder in der Datenbank (221)
                             0x0004: Ausgabe der Suchpfade in der Datenbank (222)
       12.08.13  API_MFRM: HTML-Kommando ListViewGetData() erweitert um Modus 10, Modus 8 um RecordChangeCounter erweitert
                             ListViewGetData( winHandle, Modus)
                           Modus:
                            1: StatuslineAnzahl
                            2: StatuslineSumme
                            3: m_iStatuslineItemIndex;m_dwStatuslineMax;m_bStatuslineEstimated;m_dwStatuslineSelCnt;m_dwStatuslineCache
                            4: m_dwStatuslineCount;m_dStatuslineTotal
                            5: m_bMode; isOnlySelected; m_bDoNewLine; m_bNewLineExist; m_iWinVirtualUnitsMode
                               (m_bMode des Listviews: 0 Normal, 1 Records gecacht: beim Anzeigen laden, 2 win virtuell: nur der Anzeigebereich geladen, 3 win virtuell: wie 1, aber sort wird selbst gemacht)
                               (m_iWinVirtualUnitsMode: WinVirtualUnitsMode_NONE 0, WinVirtualUnitsMode_DB 1, WinVirtualUnitsMode_ATTRIB 2, WinVirtualUnitsMode_SELECT 3)
                            6: m_rcd.m_bIndex;         //Indexpfad fuer den das gilt
                               m_rcd.m_bFilterMode;    //0 aus, 1 Indexfilter, (2 linearer Filter)
                               m_rcd.m_dProzentStart;  //bei Filter evt. >   0.0
                               m_rcd.m_dProzentEnd;    //bei Filter evt. < 100.0
                               m_rcd.m_dwAnzahlDbAll;  //Anzahl aller Saetze in der Datenbank
                               m_rcd.m_dwAnzahlDbInx;  //Anzahl Saetze in dem Indexpfad der Datenbank
                               m_rcd.m_dwStartListe;   //geschaetzte Startnummer der Liste, wenn kein Filter, dann 0
                               m_rcd.m_dwAnzahlListe   //geschaetzte Anzahl, wenn kein Filter, dann m_dwAnzahlListe = m_dwAnzahlInx
                            7: APICOM_columnToolTipANSI -> Tooltip Text wie im Listenkopf auf einer Spalte
                            8: DfHandle32 -> Datenbanktabellenhandle; AktBrowseNr; aktuelleZeile; RecAdr; Datenbanktabellenname (in Kleinbuchstaben); RecordChangeCounter
                            9: Record Daten laden ->  RecAdr; PrimKeyFeldNummer; PrimKey
                            10:Spalteninformation laden -> AktListNr;AnzahlSpalten; pro Spalte -> lfdNr;Text;xPos;Breite;Flags;ExtFlags;Feldnummer;Attributname;IndexDaten;Verweisfeldnummer; DbName Handle FileName TitelName
                            11:Listenuebersichten laden -> AnzahlUebersichten; pro Uebersicht -> nr;Titel
       15.08.13  DFED3LIB: Global benutzerdefinierte Felder werden unter "meine Daten" als Erstes angezeigt.
       16.08.13  WINIFW:   Die Statuszeile in der Datenbankliste wird jetzt bei dirketer Sucheingabe sofort korrekt aktualisiert.
       19.08.13  WINIFW:   Der Menuepunkt "IFW Handbuch" wird nicht mehr supportet und ist geloescht.
       20.08.13  PRGLOAD:  Makrokommando AppendBrowseItem() erweitert.
                            - Wird vor die anzufuegende Feldnummer ein Minuszeichen '-' gesetzt, so wird eine vorhandene Spalte mit der Feldnummer geloescht.
       22.08.13  FFRECH:   Die Funktion "Von Auftrag Abschlagsrechnung schreiben" entscheidet jetzt anhand des Steuermerkmals im Artikelstamm ob eine Brutto oder Netto Ausweisung des Abschlagsbetrags vorgenommen wird.
                           Bisher war er immer Brutto

639 22.08.13 PRGLOAD: Kommando ConvertIcsvToImportCsv() Modus 0x0400 korrigiert:

                           Fuer Hierachische Ebenen bei der XML Konvertierung die keine $XMLTAG enthalten werden jetzt keine schliesende XML-Tags mehr ausgegeben.
                           Bisher waren solche Ebenen bei der XML-Ausgabe nicht korrekt beruecksichtigt.
       26.08.13 PRGLOAD:   Neues Kommando SetIFWRestart()
                             SetIFWRestart( Modus);
                           Fuehrt zu einem Neustart des IFW's.
                           Modus:
                            0: Neustart aus
                            1: Bei einem Makro Programmfehler IFW-Neustart
                            2: Bei einem Makro Abbruch IFW-Neustart
                            3: Bei einem Makro Programmfehler oder einem Abbruch IFW-Neustart
                            4: Sofortiger IFW-Neustart
       26.08.13 PRGLOAD:   Neue Kommandos SaveVarGlobalAll() und RestoreVarGlobalExclude()
                           Mit den beiden Kommandos koennen die globalen V Variablen des IFW's vor Veränderung durch ein Makro geschuetzt werden.
                           dazu wird bei Programmstart als erstes Kommando SaveVarGlobalAll() anzugeben. Beim beenden des Makros werden dann
                           automatisch alle Variablen wieder hergestellt. Will man mit dem Makro Rueckgabewerte realisieren, so kann man
                           zusaetzlich das Kommando RestoreVarGlobalExclude() am Ende des Makros anwenden.
                             SaveVarGlobalAll()
                           SaveVarGlobalAll speichert alle globalen V Variablen des IFW's in die Makroinstanz ab.
                           Es werden alle Varibalen V... Vd... Vt... Vp... Vadr und Vn gepeichert.
                           Bei Beendigung des Makros werden automatisch alle gespeicherten Variablen zurueckgeholt. SaveVarGlobalAll kann nur
                           einmal angewendet werden.
                             RestoreVarGlobalExclude( ExludeVariablenliste)
                           RestoreVarGlobalExclude holt alle Variablen zurueck. RestoreVarGlobalExclude kann nur einmal nach Anwendung von
                           SaveVarGlobalAll ausgefuehrt werden. Nach RestoreVarGlobalExclude steht SaveVarGlobalAll wieder zur Verfuegung.
                           Die ExludeVariablenliste besteht aus einer Liste von V Variablen. Die Variablen sind mit Strichpunkt ';' zu trennen.
                           Beispiel:
                           In Vt Vt10 und Vd sollen Werte vom Programm zurueckgegeben werden. Alle anderen Variablen sollen den Zustand vor dem 
                           Aufruf des Programm erhalten -> "Vt;Vt10;Vd".
       26.08.13 PRGLOAD:   Neue Kommandos SaveVarLocalInclude() und RestoreVarLocal()
                           Mit den Kommandos kann man sicherstellen, dass innerhalb eines Makros beim Aufruf einer Systemfunktion wie z.B. EditFile,
                           die im Makro verwendeten Variablen unveraendert bleiben. Vor Aufruf der Systemfunktion kann man mit SaveVarLocalInclude
                           die gewuenschten Variablen sichern und nach dem Aufruf mit RestoreVarLocal wieder herstellen.
                             SaveVarLocalInclude( IncludeVariablenliste)
                           Speichert all in der IncludeVariablenliste angegebenen V Variablen im Makro als Backup ab. Die variablen werden mit Strichpunkt ';'
                           getrennt angegeben. Um zum Beispiel Vt, Vt10 und Vd zu sichern gibt man als IncludeVariablenliste "Vt;Vt10;Vd" an. Es
                           kann immer nur ein Satz von Variablen gesichert werden. Erneute Aufrufe von SaveVarLocalInclude() ueberschreiben den Backup 
                           der zuvor gesicherten Variablen.
                             RestoreVarLocal()
                           Holt die mit SaveVarLocalInclude() gesicherten Variablen zurueck. Nach Aufruf von RestoreVarLocal() ist der Backup leer.
                           RestoreVarLocal() kann immer nur einmal nach SaveVarLocalInclude() verwendet werden.
                           RestoreVarLocal wird NICHT automatisch bei Makroende aufgerufen.

640 28.08.13 FAKTMAIN: Neuer INI Schalter IfwTabelleInNeuemFensterOeffnen in der Sektion [System]

                            ;IfwTabelleInNeuemFensterOeffnen: Wert 0/1. Default 1.
                            ;Wird eine IFW Tabelle ausgegeben, so wird sie in einem neuen Fenster geoeffnet.
                            ;Mit dem Wert 0 wird die Tabelle innerhalb des Datenbankfensters geoeffnet. Funktion wie bis Rev. 639
       29.08.13 API_MFRM:  Neues HTML-Kommando SetWindowBorder()
                             SetWindowBorder( winHandle, mode, left, top, right, bottom);
                           Das Kommanto kann nur auf dem IFW-Hauptfenster (ifwmain.htm) angewendet werden.
                           Es setzte die Raender die beim Oeffnen von Fenstern im IFW bezogen auf das Hauptfenster eingehalten werden.
                           Initial sind die Raender auf 0. Der Wert "mode" ist immer 0.
       03.09.13 DFIMP:     Stackbelastung des Imports von 128k auf 28k reduziert. Damit sind hoehere Verschachtelungsgrade moeglich (maximal 100).
       04.09.13 PRJPRM:    Die Revisionen der PARAxx Masken werden jetzt automatisch verwaltet. In dem Verzeichnis MASKEN entstehen jetzt Dateien mit PARAxx.Vx.MSB

641 09.09.13 PRGLOAD: Makrokommando AppendBrowseItem() um 5 neue Parameter erweitert (Link-Parameter).

                            AppendBrowseItem( NachFeldnummerEinfügen, Feldnummer, Text, Länge, Suchpfad, Kennzeichen, Zusatzdaten, Zwischentext, Nachladefeldnummer, LinkModus, LinkQuellFeld, LinkZielTabelle, LinkZielFeld)
                            AppendBrowseItem( NachFeldnummerEinfügen, Feldnummer, Text, Länge, Suchpfad, Kennzeichen, Zusatzdaten, Zwischentext, Nachladefeldnummer, LinkModus, LinkQuellFeld, LinkZielTabelle, LinkZielFeld, LinkZielFeld2)
                           Mit den Link-Parameter koennen Felder aus anederen Datenbanktabellen abegerufen werden.
                           Das Kennzeichen 0x0020 muss gesetzt sein.
                            LinkModus       -> immer 1
                            LinkQuellFeld   -> Feld aus der aktuellen Datenbanktabelle das fuer den Zugriff verwendet werden soll (in der Regel 32).
                            LinkZielTabelle -> Name der Zieldatenbanktabelle, aus der ein Feld angezeigt werden soll
                            LinkZielFeld    -> Feld in der Zieldatenbanktabelle, das dem LinkQuellFeld entsprechen muss. Es muss ein Suchpfad mit dem Feld vorhanden sein.
                            LinkZielFeld2   -> 2. Feld im Suchpfad der Zieldatenbanktabelle. Dieser Wert ist optinonal und brauch nicht angegeben werden.
                VIDF:      IFW-Datenbanktabellen mit Nachladespalten aus bis zu 4 verschiedenen Datenbankverbindungen (bisher 2) werden jetzt schneller dargestellt.
                IFWTAB:    Kommando System.sysIeVersion() und  System.dbHandle32() korrigiert.
       12.09.13 WINIFW:    Beim Drucken wird die globale IE Einstellung "Hintergrundbild drucken" korrekt zurueckgestellt.
       17.09.13 PRGLOAD:   Kommando Printfile erweitert:
                           Wird beim Drucken von IFW-Tabellen (Dateinamen mit *.it?) mit Kommando Printfile die Option 0x400000 fuer "Reqester einblenden" und die Option 0x80000 fuer "immer als IFW-Tabelle ausfuehren" angegeben,
                           so wird zusätzlich die Ausgabeoption "nur Datei" eingeblendet und sofort auch ausgewaehlt.
                           Bisher war die Option 0x400000 ohne 0x000200 nicht erlaubt und wurde ignoriert.

642 23.09.13 API_MFRM: Neues HTML-Kommando FileDialog()

                             FileDialog( winHandle, Modus, Pfad, Dateimaske);
                           Das Kommando oeffnet einen Windows File Dialog zum Laden oder Speichern einer Datei.
                           Modus:
                            0 -> Laden einer Datei
                            1 -> "Speichern als" einer Datei
                           Pfad:
                            Dateinamensvorgabe, Pfadangabe in welchem Pfad der Dialog oeffnen soll. Optionen bei der Pfadangabe:
                            ".\"  -> Pfad relativ zum aufgerufenen Modul
                            "..\" -> Pfad relativ zum aufgerufenen Modul
                            ":" enthalten oder kein "\" zu Beginn: -> Pfad relativ zum IFW-Pfad
                           Dateimaske:
                            Auswahl der Dateiendungen. Angabe wie z.B. "*.xml".
                            Fuer genauere Angaben sind diese mit dem Pipe-Zeichen "|" zu trennen. Dabei werden die Angaben immer paarweise verarbeitet.
                            Z.B "Chart Files (*.xlc)|*.xlc|Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*" ->
                            ergibt eine Auswahl von "Chart Files","Worksheet Files","Data Files" und "All Files".
                            Siehe auch Dokumentation von Microsoft "CFileDialog".
       23.09.13 FFBELPRU:  Das Systemmakro 71 erweitert:
                           -Wird ein Rueckgabewert zwischen 100 und 199 zurueckgegeben, wird die Belegbearbeitung geoeffnet und der Rueckgabewert modulo 100 im Ergenisfeld gepeichert.
                           -Das Programm wird zusaetzlich vorm Speichern des Belegs aufgerufen (Programmname 046000.$71). Rueckgabewerte: 0 nichts machen; 1 Autospeichern ohne Benutzereingriff; 2 Benutzereingriff Beleg oeffnen; >2 nicht speichern.
       26.09.13 API_MFRM:  HTML-Kommando ListViewGetData() erweitert um Modus 12
                             ListViewGetData( winHandle, Modus)
                           Modus:
                            1: StatuslineAnzahl
                            2: StatuslineSumme
                            3: m_iStatuslineItemIndex;m_dwStatuslineMax;m_bStatuslineEstimated;m_dwStatuslineSelCnt;m_dwStatuslineCache
                            4: m_dwStatuslineCount;m_dStatuslineTotal
                            5: m_bMode; isOnlySelected; m_bDoNewLine; m_bNewLineExist; m_iWinVirtualUnitsMode
                               (m_bMode des Listviews: 0 Normal, 1 Records gecacht: beim Anzeigen laden, 2 win virtuell: nur der Anzeigebereich geladen, 3 win virtuell: wie 1, aber sort wird selbst gemacht)
                               (m_iWinVirtualUnitsMode: WinVirtualUnitsMode_NONE 0, WinVirtualUnitsMode_DB 1, WinVirtualUnitsMode_ATTRIB 2, WinVirtualUnitsMode_SELECT 3)
                            6: m_rcd.m_bIndex;         //Indexpfad fuer den das gilt
                               m_rcd.m_bFilterMode;    //0 aus, 1 Indexfilter, (2 linearer Filter)
                               m_rcd.m_dProzentStart;  //bei Filter evt. >   0.0
                               m_rcd.m_dProzentEnd;    //bei Filter evt. < 100.0
                               m_rcd.m_dwAnzahlDbAll;  //Anzahl aller Saetze in der Datenbank
                               m_rcd.m_dwAnzahlDbInx;  //Anzahl Saetze in dem Indexpfad der Datenbank
                               m_rcd.m_dwStartListe;   //geschaetzte Startnummer der Liste, wenn kein Filter, dann 0
                               m_rcd.m_dwAnzahlListe   //geschaetzte Anzahl, wenn kein Filter, dann m_dwAnzahlListe = m_dwAnzahlInx
                            7: APICOM_columnToolTipANSI -> Tooltip Text wie im Listenkopf auf einer Spalte
                            8: DfHandle32 -> Datenbanktabellenhandle; AktListNr; aktuelleZeile; RecAdr; Datenbanktabellenname (in Kleinbuchstaben); RecordChangeCounter
                            9: Record Daten laden ->  RecAdr; PrimKeyFeldNummer; PrimKey
                            10:Spalteninformation laden -> AktListNr;AnzahlSpalten; pro Spalte -> lfdNr;Text;xPos;Breite;Flags;ExtFlags;Feldnummer;Attributname;IndexDaten;Verweisfeldnummer; DbName Handle FileName TitelName
                            11:Listenuebersichten laden -> AnzahlUebersichten; pro Uebersicht -> nr;Titel
                            12:erweiterte Spalteninformation laden -> AktListNr;AnzahlSpalten; pro Spalte -> lfdNr;Text;xPos;Breite;Flags;ExtFlags;Feldnummer;Attributname;IndexDaten;Verweisfeldnummer; DbName Handle FileName TitelName; LinkModus; LinkQuellFeld; LinkZielTabelle; LinkZielFeld; LinkZielFeld2
       27.09.13 FAKTMAIN:  INI Schalter ErzeugeCTempInEigeneDateien in der Sektion [System] um Wert 2 erweitert.
                           ;ErzeugeCTempInEigeneDateien: Wert 0/1. Default 0.
                           ;Mit dem Wert 2 werden alle Dateiausgaben mit c:\temp im Pfad in das temporaere Windowsverzeichnis unter IfwTemp gespeichert.
                           ;Mit dem Wert 1 werden alle Druckausgaben in Dateien mit dem Pfad c:\temp automatisch
                           ;in den Pfad "Eigene Dateien\IfwTemp" gepeichert.
                           ;Mit dem Wert 0 bleiben die Dateien im Pfad c:\temp
                           ;Zur Ausgabe der Datei in den vom eingelogten Benutzer abhaengigen Pfad "Eigene Dateien\IfwTemp"
                           ;kann die Variable %TEMP% im Ausgabepfad angegeben werden. Diese Ausgaben erfolgen
                           ;immer in den Pfad "Eigene Dateien\IfwTemp", unabhaengig der Einstellung 
                           ;des Schalters ErzeugeCTempInEigeneDateien
       07.10.13 PRGLOAD:   Beim Starten eines IFW-Makros wird im Logbuch ein start und end Eintrag geschrieben.

643 07.10.13 DOCUSTORE: Bei Versenden von PDF-Emails wird das Dokument jetzt auch an archivierte Datensaetze angehaengt, falls die Ausgabe aus einem archivierten Beleg erfolgt.

       08.10.13 DVAPI32:   David Kalenderabgleich, Schutzverletzung bei Serienterminen bearbeitet. Item-Umwandlung MessageItem -> CalendarItem konsequent implementiert.
       14.10.13 PRJPRM:    Bei der Revisionsverwaltung der PARAxx Masken werden jetzt neue Felder leer initialisiert.
       15.10.13 PRGLOAD:   Kommando PrintFile() und PrintFileId() erweitert:
                             Modus 0x4000000: Die Dateiumleitung bei gehalterner Shift-Taste wird deaktiviert.
                API_MFRM:  HTML-Kommando ExecuteProgramAsync() korrigiert:
                           Verwaltung der asynchronen Rueckgabewerte war bei hoeherer Datendichte fehlerhaft (Verwaltung des CallBack-Stack). Fehler behoben.
       16.10.13 ITBPRG:    String.strtoupper() und String.strtolower() korrigiert. Die Funktion war vertauscht implementiert.
                PRGLOAD:   Kommando SearchExt() um Modus 64 erweitert
                             SearchExt( Modus)
                             SearchExt( Modus, "Programmname")
                             SearchExt( Modus, "Programmname", "Sprungziel")
                             SearchExt( Modus, , "Sprungziel")
                           Es hat die gleiche Funktion wie Search(). Es Muss aber ein Funktionsmodus angegeben werden
                           Modus:
                             Modus 32:  Kein Benutzerabbruch moeglich
                             Modus 64:  Der Schnellsuchmodus wird auch bei aktiver Summierung erzwungen. Die Summe wird dabei nicht gebildet und ist somit inkorrekt.
                                        Nur zur Verwendung von internen Suchlaeufen, deren Ergebnis nicht vom Anwender in der Listenuebersicht angezeigt werden.
       25.10.13 API_MFRM:  HTML-Kommando ExecuteProgram() und ExecuteProgramAsync() angepasst:
                             Ist kein User im IFW eingelogt, wird kein Makro verarbeitet und als Wert "*blocked*" zurueckgegeben.

644 06.11.13 FAKTMAIN: Neuer INI Schalter BenutzerlogbuchSchreibenMillisekunden in der Sektion [System]

                            ;BenutzerlogbuchSchreibenMillisekunden: Wert 0/10000. Default 4000.
                            ;Das Benutzerlogbuch verzeichnet die einzelnen Aktionen des Benutzers im Verzeichnis TEMPDAT
                            ;Die Eintraege werden dort permanent in die Datei auf dem Server geschrieben.
                            ;Um die Serverlast zu veringern koennen die Eintraege im IFW gepuffert werden und zyklisch in die Datei auf
                            ;dem Server geschrieben werden. Mit dem Wert BenutzerlogbuchSchreibenMillisekunden kann der Zyklus gesteuert werden.
                            ;Mit dem Wert 0 werden die Eintraege sofort in die Datei gespeichert.
                            ;Vorteil: Chronologisch korrekte Eintraege
                            ;Nachteil: Hohe Serverlast, langsames IFW.
                            ;falls mehrere Prozesse gleichzeitig in die Datei schreiben.
                            ;Wert > 0 gibt den Zeitintervall an, wenn die Daten im IFW zuerst gepuffert werden. Ein empfohlener Wert ist 4000 Millisekunden.
                            ;D.h. alle 4 Sekunden wird der Inhalt an die Logbuchdatei angehaengt.
                            ;Vorteil: Niedrige Serverlast, schnellere IFW-Verarbeitung.
                            ;Nachteil: Eintraege entstehen blockweise, die Vorgaenge sind bei mehreren Prozessen nicht Zeitgerecht nacheinander. Bei einem Systemabsturz sind ggf. die letzten Eintraege nicht enthalten.
       15.11.13 DFEDLIB:   Rechtekonfiguration in der Verbindungsliste korrigiert. Bisher war nur Aendern und Drucken moeglich. Jetzt wird nur Loeschen und Neueingabe entfernt.
                DFLIB:     Datenbank Handle-Vergleich von Systemtabellen (Ausdruck/Makro ...) korrigiert.
       06.08.13 FAKTEDIT:  Beim Bearbeiten von OP's, Verbindlichketien und Nachrichten den Eingabefokus und Datensatzfokus korrigiert.
                           Zusaetzlich bleibt beim Veraendern der Feldfokus vorhanden, solange die Auswahlliste nicht verlassen wird.
       28.11.13 FAKTMAIN:  Fehlermeldung -224 beim Hauptmenuemakros und Beenden des Makros mit ESC beseitigt (seit Rev. 543)

645 23.01.14 IFWTAB: Kann beim Laden einer IFW-Tabelle nicht alle Zeilen gelesen werden, so wird eine Warnmeldung ausgegeben.

                PROGLOAD:  Kommando ConvertIcsvToImportCsv() und ConvertIcsvToHtml() um Modus 0x1000 erweitert.
                           Modus 0x1000: Wird beim Laden der IFW-Tabelle ein Fehler gemeldet, so wird die Funktion mit einer Fehlermeldung abgebrochen.
                                         Ist mit Kommando SetAbort() eine Sprungstelle gesetzt, so diese angesprungen anstatt dass eine Fehlermeldung angezeigt wird.
                                         Ohne Modus 0x1000 wird kein Fehler angezeigt und das Makkro beendet, falls keine Sprungstelle mit SetAbort() gesetzt ist (bisheriges Verhalten)
                FFARTPR:   Archivierte Ersatzartikel werden jetzt korrekt beruecksichtigt. Ist ein Ersatzartikeleintrag oder ein Artikel aus der Ersatzliste
                           im Archiv oder Papierkorb, so wird er nicht mehr beruecksichtigt.
                           Es ist zu beachten, dass Ersatzartikel wenn sie in mehreren Ersatzlisten eingetragen sind nur der erste Eintrag geprueft wird.
                           Bei der Einstellung "Auswahlliste auch beim Ersatz anzeigen" wird immer nur der erste Eintrag aus der Ersatzliste geprueft. Ist dieser archiviert
                           oder im Papierkorb, so wird keine Ersatzliste geoeffnet.
       24.01.14 API_MFRM:  HTML-Kommando FileDialog( winHandle, Modus, Pfad, Dateimaske) fuer XP-Rechner erweitert.
                           Die Verzeichnisvorgabe "Pfad" wird jetzt bei XP-Rechnern erkannt, auch wenn kein Dateiname angegeben ist.
                           Bisher wurde der Dialog nicht geoeffnet und kein Dateiname zurueckgegeben.
                           Mit Pfad kann auch zuseatzlich eine Dateinamensvorgabe im Dialog vorgenommen werden.
       25.01.14 PRNLIB5:   Vn Array bei grossen Zeilenanzahl (>100000) Geschwindigkeit optimiert (index-Array eingefuehrts). Gilt auch fuer IFW-Tabellenauswertungen.

646 27.01.14 VIDF: Der IFW-Tabellen Viewer schaltet jetzt auf einen BigSize Modus um, wenn Tabellen mit einer Dateigroesse von mehr als 1MB eingelesen werden.

                           Der Modus ermoeglich es auch Tabellen mit grosser Zeilenanzahl (>100000) in den Speicher zu laden.
                           Dies wirk sich auch auf das Kommando ConvertIcsvToImportCsv() aus.
       29.01.14 FAKTMAIN:  Nur noch der Benutzer "SERVICE" hat den Menuepunkt "Hilfen neu generieren"
       04.02.14 FAKTEDIT:  Bei der Istwerterfassung der Produktion wird beim Speichern mit Return der Eingabefokus auf das Ausgangsfeld zurueckgestellt.
                           Bei Speichern mit F2 bleibt der Eingabefokus auf dem aktuellen Feld.
                 PRGLOAD:  Neues Makrokommando RefreshList().
                             Aktualisiert die Listendarstellung der graphische UI.
                             Entspricht der Tastenfunktion "F5" in der Tabellenuebersicht.
                  WINIFW:  Die Funktion Refresh (F5) aktualisiert jetzt immer die Summenanzeige der Tabelle.

647 12.02.14 DFIMP: Beim Import kann mit dem @I255; das setzen des Sortierindex verhindert werden. Der Importlauf findet dann unter der aktuellen

                           Pfadeinstellung der Datenbank statt.
                 PRGLOAD:  Kommando SetFileIndex() erweitert.
                             SetFileIndex(Indexfeld1);  mit Komma getrennte Werte
                             SetFileIndex(Indexfeld1, Indexfeld2 ,Indexfeld3, Indexfeld4);
                           Die Feldangaben koennen jetzt mit Variablen vorgenommen werden. 
                           Sind im ersten Paramater "Indexfeld1" Feldnummern mit Komma getrennt enthalten, so werden diese Werte fuer alle Parameter uebernommen.
                 PRGLOAD:  Kommando SetFile() fuer dynamische Datenbanktabelleneintraege korrigiert.
       17.02.14 PRGLOAD2:  PHP Kommandoemulation session_com_externalcall und session_com_externalput von 256 zeichen auf 4kB erhoeht.
       18.02.14 API_MFRM:  HTML-Kommando FileDialog( winHandle, Modus, Pfad, Dateimaske) fuer XP-Rechner erweitert.
                           Beim Verzeichnispfad wechseln wird das Arbeitsverzeichnispfad nicht mehr verstellt.
       20.02.14 PRGLOAD2: Bei Zugriffsfehlern des Kommandos HttpCopyFile() auf Dateien wird keine Schutzverletzung mehr ausgeloest.

648 21.02.14 FAKTMAIN: IFW ModulManager erweitert:

                          - Es werden jetzt Fileresourcen aus den Modulen unterstuetzt. Dateien mit Namen "fakt.frc" werden aus dem Modulverzeichnissen
                            eingelesen und den IFW-Fileresourcen fuer die Datenbanktabellen hinzugefuegt. Der Datenbanktabellenname darf noch nicht vorhanden sein
                            und die ID muss frei sein.
                          - In den FRC Dateien darf jetzt als Datenbanktabellen-Id (Handle) ein * eingetragen werden. Iie ID wird dann beim Laden dynamisch vergeben.
                          - In den MRC Dateien fuer die Menueresourcen kann jetzt der Parmeter db_nnnnnn mit n als Datenbanktabellenname angegeben werden.
                            Es wird dann automatisch die entprechende Dantenbanktabelle zugeordnet. Die ID des Menuepunkts MUSS im Bereich 0xD000 bis 0xDFFF liegen.
                            Die MenueID muss IFW weit einmalig sein.
       24.02.14 DFED3LIB: Benutzerdefinierte Felder in der Erweiterungsmaske werden jetzt beim Kopieren und Neueingeben korrekt verarbeitet.
       26.02.14 DFED3LIB: Benutzerdefinierte Felder Kopiervorgabe korrigiert.
       27.02.14 BRECLIB:  Zugriff auf gefilterte Listen mit Fliesskommawerten im Indexpfad korrigiert.
       28.02.14 PRGLOAD:  Beim Kommando DocumentEdit() Zwangsabschluss von Abrufauftraegen implementiert
                WINIFW:   Feldinhalte bei der Windowsversion werden bei Alt1-9 in die Maske uebernommen. Damit stehen sie in Makros sofort zur Verfuegung

649 05.03.14 WINIFW: Pluginmanager aktualisiert. Installation von Hooks moeglich.

       10.03.14 API_MFRM: Neues HTML-Kommando ReadRegistry()
                            ReadRegistry( winHandle, Modus, Sektion, Variable);
                          Modus:
                           "":  Reserviert, keine Angabe
                          Sektion:
                           Adresse aus der der Wert gelesen werden soll (z.B: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER)
                          Variable:
                           Varianble deren Wert gelesen werden soll
                          Hinweis:
                           Besteht der Wert noch nicht, so wird ein Fehler -7 zurueck gegeben
                          Fehlernummern:
                           -9: Falscher Registrybereich. Erlaubt ist HKEY_CLASSES_ROOT,HKEY_CURRENT_CONFIG,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_PERFORMANCE_DATA,HKEY_PERFORMANCE_NLSTEXT,HKEY_PERFORMANCE_TEXT,HKEY_USERS
                           -7: Fehler beim Lesen
                           -6: Variablentyp wir nicht unterstuetzt, nur REG_DWORD und REG_SZ.
                           -5: Fehler beim Oeffnen des Pfades
                           -4: Zugriff verweigert
       10.03.14 API_MFRM: Neues HTML-Kommando WriteRegistry()
                            WriteRegistry( winHandle, Modus, Sektion, Variable, Wert);
                          Modus:
                           "REG_DWORD": Es wird ein DWORD geschieben.
                           "REG_SZ": Es wird ein Text geschrieben
                           "REG_SUBKEY": Es wird ein Ordner mit dem Parameter "Variable" erzeugt. Er befindet sich innerhalb der Sektion. Es kann keine Hierachie automatisch angelegt werden. Der Parameter "Wert" wird ignoriert.
                          Sektion:
                           Adresse in die der Wert gelesen geschrieben soll (z.B: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER)
                          Variable:
                           Variable deren Wert geschrieben werden soll
                          Wert:
                           Wert auf den die Variable gesetzt wird.
                          Hinweis:
                           Es muessen ausreichend Rechte zum Schreiben vorhanden sein. Ist das Schreiben erfolgreich, so wird der Text "*ok*" zurueckgegeben.
                          Fehlernummern:
                           -9: Falscher Registrybereich. Erlaubt ist HKEY_CLASSES_ROOT,HKEY_CURRENT_CONFIG,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_PERFORMANCE_DATA,HKEY_PERFORMANCE_NLSTEXT,HKEY_PERFORMANCE_TEXT,HKEY_USERS
                           -8: Falscher Modus. Erlaubt ist REG_DWORD, REG_SZ, REG_SUBKEY
                           -6: Fehler beim Schreiben
                           -5: Fehler beim Oeffnen des Pfades
                           -4: Zugriff verweigert
       19.03.14 WINLIB2:  Beim Kopieren von Masken werden Felder mit Feldnamen die im Zielfeld mit RAM enden auch dann kopiert, wenn im Quellfeld der Namenszusatz RAM fehlt.
                          Problem der Lagerangabe beim Abrufen von Variantenartikel auf eine Belegposition in der Variantenstueckliste beseitigt.
                DOCUSTORE:Es werden jetzt Dateinamen mit einem Euro-Zeichen korrekt unterstuetzt.
                PROGLOAD: Kommando SetLinearFilter( Modus, Feldnummer, Inhalt) Modus 4 angepasst.
                          Modus: 4 Einer der Buchstaben ist im Feld enthalten. Geht nur mit Felder der Laenge 1. Der Filter ist nur gueltig wenn als Buchstabenvorgabe
                                   mindestens ein Buchstabe enthalten ist. Wird ein leerer Inhalt uebergeben, wird der Filter nicht aktiviert.

650 20.03.14 PRGLOAD: Kommando SetFileChild() erweitert.

                           -Der erste Parameter kann als Vt Varianble uebergeben werden
                           -Ist der Erste Paramater in der Form "0xnnnnnnnn" dann wird direkt die Datenbanktabelle mit dem Handle als Datenbankbasis fuer das Child verwendet.
       27.03.14 FAKTPRJ:  Zu Internetanbindungsdatenbanktabelle webcon noc websta, webbew und webevt aktiviert.
       28.03.14 PRNLIB:   Maximale Speichergroesse von Vn Eintraegen von 4096 auf 5096 Byte erhoeht.
       31.03.14 API_MFRM: HTML-Kommando ReadProfile() Modus "file:" unterstuetzt jetzt Dateiangaben mit %TEMP% oder "c:\temp\".

651 02.04.14 DFIMP: Die Ansi2Oem konvertierung mit @U auf kompletten Zeichensatz umgestellt.

                PRGLOAD:  Kommando ImportFile() um Modus 0x1000 erweitert.
                          Modus:
                          0x0001 1     Datei nach erfolgreichen import löschen
                          0x0002 2     Felder die nicht vorhanden sind nicht melden
                          0x0004 4     Keine Rechenoperationen der Felder auslösen
                          0x0008 8     Es werden alle Dateien ImportDatei aus dem Verzeichnis eingelesen
                          0x0010 16 (IMPORT_CLRDATA)
                                       Es können beim Import Datenbereiche in der Datenbank zuvor gelöscht werden. Damit ist es möglich Datenbereiche komplett neu einzulesen und die bereits gepeicherten Daten in dem Bereich automatisch zuvor zu löschen.
                                       Dazu muss in der Datei ein Feld das einen Datenbereichsschlüssel darstellt vorhanden sein. Das Feld muss mit einem Indexpfad versehen sein. Beim Import der neuen Daten muss das Feld mit dem entsprechenden Schlüsse versehen werden. In der Importvorlage muss das Feld über die Option @Cxx; mit xx als Feldnummer angegeben werden. Das Feld xx muss durch den Import mit dem entsprechenden Schlüsseltext versehen werden.
                                       Wird beim Import ein Datensatz gespeichert, dann wird geprüft ob der angegeben Schlüssel das erste mal gepeichert wird. Ist es das Erstemal, dann werden zuerst alle in der Datenbank enthaltenen Datensätze mit dem Schlüssel gelöscht und dann der Satz gepeichert. Wurde bei einem Importlauf der Schlüssel schon einmal gepeichert, so erfolgt keine Löschung mehr. Bei kombinierten Pfaden werden alle Datensätze gelöscht, die den Schlüssel im ersten Feld haben.
                          0x0020 32 (IMPORT_RENAME_FILE)
                                       Die Datei wird vor dem Import Umbenannt, aber nach dem Importlauf ohne Modus 1 nicht gelöscht (Die Datei bleibt mit dem temporären Namen erhalten). Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                          0x0040 64 (IMPORT_NOWRITE)
                                       Es werden keine Daten beim Import gespeichert. Eine evt. aktive Löschung mit Modus 16 (IMPORT_CLRDATA) wird aber durchgeführt. Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                          0x0080 128 (IMPORT_SELECT)
                                       Es werden alle importierten und geschrieben Datensätze hinzuselektiert.
                                       Bei zusätzlich angegebener Option 64 (IMPORT_NOWRITE) werden keine Datensätze geschrieben, aber die Selektion trotzdem durchgeführt.
                          0x0100 256   Die Datenbank wird im Modus "OnlineBuchen" beim Import verarbeitet.
                          0x0200 512 (~IMPORT_VIEWCNTREQUEST)
                                       Die Anzeige des Zaehlrequests in der Windowsversion wird unterdrückt.
                          0x0400 1024 (IMPORT_NOUSERBREAK)
                                       Der Benutzer kann den Einlesevorgang nicht abbrechen.
                          0x0800 2048  Der Import wird als Belegimport durchgefuert. Die Option ist beim Import von temporaeren Belegdatenbanken sinnvoll.
                                       Der Aenderungsmodus ist auf den geladenen Beleg anwendbar.
                                       In den Positionen werden beim Einlesen die Feldinhalte nicht geschleppt (Im Gegensatz zum Kommand DocumentImport()!).
                          0x1000 4096  Die Option @U wird im Kompatibilitaetsmodus (Rev. <651) ausgefueht.
                          UnlockFunction()
                PRGLOAD:  Neues Makrokommando LockFunction()
                           LockFunction( DateiName);
                           LockFunction( DateiName, "Meldetext");
                           LockFunction( DateiName, "Meldetext", "Sprungmarker");
                           LockFunction() lockt die Funktion unter dem Namen "Dateiname".
                           Ist der Dateiname noch nicht gelockt, so wird das Programm weiter ausgefuehrt.
                           Ist der Dateiname gelockt, so wird das Programm beendet. In diesem Fall gelten die folgenden Parameter:
                            - Ist ein Meldetext angegeben, so wird dieser angezeigt und das Programm beendent.
                            - Ist eine Sprungmarke angegeben, dann wird das Programm nicht beendet, sondern die Sprungmarke angesprungen.
                           Hinweis:
                           - Es kann nur eine LockFunction pro Makroprogrammlauf angewendet werden. Ansonsten wird eine Fehlermeldung ausgegeben.
                           - Ein Dateiname muss angegeben werden.
                           - Es wird eine Datei "Dateiname".loc erstellt. Ist sie global im IFW-Verzeichnis, gilt sie fuer alle Benutzer.
                           - Der Lock gilt solange die Instanz der Makrofunktion laeuft. Bei "End()" wird der Lock automatisch aufgehoben. Gosub() erzeugt immer
                             eine neue Instanz. Der Lock kann auch manuell durch UnlockFunction() aufgehoben werden.
                PRGLOAD:  Neues Makrokommando UnlockFunction()
                           UnlockFunction() hebt den Lock durch LockFunction() auf. Die Funktion hat keinen Parameter.

652 09.04.14 DFIMP: Beim Import zusaetzlich den Programmeinsprung "HunkHauptPostWrite" aufgenommen.

                           Falls vorhanden wird er nach dem Speichern eines Datensatzes aufgerufen.
                          Hinweis:
                           Ist nur der Einsprungspunkt "HunkHauptPostWrite" vorhanden, so muss der Einsprungspunkt "Main" als Erstes in der Abfolge mit End() angegeben werden.
                           Ansonsten wird der Einsprungspunkt "HunkHauptPostWrite" 2 mal aufgerufen, einmal vor dem Speichern und einmal nach dem Speichern!
       10.04.14 FFSTDVK:  Beim Belegimport wird beim Laden verschiedener Preisstaffeln kein Signalton mehr ausgegeben.
       15.04.14 IFWINST:  Bei Konvertierung von Textzahlenfelder in Textfelder werden die fuehrenden Leerzeichen entfernt.

653 30.04.14 PRGLOAD: IFW Makro Programmnamen werden jetzt komplett von / auf \ umgesetzt. Das spielt bei der Lokaliserung der Programme und

                          Verwendung der Programmnamen z.B. [Vt:G".js"] eine Rolle.
                ITBPRG:   Neues Kommando System.setVt() und System.getVt()
                            STRING System.setVt( INT $index, STRING $wert)
                            STRING System.getVt( INT $index)
                           System.setVt() setzt die IFW Vt[$index] Variable auf den Wert $wert. Gibt den alten Inhalt von Vt[$index] zurueck.
                           System.getVt() gibt die IFW Vt[$index] Variable zurueck.
                ITBPRG:   Neue Abschlussfunktion IfwTabBase::Exit();
                           Die Funktion ist dazu gedacht Rueckgabewerte ueber System.setVt() zurueck zu geben.
                           Die Funktion wird ganz zum Schluss nach PostPrint aufgerufen.
                           Sie wird im Fehlerfall nicht aufgerufen.
                           Sie wird auch im Abbruchfall (REC_ABORT) aufgerufen.
                           Ein Rueckgabewert >0 oder TRUE ergibt einen Abbruch (wie auch bei PostPrint).
                PRGLOAD:  Kommando SetFileIndex() korrigiert.
                           Bei mehreren mit Komma getrennten Werte wurde nur der 1. erkannt.

654 06.05.14 FFARTBCH: Bei Konsibelieferungen Vorgangsart 10 werden jetzt auch bei Variantenartikel korrekt auf das Ziellager zugebucht.

       07.05.14 ITBPRG:   Wird bei einem Fließtext-Datenbankfeld mit [] eine indexangabe gemacht, so wird diese als offset in das Fließtextfeld verwendet.
                          Do kann ein Inhalt mit mehr als 4KB aus dem Feld ausgelesen werden.
       08.05.14 FAKTEDIT: Beim Aenderungsarchiv entstehen keine leeren Positionszeilen mehr beim Aendern von Belegen. Sie entstanden wenn bereits Attachementeintraege
                          im Original vorhanden waren.
                          Hinweis: Das Aenderungsarchiv von Belegen unterstuetzt keine dynamischen Datenbankerweiterungen (Attachment, Attribute, Kategorien)!
       13.05.14 IFWTAB:   Die maximale Einleselaenge von Datenzeilen von 10k auf 100k erhoeht.

655 23.05.14 LOADSAVE: Ermittlung der Dateteigroesse get_filesize() auf direkte Dateiabfrage umgestellt (bisher ueber Verzeichnisabfrage).

       12.06.14 FAKTPRJ:  Die Internet/Anbindungsdatenbanktabellen (Web???) auf mandantenspezifisch umgestellt.
       17.06.14 TAPIUTIL: Abfrage der TAPI-Devices mit enum_tapidevice_csv() auch bei uninitialisierter TAPI ermoeglicht.

656 23.05.14 API_MFRM: HTML-Kommando ExecuteProgramAsync() erweitert:

                           Wird unmittelbar nach einem ExecuteProgramAsync() ein Programm mit ExecuteProgram() aufgerufen, so startet das asynchrone Programm
                           erst nach dem Synchronen. Bisher brach das asynchrone Programm ab ohne die Callbackfunktion aufzurufen.
                           Wird intern trotzdem das asynchrone Programm gestartet, so wird die Callbackfunktion mit der Meldung "*blocked*" aufgerufen.
                           Asynchrone Programme koennen nur noch starten wenn das Sperrlevel fuer die Makroausfuehrung 0 ist.

657 25.06.14 PRGLOAD: Makrokommando AppendBrowseItem() um 1 neuen Parameter erweitert (Link-Parameter PreFix).

                            AppendBrowseItem( NachFeldnummerEinfügen, Feldnummer, Text, Länge, Suchpfad, Kennzeichen, Zusatzdaten, Zwischentext, Nachladefeldnummer, LinkModus, LinkQuellFeld, LinkZielTabelle, LinkZielFeld)
                            AppendBrowseItem( NachFeldnummerEinfügen, Feldnummer, Text, Länge, Suchpfad, Kennzeichen, Zusatzdaten, Zwischentext, Nachladefeldnummer, LinkModus, LinkQuellFeld, LinkZielTabelle, LinkZielFeld, LinkZielFeld2)
                            AppendBrowseItem( NachFeldnummerEinfügen, Feldnummer, Text, Länge, Suchpfad, Kennzeichen, Zusatzdaten, Zwischentext, Nachladefeldnummer, LinkModus, LinkQuellFeld, LinkZielTabelle, LinkZielFeld, LinkZielFeld2, LinkPreFix)
                           Mit den Link-Parameter koennen Felder aus anederen Datenbanktabellen abegerufen werden.
                           Das Kennzeichen 0x0020 muss gesetzt sein.
                            LinkModus       -> immer 1
                            LinkQuellFeld   -> Feld aus der aktuellen Datenbanktabelle das fuer den Zugriff verwendet werden soll (in der Regel 32).
                            LinkZielTabelle -> Name der Zieldatenbanktabelle, aus der ein Feld angezeigt werden soll
                            LinkZielFeld    -> Feld in der Zieldatenbanktabelle, das dem LinkQuellFeld entsprechen muss. Es muss ein Suchpfad mit dem Feld vorhanden sein.
                            LinkZielFeld2   -> 2. Feld im Suchpfad der Zieldatenbanktabelle. Dieser Wert ist optinonal und brauch nicht angegeben werden.
                            LinkPreFix      -> Es wird beim Laden des Datensatzes der LinkPreFix dem zu ladenden Datenabankwert aus LinkQuellFeld vorangestellt.
                                               Ist ein LinkPreFix angegeben, so werden fuehrende oder folgende Leerzeichen aus dem Wert LinkQuellFeld geloescht.
                PRGLOAD:   Makrokommando AppendBrowseItem() bei leerem Wert "Zusatzdaten" und Option "*Feldnummer - Feldnummer nur einmal anhaengen" korrigiert.
       10.07.14 PRNLIB2:   Das Kommando @#MakeDirTree ""; und @#MakeDir ""; beruecksichtigt jetzt c:\temp und '/' angaben.
       14.07.14 API_MFRM:  Neue HTML-Kommando ComRead() und  ComWrite() erweitert:
                           ComRead( port)
                           ComRead( port, modus)
                           - Liest Daten von einem seriellen Port 1-64. Gibt die gelesenen Daten als String mit abschliesender 0 zurueck.
                           - Sind keine Daten vorhanden wird ein leerer String zurueckgegeben.
                           - Werden Datenbytes kleiner 0x20 oder groessergleich 0x80 empfangen so werden sie in der Form "0xHH" mit HH als hexadezimaler Wert zurueckgegeben.
                           - Im Fehlerfall wird "*error x*" mit x = -1 zurueckgegeben.
                           - Der Wert "modus" kann auf den Modus "3964R" und "3964" gesetzt werden.
                             Bei "3964" werden Daten nach der Siemens-Prozedur 3964 ohne Checksumme versendet (STX/DLE/ETX Handshake/Quittung)
                             Bei "3964R" werden Daten nach der Siemens-Prozedur 3964 mit Checksumme versendet (STX/DLE/ETX/BCC Handshake/Quittung)
                           ComWrite( port, data)
                           ComWrite( port, data, modus)
                           - Schreibt Daten auf einem seriellen Port 1-64. Gibt "ComWrite port x: erg" zurueck. Mit erg==0 wurden die Daten erfolgreich geschrieben.
                           - Der Wert "modus" kann auf den Modus "3964R" gesetzt werden.
                             Bei "3964R" werden Daten nach der Siemens-Prozedur 3964 mit Checksumme versendet (STX/DLE/ETX/BCC Handshake/Quittung)
                             Will man Datenbytes ín hexadezimaler Form senden, so gibt man den Wert in der Form "\xHH"  mit HH als hexadezimaler Wert an. Dabei ist auch der Wert 0x00 erlaubt.

658 17.07.14 IFW_WWW: Ab Release V1.3-05 des WWW-Clients werden vom Host beim Drucken die "Q" Requester nur noch angezeigt, wenn der Benutzer kein '^' in seinen Flags hat.

                           Mit dem Flag "^" kann beim Benutzer das Anzeigen von Druckrequestern bei Benutzung des WWW-Clients abgeschaltet werden.

659 22.07.14 DFPRN: Beim Drucken wird jetzt eine Stationsabhaengige Druckerzuordnung ueber die Datenbanktabelle "statpr" unterstuetzt. Ist die

                           per Modul angemeldet wird beim stationsabhaengigen Drucken folgende Findung verwendet:
                             1. Suche nach "Stationsnummer", "Mandantennummer", "Benutzernummer", "StationsdruckerId Sx"
                             2. Suche nach "Stationsnummer", "Mandantennummer", "", "StationsdruckerId Sx"
                             3. Suche nach "Stationsnummer", "", "Benutzernummer", "StationsdruckerId Sx"
                             4. Suche nach "Stationsnummer", "", "", "StationsdruckerId Sx"
                           Wird kein Eintrag gefunden wird in der Verbindungsliste nach dem Stationsdrucker geschaut.
                           Wird auch dort kein Eintrag gefunden wird der Drucker aus der Druckerliste verwendet, der die Suche ausgeloest hat.
                           Hinweis:
                             Die Datenbanktabelle "statpr" unterstuetzt auch 2-stellige Druckercodes. Einstellige werden mit "S" vorne ergänzt, 2-stellige nicht.
       23.07.14 WINIFW:    In der Favoritenleiste gibts es bei Rechtsklick eine Funktion "alle Eintraege entfernen".

660 24.07.14 FAKTMAIN: Neuer INI Schalter StandarddruckerVerstellen in der Sektion [Print]

                            ;StandarddruckerVerstellen: Wert 0/1. Default 1.
                            ;Fuer den HTML-Druck mit dem Internetexplorer wird der Standarddrucker verstellt.
                            ;Mit dem Wert 0 wird die Umschaltung abgeschaltet. Die Umschaltung darf nur
                            ;in Verbindung mit einem Internetexplorer >= IE11 und aktuellem Printertemplate
                            ;abgeschaltet werden.
                            ;StandarddruckerVerstellen=1
                API_MFRM:  Neues HTML-Kommando PrinterFunction()
                             PrinterFunction( winHandle, Modus, Druckername, Druckeroptionen);
                           Das Kommando steuert den Drucke bei einem HTML-Druck. Es kann nur in einem HTML Druck in Verbindung mit einem entsprechenden Printertemplate verwendet werden.
                           Modus:
                            0 -> Die Daten fuer Drucker "Druckername" wird zurueckgegeben.
                            1 -> Der zum Ausdruck angegebene Drucker wird verwendet und die Daten zurueckgegeben.
                           Druckername:
                            Bei Modus 0 Name des Druckers aus der Windows Druckerliste. Bei Modus 1 unwirksam.
                           Druckeroptionen:
                            Keine Optionen moeglich, "" uebergeben.
                           Rueckgabewert:
                            Es wird ein String mit 5 Werten, getrennt durch ein Pipe-Zeichen '|' getrennt zurueckgegeben.
                             "0x12345 HGLOBAL DevMode|0x34567a HGLOBAL DevNames Unicode|DeviceName|PrinterName|PortName".
                            Die Werte koennen im Printertemplate zum Steuern des Druckers gesetzt werden.
                           Fehlerfall: im Fehlerfall werden folgende Werte zurueckgegeben:
                           -10: Parameter falsch
                           -11: Falsches Fenster
                           -12: Kein Drucker angegeben
                           -13: Der Druckername "Standarddrucker" angegeben, es ist aber keiner definiert.
                           -14: Modus nicht 0 oder 1 (Texte werden in eine ganze Zahl umgewandelt)
       25.07.14 FAKTMAIN:  Beim Aufruf des IFW's kann jetzt ein Paramater /wd:... mitgegeben werden. Damit wird das Arbeitsverzeichnis festgelegt.
                           Der Parameter muss immer ein voller Pfad mit Laufwerksbuchstaben sein, z.B. /wd:i:\ifw. Er hat am Ende kein Backslash.
                           Fuer eine Rootpfadangabe muss er ein Backslash am Ende haben, z.B. /wd:i:\
                           Anstatt Backslash sind auch Slash erlaubt.
       25.07.14 FAKTMAIN:  Management des Favoritenmanagers beim Start unter der Windowsoberflache verbessert. Damit sollte der gelegentliche Verlust der 
                           Favoriten bei lang laufenden Startvorgaengen verhintert sein.
       25.07.14 VIDF:      Nachladen von Daten aus dynamischen F1 Feldern in Spalten der Uebersicht jetzt moeglich.
       28.07.14 VIDF:      Nachladen von Daten mit Zahlenwerten aus Arrays aus nachgeladeten Tabellen jetzt moeglich.
       30.07,14 WINIFW:    Alt-F5 in der Uebersicht geht, es wird das Makro "Druckvorschau" aufgerufen.
       31.07.14 WINIFW:    Suchpfadumschaltung mit Pfeil rechts/links geht jetzt uerber das Ende hinaus auf den Anfang.

661 07.08.14 DFPRN: Stationsabhaengige Druckereinstellung um eine globale Druckersuche erweitert:

                           Beim Drucken wird jetzt eine Stationsabhaengige Druckerzuordnung ueber die Datenbanktabelle "statpr" unterstuetzt. Ist sie
                           per Modul angemeldet wird beim stationsabhaengigen Drucken folgende Findung verwendet:
                             1. Suche nach "Stationsnummer", "Mandantennummer", "Benutzernummer", "StationsdruckerId Sx"
                             2. Suche nach "Stationsnummer", "Mandantennummer", "", "StationsdruckerId Sx"
                             3. Suche nach "Stationsnummer", "", "Benutzernummer", "StationsdruckerId Sx"
                             4. Suche nach "Stationsnummer", "", "", "StationsdruckerId Sx"
                           im weiteren wird eine Globaleinstellung ohne Stationsnummer gesucht
                             5. Suche nach "", "Mandantennummer", "Benutzernummer", "StationsdruckerId Sx"
                             6. Suche nach "", "Mandantennummer", "", "StationsdruckerId Sx"
                             7. Suche nach "", "", "Benutzernummer", "StationsdruckerId Sx"
                             8. Suche nach "", "", "", "StationsdruckerId Sx"
                           Wird kein Eintrag gefunden wird in der Verbindungsliste nach dem Stationsdrucker geschaut.
                           Wird auch dort kein Eintrag gefunden wird der Drucker aus der Druckerliste verwendet, der die Suche ausgeloest hat.
                           Hinweis:
                             Die Datenbanktabelle "statpr" unterstuetzt auch 2-stellige Druckercodes. Einstellige werden mit "S" vorne ergänzt, 2-stellige nicht.

662 08.08.14 WINIFW: Die Spaltenbreite in Tabellen innerhalb Masken wird jetzt optimiert. Spalten die als "dynamisch" gekennzeichnet sind

                           erhalten alleinig die Spaltendifferenzen. In der Regel sind das Die Textspalten.
                PRGLOAD:   Makrokommando AppendBrowseItem() und SetBrowseItem in der Kennzeichenangabe um Modus 0x8000 erweitert.
                           Mit dem Kennzeichen 0x8000 wird die Spaltenbreite in der Windowsversion fixiert. Sie entspricht dann immer
                           der angegebenen Breite und wird nicht dynamisch veraendert.
                FFBSTLST:  Die Eingabe von Bestellbestaetigungen in der Windowsversion optimiert.
                WINIFW:    Beim Bearbeiten von nur selektierten Eintraegen in einer gefilterten Liste verschiebt sich der Eintrag beim Speichern der Maske nicht mehr.
       11.08.14 WINIFW:    Beim Abbruch des Speichervorgangs bei Belegen bleibt der Fokus in der Positionsliste erhalten. Bisher wurde er ans Ende gestellt.
                           Das neu Oeffnen von selektierten Listen korrigiert.
       13.08.14 WINIFW:    Spaltenanzeige von Arrayfeldern korrigiert.

663 14.08.14 DFOBJ: Cache Objekte von Archiv-Dateien mit eigener Objekt-Instanz versehen.

       15.08.14 PRGLOAD:   DeliverSalesOrder() Fehler -1 korrigiert.
       15.08.14 FAKTFNC:   Abbruch im Produktionsabgleich im WINIFW beseitigt (Requester wurde geschlossen).
       22.08.14 DFLIB2:    Zeitstempel fuer die Veralterung der Datenbankobjekte beim Initialisieren bereits gesetzt. Damit gibt es keine 0-Zeitstempel mehr.
                           0-Zeitstempel haben zu irrefuehrenden Verlust von aktuellen Objekten gefuehrt.

664 16.09.14 PRNLIB2: #include MAINFILE ist jetzt kombiniert mit * und ? im Extender anwendbar.

       17.09.14 STRLIB:    findfirst findnext filtert jetzt Dateinamen mit einem * nach wortanfang aus.
                           Das Betriebsystem liefert bei findfirst findnext mit * auch Namen die in der 8.3 Kurzform passend sind mit aus. Bei langen
                           Dateinamen fuehrt das zu falschen Dateien (praktisch z.B. "dir 1409*.log /X" als Kommandozeile im Verzeichnis ifw tempdat eingeben).
       18.09.14 FAKTMAIN:  Beim Beenden des IFW's wird jetz die offene FAKTSNC-Datei asynchron threatgerecht aufgeraeumt.
                           Beim Schliessen einer WWW-Session konnte zuvor der IFW-HOST beim Restart mit einer Schutzverletzung heangen bleiben.
                API_MFRM:  HTML Koommando GetTableItemData um function 4 erweitert:

665 08.10.14 WINIFW: Beim Starten des HTML Ausdrucks wird eine Fehlermeldung ausgegeben, wenn das Printertemplate nicht gestartet werden kann.

                           Zusaetzliche Protokollzeilen "Prh:" im Logbuch "Prh: MODUS TITEL DATEI DRUCKER".
                           Bei HTML Druck wird geprueft ob der Ausdruck innerhalb von 5 Sekunden startet. Wenn nicht, werden bis zu 3 Startversuche unternommen.
                           Im Fehlerfal wird "Timeout start printing, retrys 3, document DOKUMENTENNAME" ausgegeben.
       22.10.14 PRGLOAD:   Kommando ExecuteItemFunction() Modus 4 erweitert:
                           Modus: 4 Es werden keine Benutzerhinweise ausgegeben, falls beim Feldabruf internen Hinweise vorhanden sind.
                                    Die Meldung "Dies ist eine Lieferadresse, Rechnungsadresse laden?" wird ebenfalls nicht mehr ausgegeben.

666 28.10.14 ITBPRG: Neue ITB Kommandos GetItem(), GetItemByToken()

                            GetItem( INT $item);
                            GetItem( INT $item, INT $index);
                            GetItemByToken( STRING $itemToken);
                           Gibt den Inhalt eines Feldes der zugeordneten Datenbanktabelle zurueck.
                            Bei GetItem wird die Feldnummer als Zahl und ggf. der Index bei Arrayfeldern verwendet.
                            Bei GetItemByToken wird die Feldnummer ueber das Texttoken angesprochen. Z.B "C46" oder "UBenutzerfeld".
                ITBPRG:   Neue ITB Kommandos GetItemCode(), GetItemCodeByToken()
                            GetItemCode( INT $item);
                            GetItemCode( INT $item, INT $index);
                            GetItemCodeByToken( STRING $itemToken);
                           Gibt die Feldnummer eines Feldes der zugeordneten Datenbanktabelle zurueck. Existiert es nicht wird 0 zurueckggeben.
                            Bei GetItemCode wird die Feldnummer als Zahl und ggf. der Index bei Arrayfeldern verwendet.
                            Bei GetItemCodeByToken wird die Feldnummer ueber das Texttoken angesprochen. Z.B "C46" oder "UBenutzerfeld".
       31.10.14 ITBPRG:   Kommando System.setVt() und System.getVt() um modus erweitert
                            STRING System.setVt( INT $index, STRING $wert)
                            STRING System.setVt( INT $index, STRING $wert, INT $modus)
                            STRING System.getVt( INT $index)
                            STRING System.getVt( INT $index, INT $modus)
                           System.setVt() setzt die IFW Vt[$index] Variable auf den Wert $wert. Gibt den alten Inhalt von Vt[$index] zurueck.
                           System.getVt() gibt die IFW Vt[$index] Variable zurueck.
                           modus:
                            0: keine Konvertierung
                            1: Konvertierung des Vt Werts von AnsiZuOem beim Setzen und OemZuAnsi beim Laden, abhaengig von der ROOT Datenbank
                            2: Konvertierung des Vt Werts von OemZuAnsi beim Setzen (Rueckgabe Altwert unveraendert) und OemZuAnsi beim Laden.
                            3: Konvertierung des Vt Werts von AnsiZuOem beim Setzen (Rueckgabe Altwert unveraendert) und AnsiZuOem beim Laden.
                            4: Konvertierung des Vt Werts von AnsiZuOem beim Setzen und OemZuAnsi beim Laden, abhaengig von der aktuellen Datenbank
       03.11.14 MAPIAPI:  Bei mehr als 16 Anhängen wurd bei der Mailerzeugung ggf. der 1 Dateiname nicht korrekt als Anhang uebergeben.
                          Problem beseitigt.
       10.11.14 API_MFRM: Das HTML-Kommando WriteProfile, bring jetzt keine klassische Fehlermeldung mehr, wenn die Datei nicht speicherbar ist.
                          Es wird der Wert "-10" zurueckgegeben.

667 20.11.14 IFWTAB: GetRecord() und GetRecordByCommand() erkennt jetzt geloeschte Datensaetze im Stammdatenarchiv auch dann, wenn der

                          Zugriff mit "ist gleich" auf einen Indexpfad angewendet wird der auch doppelte Eintraege erlaubt.

668 27.11.14 PRGLOAD: Kommando DocumentEdit() erweitert.

                            Bei Modus 4 "Von Beleg schreiben" ist jetzt der 
                            VerarbeitungsModus 128 0x0080 "nur Laden der Daten ohne Anzeige des Maske und ohne Speicherung" verfuegbar.
                            Der so geladene Beleg kann mit DocumentEdit Modus 10 gespeichert werden.
                PRGLOAD:  Kommando PrintFile() unsterstuetzt jetzt Dateinamen bis zu 260 Zeichen, bisher 100 Zeichen.
       03.12.14 DFIMP:    scan_text beim Import modifiziert, bei Repeatkommandos konnte die Trennsequenz bei zu grosser Gleichheit zu den 
                          importierten Daten zu einem zuviel importierten Zeichen fuehren.
       05.12.14 WINIFW:   Die Spalte UmsMe bei den Bestellvorschlaegen korrigiert. Es wurden andere Werte angezeigt.
       02.01.15 BTRVDATA: Unbekannte Btrieve Fehlernummern werden jetzt mit ihrer Nummer ausgegeben.

669 05.01.15 DFED3LIB: Resourcen fuer die Seite "Zusammenfassung" werden jetzt zuerst unter "module/ifw_gui/" (z.B. module/ifw_gui/basisdat) gesucht.

                          Falls nicht vorhanden so wie bisher an der gleichen Stelle wie die MSU Datei.
       08.01.15 FFMANDAN: Beim Anlegen und Loeschen von Mandanten wird jetzt bei ungenuegenden Rechten im Dateisystem eine Meldung ausgegeben und der
                          Vorgang abgebrochen.
       19.01.15 WINIFW:   Wird eine Fehlermeldungsbox nach eine gewissen Anzahl von Windows-Nachrichten nicht eingeblendet, so wird sie automatisch geschlossen.
                          In besonderen Fällen konnte das IFW nicht mehr bedient werden, weil eine unsichtbare Fehlerbox vorhanden war.

670 23.01.15 ITBPRG: Kommando SetOutputModeHTML() erweitert:

                            SetOutputModeHTML( INT $iMode);
                          - Mit $iMode ungleich 0 wird der HTML Ausgabemodus aktiviert.
                            Dabei werden die Tabellendaten in Form eines HTML-Strings intern generiert.
                            Es werden keinerlei Daten in die Zieldatei unmittelbar geschrieben.
                            Zur Ausgabe der Daten in die Zieldatei muessen die Kommandos Print() oder PrintFile() in der Funktion PostPrint() aufgerufen werden.
                            Um die Tabellendaten in die Datei auszugeben muss mit dem Kommando PrintFile() eine Textdatei ausgegeben werden die den Platzhalter
                            %HTML_CSV_DATA% enthaelt (siehe unten).
                          - Mit $iMode 2 werden die HTML Daten in einem erweiterten Format mit fuehrenden Ebenenangaben und Variablenbezeichnung "col%%%=" erzeugt.
       26.01.15 PRGLOAD:  Kommando DocumentEdit() erweitert.
                            Bei Modus 2 "veraendern" ist jetzt der 
                            VerarbeitungsModus 4096 0x1000 "Beleg veraendern ohne Laden der Daten" verfuegbar.
                            Ein Beleg kann jetzt mit zum Veraendern geladen werden, manipuliert und dann mit Benutzerfuehrung gespeichert werden.
                            Beispiel einer Befehlsfolge mit aktiven Kollisionsmanagement:
                            ;-- Beleg automatisch vom aktuellen Datensatz laden mit Kollisionspeicher 0x0200
                              DocumentEdit(  2, "", "", 0x0282);
                            ;-- hier Belegdaten manipulieren ...
                              SetFileTemp( ... );
                              Import( ...);
                            ;-- Belegeditor mit manipulierten Beleg zum Veraendern in den Editor aufrufen mit aktivem Kollisionsspeicher aus erstem Aufruf
                              SetFileBackToPrevFile();
                              DocumentEdit( 2, "", "", 0x1200);
                PRGLOAD:  Makrokommando SetFileTemp() erweitert.
                           -Der Parameter kann als Vt Varianble uebergeben werden
                FAKTEDIT: Bei der Belegbearbeitung wird jetzt auch die Positionsliste beim Oeffnen vor dem Aufraeumen des Speichers geschuetzt.
       27.01.15 WINIFW:   HTML Kommando SetWindowSize() erweitert:
                            SetWindowSize( winHandle)
                            SetWindowSize( winHandle, breite, hoehe)
                            SetWindowSize( winHandle, breite, hoehe, links, oben)
                          - Besondere Wert:
                          Wird als Breite -1 angegeben, wird das Fenster maximiert, mit dem Wert -2 wird das Fenster minimiert.
                          - Rueckgabewert:
                          SetWindowSize gibt jetzt immer die Positionsdaten in Form von "x,y,b,h,Maximiert,Minimiert" des Fensters zurueck.
                          - SetWindowSize( winHandle)
                          Wird es nur mit einem Parameter "winHandle" aufgerufen, so erfolg keine Veraenderung des Fensters, sondern es werden nur die Positionsdaten zurueckggeben.
                          - SetWindowSize( winHandle, breite, hoehe)
                          Wird es nur mit breite und hoehe aufgerufen, so wird die Fentergroesse wie bisher gesetzt. Dabei wird die Breite und Hoehe um die Randangaben ergaenzt.
                          - SetWindowSize( winHandle, breite, hoehe, links, oben)
                          Wird mit breite,hoehe,links und oben aufgerufen, so wird das Fentergroesse wie angegeben positioniert. Die Werte fuer Breite und Hoehe werden ohne Ergaenzung angewendet.
                FAKTEDIT: Beim DocumentEdit() Modus "2048 0x0800: Es werden keine Meldungen beim Speichern angezeigt." werden jetzt auf Hinweise des Kunden oder Lieferanten nicht mehr angezeigt.
                          Beim Aendern eines Belegs und dem Hinweis dass bereits Folgebelege geschrieben wurden, wird bei "Zurück" der Vorgang wie Abgebrochen behandelt (Status Abort). Dies
                          wird im Makro in Verbindung mit dem Kommando SetAbort() korrekt beruecksichtigt.

671 02.02.15 PRNLIB: Neues Druckvorlagenkommando [.DruckerOptionen<]

                           Gibt die aktuell beim Druck gesetzte Druckeroptionen zurueck.
                DFPRN:    Bei Angabe eines Makros im Ausgabeformular (F4) mit "#" am Anfang, werden jetzt die Optionen aus dem Makro abgefragt und angezeigt.
                DFPRN:    Bei Angabe eines Makros im Ausgabeformular wird jetzt die komplette Druckerfindung durchlaufen, wenn im Feld "DRUCKER/zieldatei" eine Eingabe enthalten ist.
                PRGLOAD:  Kommado PrintFile() um fuenf weitere Parameter erweiter. FormularOptionen, DvlExtender, DruckerOptionen, FormularId und FormularParameter.
                            PrintFile( Ausgabeformular, Modus, Druckvorlage, Drucker, Kennzeichen, DvlOptionen, FormularOptionen, DvlExtender, DruckerOptionen, FormularId, FormularParameter)
                          Hinweis: 
                          - Bei Angaben von FormularOptionen (auch "") ist der Modus 0x400000 ("Druckrequester anzeigen") deaktiviert. Geben sie dafuer bei den FormularOptionen "Q" vor.
                          - Wird eine Wert fuer FormularId angegeben (ungleich ""), so wird versucht das Formular mit der ID zu laden. Die anderen angegeben Werte ueberschreiben die
                            Werte des geladenen Formulars. Die Werte DvlOptionen, DvlExtender und Formularoptionen aus dem Formular werden nicht geladen und muessen uebergeben werden.
                          - Die FormularParameter werden in das Fliesstextfeld des Formulars geschieben (auch "") und ersetzten den Inhalt. Die Formularparameter koennen mit [.97C87<] abgefragt werden.
                PRGLOAD:  Kommando SearchExt(), SearchAddExt() und SearchSubExt() um Modus 0x10000 erweitert.
                          - Mit Modus 0x10000 wird die Anzeige nicht auf nur Selektierte umgeschaltet. Der Dantenbankfokus wird nach dem Lauf wieder auf die urspruengliche Zeile gestellt.
       05.02.15 PRNLIB:   Neue DVL Kommando @#ReadProfile
                            @#ReadProfile Modus, Sektion, Variable, DefaultWert;
                          Der Wert wird in Vt zurueckgegeben.
       06.02.15 TOBITFW:  Umsetzung der eingehenden Email-Texte ueber einen UTF8-Konverter nur noch wenn das Zeichen "\xC3" (UTF8 Einleitung fuer Umlaute) vorkommt.
       09.02.15 ITBPRG:   Funktion STRING.executePrintText() erweitert.
                            STRING.executePrintText() ruft die Funktin zur aktuellen Datenbank die mit dem aktuellen ROWDEF Objekt verbunden ist auf.
                            STRING.executePrintText( ROWDEF $rd) ruft die Funktin zur Datenbank die mit dem $rd Objekt verbunden ist auf.

672 11.02.15 ITBPRG: Filter und Zugriffswerte fuer den Datenbankzugriffe von 63 auf 255 Zeichen erhoeht.

                PRNLIB:   Neue DVL Kommando [.HunkInfo<]
                          - Es wird Anzahl aktuell verwendeter User-Hunks und die Maximalanzahl mit Strichpunkt getrennt ausgegeben.
                PRNLIB:   Die maximale Anzahl Userhunks von 140 auf 255 erhoeht.
       13.02.15 PRGLOAD:  Kommado PrintFile() erweitert. Der Parameter "Ausgabeformular" kann jetzt auch eine Vt Variable sein.
       16.02.15 PRNLIB:   Neues Druckvorlagenkommando [.PrintFileModus<]
                           Gibt die Flags des aktuellen Ausdrucks uber das Makrokommando PrintFile und PrintFileId in der Form 0x00000000 zurueck.
                           Es ist nur zum Zeitpunkt der Ausfuehrung des Kommandos gesetzt.
       16.02.15 PRGLOAD:  Kommado PrintFile() erweitert. Der Parameter "Modus" kann jetzt auch eine Vt Variable sein.

673 19.02.15 PRNLIB: DVL Kommando [M um Parameter Vtnn erweitert.

                          Mit [MVt] oder [MVtnn] kann jetzt der Datenbankfokus aus Vt gesetzt werden. In Vt muss ein hexadezimaler 16-Bit Handle enthalten sein.
                          Es kann am einfachsten mit dem Kommando [Vt:=.MHANDLE] gesetz werden.
                          Beim Kommando [MVt wird der enthaltene Handle direkt ohne Konvertierung verwendet.
                          Beim Kommando [Mnn] wird der angegeben Wert als Datei-Id betrachtet und objekbezogen erweitert.
       09.03.15 IFWSTART: Neues ifwstart Exe V1.4 verfuegbar.
                          Das IFW wird im lokalen Temporaerverzeichnis des PCs mit dem Name "dir_ifwmain.exe" gestartet. Dabei steht
                          fuer "dir" der Verzeichnissname aus dem das ifwstart.exe gestartet wird.
                          Zusaetzlich stehen weiter Aufrufoptionen zur Verfuegung:
                          /revname -> Startet das IFW nach bisheriger Methode mit dem Dateiname wie er mit der neusten Revision im IFW-Binverzeichniss
                                      gefunden wurde.
                          /host    -> Startet das IFW mit dem Name "dir_ifwhost.exe" mit der oben genannten Regel fuer "dir".
                                      Die Option ist fuer Javascript-Hostanwendungen auf ASP-Rechner gedacht.
                          Hinweis:
                          Kann bei einer Aenderung der Revision das IFW nicht in das lokalen Temporaerverzeichnis kopiert werden (z.B. es laeuft gerade),
                          so wird automatisch das IFW im original Netzwerkpfad gestartet.
       12.03.15 DFPRN:    Beim Drucken ueber Makroeintraege mit # im Druckmenue werden jetzt die Buttons im Favoritenmanager korrekt registriert.

674 13.03.15 PRGLOAD: Kommando DoHtmlRequest() um Modus 0x8000 erweitert:

                            DoHtmlRequest();
                            DoHtmlRequest( "HtmlDatei");
                            DoHtmlRequest( "HtmlDatei", x, y);
                            DoHtmlRequest( "HtmlDatei", x, y, Modus);
                            DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                            DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                          Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                          Mit Modus koennen verschiedene Optionen geschaltet werden:
                              1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                              2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                              4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                              8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                             16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                            Es wird statt dessen der Tastencode F23 gesendet.
                                            Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                             32 (0x0020) -> Der Dialog wird nicht Modal durchgefuehrt. Nicht modale Fenster koennen auch minimiert werden.
                             64 (0x0040) -> Das Fenster kann nur einmal geoeffnet werden. Besteht es bereits wird das bestehende Fenster aktiviert.
                            128 (0x0080) -> Das Fenster wird maximiert geoeffnet
                            256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                            512 (0x0200) -> In der Titelzeile werden alle Systemmenuefuktionen und Buttons abgeschaltet
                           1024 (0x0400) -> Der Maximierungsbutton ist nicht sichtbar
                           2048 (0x0800) -> Der Minimierungsbutton ist nicht sichtbar
                           4096 (0x1000) -> Des Fenster wird im Fullscreenmodus ohne Rand geoeffnet (Kioskmodus)
                           8192 (0x2000) -> Der ASP-Host wird im Fehlerfall neu gestartet
                          16384 (0x4000) -> Fenster nicht sichtbar
                          32768 (0x8000) -> Das Fenster ersetzt das IFW Hintergrundfenster im WINIFW-Hauptfenster. Ist "HtmlDatei" leer, so wird das originale Hauptfenster gesetzt.
                          Mit Titel kann ein Fenstertitel angegeben werden.
                          Mit IconId kann ein Icon des Fensters angegeben werden.
                          Mit '?' angehaengte Parameter an der URL der HtmlDatei werden korrekt an den internen
                          Parameter pinID angehaengt.
                API_MFRM: Neues HTML-Kommando SetWindowTitle()
                            SetWindowTitle( winHandle, Titel);
                          Setzt den Fenstertitel der IFW-Aplikation. Ist nur aus dem IFW Hauptfenster aufrufbar.

675 16.03.15 WINIFW: Beim Login kann jetzt das Passwort asl MD5-Schluessel mit uebergeben werden. Er muss 32 Zeichen beinhalten. Das Passwort wird

                          mit ":" getrennt nach dem Namen eingegeben.
                          Beispiel eine Aufrufs fuer einen automatischen start: "user:3f2e1e13ecc4209f6d94b06df1c73ec6#0xb248 /p5200"
                API_MFRM: Beim Ummelden wird jetzt ein alternativ mit DoHtmlRequest() Modus 0x8000 auf dem Hauptfenster geoeffnete Seite auf das Standard-Hauptfenster zurueckgesetzt.
       27.03.15 PRGLOAD:  Neues Makrokommando Wait()
                            Wait(Anzahl)
                            Wait(Anzahl,Millisekunden)
                          Laesst das IFW Anzahl * Millisekunden lang pausieren.
                          Werden keine Millisekunden angegeben, so werden 10 Millisekunden verwendet.
       30.03.15 JS:       Beim Laden eines Javascript-Moduls in die IFW JavaScript-Konsole wird jetzt bis zu 10ms gewartet bis der Ladevorgang abgeschlossen ist.
       07.04.15 PROD:     In der Produktion werden Positionen mit dem Lager "BW" (Beistellware) nicht mit im EK eines K-Artikels einkalkuliert.
                          Hinweis: Waren aus dem Lager "BW" haben ein Sonderstatus: Sie werden Lagertechnisch nicht gebucht und gehen nicht in Gebrauch. Sie tauchen
                                   nur dispositiv auf.
                PROGLOAD: Das Kommando AddColorFilter ist jetzt auch auf Listen ohne Farbfeld anwendbar.
                          Es wird nur die Farbangabe unterstuetzt. Eine Icon-Angabe wird nicht unterstuetzt.
       09.04.15 VIDF:     Schutzverletzung beim Sortieren von Fliesstextspalten beseitigt.
       13.04.15 WINIFW:   Beim Kommando DoHtmlRequest mit modalem Aufruf wird jetzt auch bei Rechtsklick->Funktion das Fenster korrekt inaktiv geschaltet.
       20.04.15 PINBOARD: Beim Abbruch des Ausdrucks einer Nachricht vom Desktop kommt keine Fehlermeldung "... -224" mehr.
       22.04.15 FFINVENT: Das leeren der Datenbank ARTINV erfolgt jetzt ueber ein Loeschen aller Saetze. Damit wird eine Kollision mit eingeschraenken Rechte vermieden.
                WINLIB    Option '\x6' beim Speichern einer Textzeile im Fliesstext erweitert:
                           Das Kommando stellt die Zeilenbreite ein. Zusaetzlich kann jetzt auch ein anhaenger Text verarbeitet.
                           Der Text beginnt beim ersten nicht nummerischen Zeichen, spaetestens beim 3. Zeichen.
                           Das Zeichen am schluss ";" wird uebersprungen.
                           Es gibt die Kommandos a fuer append und s fuer set.
                           a haengt den Text an, s ersetzt den Text, keins von beiden veraendert den Text nicht.
                          Beispiel: "\x660sHallo" setzte die Zeichenbreite auf 60 und setzt den Text auf "Hallo".
                          Beispiel: "\x660s;Hallo" setzte die Zeichenbreite auf 60 und setzt den Text auf "Hallo".
                          Beispiel: "\x6123a4567890" setzte die Zeichenbreite auf 123 und haengt den Text "4567890" an
                          Beispiel: "\x6123;a4567890" setzte die Zeichenbreite auf 123 veraendert den Text nicht, "a4567890" wird verworfen.
                          Beispiel: "\x612s;34567890" setzte die Zeichenbreite auf 12 und setzt den Text "34567890".
                          Beispiel: "\x612s34567890" setzte die Zeichenbreite auf 12 und setzt den Text "34567890".

676 30.04.15 HTMLVIEW: Beim HTML Massendruck konnte eine Schutzverletzung auftreten. Problem beseitigt.

       06.05.15 PRGLOAD:  Kommando ExecuteItemFunction() Modus 4 erweitert:
                          Modus: 4 Es werden keine Benutzerhinweise ausgegeben, falls beim Feldabruf internen Hinweise vorhanden sind.
                                   Die Meldung "Dies ist eine Lieferadresse, Rechnungsadresse laden?" wird ebenfalls nicht mehr ausgegeben.
                                   Es wird jetzt auch die Meldung "Artikel gesperrt!" im Verkauf nicht mehr ausgegeben.
       11.05.15 PRGLOAD:  Neues Makrokommando DocumentCalcList()
                            DocumentCalcList()
                            DocumentCalcList(Modus)
                          Berechnet die Summe der Positionsliste eines Belegs. Die Funktion kann nur auf einen temporaeren Beleg angewendet werden.
                          Es wird der aktuelle temporaere Kopfsatz gelesen, die Positionsliste berechnet und im aktuellen temporaeren Kopfsatz
                          gespeichert.
                          Modus:
                            4: Die (offene) Belegmaske wird auf dem Bildschirm aktualisiert.
       12.05.15 PRGLOAD:  Makrokommando ImportFile um Modus 0x2000 erweitert.
                          Modus:
                          0x0001 1     Datei nach erfolgreichen import löschen
                          0x0002 2     Felder die nicht vorhanden sind nicht melden
                          0x0004 4     Keine Rechenoperationen der Felder auslösen
                          0x0008 8     Es werden alle Dateien ImportDatei aus dem Verzeichnis eingelesen
                          0x0010 16 (IMPORT_CLRDATA)
                                       Es können beim Import Datenbereiche in der Datenbank zuvor gelöscht werden. Damit ist es möglich Datenbereiche komplett neu einzulesen und die bereits gepeicherten Daten in dem Bereich automatisch zuvor zu löschen.
                                       Dazu muss in der Datei ein Feld das einen Datenbereichsschlüssel darstellt vorhanden sein. Das Feld muss mit einem Indexpfad versehen sein. Beim Import der neuen Daten muss das Feld mit dem entsprechenden Schlüsse versehen werden. In der Importvorlage muss das Feld über die Option @Cxx; mit xx als Feldnummer angegeben werden. Das Feld xx muss durch den Import mit dem entsprechenden Schlüsseltext versehen werden.
                                       Wird beim Import ein Datensatz gespeichert, dann wird geprüft ob der angegeben Schlüssel das erste mal gepeichert wird. Ist es das Erstemal, dann werden zuerst alle in der Datenbank enthaltenen Datensätze mit dem Schlüssel gelöscht und dann der Satz gepeichert. Wurde bei einem Importlauf der Schlüssel schon einmal gepeichert, so erfolgt keine Löschung mehr. Bei kombinierten Pfaden werden alle Datensätze gelöscht, die den Schlüssel im ersten Feld haben.
                          0x0020 32 (IMPORT_RENAME_FILE)
                                       Die Datei wird vor dem Import Umbenannt, aber nach dem Importlauf ohne Modus 1 nicht gelöscht (Die Datei bleibt mit dem temporären Namen erhalten). Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                          0x0040 64 (IMPORT_NOWRITE)
                                       Es werden keine Daten beim Import gespeichert. Eine evt. aktive Löschung mit Modus 16 (IMPORT_CLRDATA) wird aber durchgeführt. Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                          0x0080 128 (IMPORT_SELECT)
                                       Es werden alle importierten und geschrieben Datensätze hinzuselektiert.
                                       Bei zusätzlich angegebener Option 64 (IMPORT_NOWRITE) werden keine Datensätze geschrieben, aber die Selektion trotzdem durchgeführt.
                          0x0100 256   Die Datenbank wird im Modus "OnlineBuchen" beim Import verarbeitet.
                          0x0200 512 (~IMPORT_VIEWCNTREQUEST)
                                       Die Anzeige des Zaehlrequests in der Windowsversion wird unterdrückt.
                          0x0400 1024 (IMPORT_NOUSERBREAK)
                                       Der Benutzer kann den Einlesevorgang nicht abbrechen.
                          0x0800 2048  Der Import wird als Belegimport durchgefuert. Die Option ist beim Import von temporaeren Belegdatenbanken sinnvoll.
                                       Der Aenderungsmodus ist auf den geladenen Beleg anwendbar.
                                       In den Positionen werden beim Einlesen die Feldinhalte nicht geschleppt (Im Gegensatz zum Kommand DocumentImport()!).
                          0x1000 4096  Die Option @U wird im Kompatibilitaetsmodus (Rev. <651) ausgefueht.
                          0x2000 8192  Wird beim Import beim Buchen des Datensatzes eine Meldung die zum Abbruch fuehrt erzeugt, wird die Meldung nicht angezeigt sondern fuehrt zu einem sofortigen
                                       Abbruch der Importliste und wird in Vt zurueckgegeben.

677 18.05.15 PRGLOAD: Neues Makrokommando SetUnattendedError()

                          SetUnattendedError()
                          SetUnattendedError(Sprungziel)
                          - Damit kann "Sprungziel" als Sprungmarke aktiviert werden. Es wird angesprungen, wenn eine Funktion einen Fehler generiert.
                            Fehler werden nicht angezeigt, sondern im Makro wird auf die Sprungmarke verzweigt.
                          - Tritt ein Fehler auf, so ist in der Vt-Variable der Fehlertext enthalten. Treten mehrere Fehler auf, 
                            so sind sie mit einem Zeilenumbruch getrennt in der Vt-Variable enthalten.
                          - Nach dem Aufruf der Sprungmarke durch einen Fehler, wir die Sprungmarke automatisch geloescht.
                          - Ein Fehler bricht das Makro nicht ab.
                          - Mit SetUnattendedError() ohne Angabe, kann das Abfangen der Fehlermeldungen wieder deaktiviert werden.
                          - Beim Aktivieren des Abfangens von Fehlermeldungen wird der vorherige Aktivierungszustand gemerkt.
                          - Beim Beenden des Makros wird das Abfangen von Fehlermeldungen zurueckgestellt (falls aktiv).
       19.05.15 FAKTMAIN: Ein neuer Aufrufparameter /y eingefuehrt. Er erzwingt ein Beenden des IFW's wenn ein Fehler auftritt. 
                          In Verbindung mit /x kann ein Neustart des IFW einer Session im Hostmodus erzwungen werden.
                          Aufrufbeispiel: "IfwStart gast /p5600 /x /y"

678 20.05.15 PRNLIB: Zuweisung [V1:|…] [V1:&…] und [V1:~…] bei Zahlenvariablen implementiert.

                          Zahlenvariablen werden in ein Integerwert umgewandelt (ohne Rundung) und die 
                          Binaere Operation '|'-ODER, '&'-UND oder '~'-NOT ausgefuehrt und zugewiesen.
       22.05.15 FFBETON:  Neuer INI Schalter LieferscheinstapelKfzWiegedatenLoeschen in der Sektion [System]
                           ;LieferscheinstapelKfzWiegedatenLoeschen: Wert 0/1. Default 0.
                           ;In Verbindung des Moduls "Kraftfahrzeuge" in der Betonbranche
                           ;kann mit dem Wert 1 das Loeschen der Wiegedaten im Fahrzeug erzwungen werden,
                           ;nachdem der Lieferscheinstapeleintrag gespeichert wurde.
                           ;Mit dem Wert 0 verbleiben die Wiegedaten im Fahrzeug bis zur naechsten Wiegung.
                           ;LieferscheinstapelKfzWiegedatenLoeschen=0
       27.05.15 DFPRN:    Die IFW Belegausgabe beim Speichern/Drucken eines Beleges setzt jetzt die Variable [.PrintFileModus<] auf 0x80.
                          Damit wird der Modus "nur aktuellen Satzt drucken" auch bei eingeschleiften Moduldruckmakros wie "usr_formular/beleg_h1.pru" 
                          korrekt beruecksichtigt.

679 27.05.15 ITBPRG: Das Kommando ForEachSelected() erweitert.

                           Als optionale Parameter kann jetzt ein Funktionsmodus und ein Offset mitgegeben werden
                             ForEachSelected( INT $iMode);
                             ForEachSelected( INT $iMode, INT $iOffset);
                           $iMode:
                            0 -> Funktion wie bisher
                            1 -> die Eintraege werden in umgekehrter Reihenfolge zurueckgegeben.
       28.05.15 ITBPRG:     2 -> Wenn keine Selektion besteht wird kein Eintrag anstatt des aktuellen Satzes zurueckgegeben.
                           Zur Angabe mehrer Modis die Werte addieren.
                           $iOffset:
                            Es werden die Datensaetze ab dem dem offset ausgegeben. Standardmaessig ist der offset 0.
       28.05.15 BRECLIB2:  Beim Erzeugen von Btrieve-Dateien wird jetzt bei duplicated-keys ab eine Gesamt-Keylaenge von 8 Zeichen
                           die Option BK_REP_DUP "Repeated Duplicated Key" gestetzt. Das vermindert den Speicherbedarf bei doppelt vorkommenden Keys.
                           Die Option ist im neuen Instmask.exe enthalten.
       29.05.15 ITBPRG:    Modifizierter Funktionsaufrufe ForEachSelected() auch ohne Parameter zugelassen.
       29.05.15 DFPRN:     IFW-Tabellen auf HTML Druck mit Option "E" fuer Einzeldruck fuehrt jetzt auch das Kennzeichnen aus.
                           Bei Frage "Kennzeichen bereits gesetzt" und Taste Escape fuer Abbruch wird jetzt keine weitere Frage nach "Kennzeichen setzten" gestellt.

680 09.06.15 PROGLOAD: Bei Makrokommandos werden Text-Parameter ohne Angabe (kein Zeichen als Parameter (,,) ) als ohne Angaben gewertet

                           Bei String-Angaben kann mit \xhh mit h als Hexwert 0-0 a-f eine Zeichen in Hexadezimaler Form vorgegeben werden.
                           Der Wert sollte immer mit 2 Zeichen angegeben werden, mehr maximal 2 Zeichen werden nicht beruecksichtigt.
       10.06.15 WINIFW:    Kurseingabe auf dem Kursfeld aktiviert.
                API_MFRM:  IFW-Kalenderfunktionen fuer HTML um Funktion 9 erweitert:
                            SetTableItemData( winHandle, func, column, index);
                            Funktionen:
                            func 1:itemEdit( column, index); 
                            func 2:setItemStartDate( column, index); //column&0xFF00 new deltaColumn, index&0xFF00 new Y-Raster-Position
                            func 3:itemDelete( column, index); 
                            func 4:itemDial( column, index); 
                            func 5:itemMail( column, index); 
                            func 6:itemPrint( column, index); 
                            func 7:itemAttachment( column, index); 
                            func 8:itemNew( column, index);          //column&0x00FF startColumn, column&0xFF00 endColumn, index&0x00FF start Y-Raster-Position, index&0xFF00 end Y-Raster-Position
                            func 9:setItemStartDateAll( column, index); //column&0xFF00 new deltaColumn, index&0xFF00 new Y-Raster-Position <- verschiebt alle zusammengehoerigen Termine und setzt die Texte
                            func 10:userOn( index
                            func 11:userOff( index)
                            func 12:userToggle( index)
                            func 20:scrollLeft( index)  index = cnt column
                            func 21:scrollRight( index) index = cnt column
                            func 22:setDate( index)     column = "YYYY", index = "MMDD"
                DFPRN:     Bei Druck im Druck durch Makrodruck wird jetzt ein zuvor angesprochener Druckerkanal geschlosse. Bei WIN: und dann GDI: Druck kamm es zu einer Umleitung des GDI: Datenstroms.
                WINIFW:    Beim GDI: Druck oeffnet sich die Druckvorschau nicht mehr.
                FAKTEDIT:  Beim DocumentEdit() Modus "2048 0x0800 Es werden keine Meldungen beim Speichern angezeigt" wirkt jetzt auch bei Funktion "4:Von Beleg schreiben".
       12.06.15 VIDF:      Beim Konvertieren der IFW Tabelle in XML Daten wird jetzt bei Einzel-Tags (evt. mit mit Parameter) ohne Daten die schliessende Klamme > mit /> ausgegeben.

681 19.06.15 API_MFRM: Neues HTML-Kommando GetWindowLocation()

                            GetWindowLocation( Modus);
                          Fuer diese Kommando wird kein winHandle benoetigt. Damit ist es moeglich eine Verbindung zum aufrufenden IFW-Fenster herzustellen, ohne einen Uebergabewert ueber die url.
                          Modus 0: Laedt die HTML-Aufrufszeile mit der das HTML Dokument aufgerufen werden. Entspricht der Javascriptvariable window.location.href
                          Modus 1: Laedt die HTML-Aufrufszeile mit der das HTML Dokument aufgerufen werden. Entspricht der Javascriptvariable window.location.search
       19.06.15 PRGLOAD:  Kommando ExecuteItemFunction() Modus 4 erweitert:
                          Modus: 4 Es werden keine Benutzerhinweise ausgegeben, falls beim Feldabruf internen Hinweise vorhanden sind.
                                   Die Meldung "Dies ist eine Lieferadresse, Rechnungsadresse laden?" wird ebenfalls nicht mehr ausgegeben.
                                   Es wird jetzt auch die Meldung "Artikel gesperrt!" im Verkauf nicht mehr ausgegeben.
                                   Es wird jetzt auch die Meldungen zum OP-Limit nicht mehr ausgegeben.

682 02.07.15 PRNLIB: Neues DVL Kommando @#FunctionJS

                            @#FunctionJS Funktionsname, Parameter1, Parameter2, Parameter3 ... Parameter7;
                          Ruft eine Javascriptfunktion mit dem Namesapce des Formulardateinamens auf.
                          Wird keine Initialisierung zuvor vorgenommen wird automatisch die IFW Standardbibliothek module/ifw_system/_jsbase.js initialisiert.
                          Als Funktionen stehen die aus der registrieten Bibliothek zur Verfuegung.
                          Der Namespace ist defaultmaessig der eigene Formularname (Dateipfad der aktuellen Druckvorlage).
                          Rueckgabewerte sind in Vt enthalten.
       02.07.15 PRNLIB:   Neues DVL Kommando @#CallJS
                            @#CallJS Konsolekommando, Namespace, Parameter1, Parameter2, Parameter3 ... Parameter8;
                            @#FunctionJS Funktionsname, Parameter1, Parameter2, Parameter3 ... Parameter8;
                          Ruft eine Javascriptfunktion aus der Javascriptkonsole direkt auf.
                          Rueckgabewerte sind in Vt enthalten.
                          Hinweis:
                            Mit CallJS iste es auch moeglich eigene Bibliotheken zu registrieren und somit eigene Javascriptfunktionen aufzurufen.
                            Dazu ist zuert mit Konsolekommando "IfwRegisterModul" die Bibliothek zu registrieren. Anschliessend koennen die Funktionen
                            Mit Konsolekommando "IfwCallModulFunction" aufgerufen werden.
                          Beispiel:
                            ;--Registriert unter dem Namespace "eigenes Formular" die Javascriptdatei "Formularname.js".
                            [Vt1:G]
                            [Vt2:G\".js\"]
                            @#CallJS "IfwRegisterModul", Vt1, Vt2;
                            ;--Ruft eine Funktion mit dem Namespace "eigenes Formular" aus "Formularname.js" auf.
                            [Vt1:G]
                            @#CallJS "IfwCallModulFunction", Vt1, "Funktionsname", "Parameter1";
                            ;--Wird der Default-Namespace wie oben verwendet ("eigenes Formular"), kann die Funktion auch mit @#FunctionJS aufgerufen werden
                            @#FunctionJS "Funktionsname", "Parameter1";

683 06.07.15 IFW: Kommando WriteProfile() Modus "file" um #BASE64# erweitert.

       09.07.15 PRGLOAD:  Kommado PrintFile() erweitert.
                           PrintFile( Ausgabeformular, Modus, Druckvorlage, Drucker, Kennzeichen, DvlOptionen, FormularOptionen, DvlExtender, DruckerOptionen, FormularId, FormularParameter)
                           Der Werte DvlOptionen wird bei angegebenen Ausgabeformular gesetzt.
                           Bisher wurden bei angebenen Ausgabeformular nur der Drucker und FormularOptionen berucksichtigt.
                           Es koennen mit ~ auch Kennzeichen entfernt werden, die gilt jetzt auch bei FormularOptionen.

684 16.07.15 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "System":

                           LagerpositionsdatumFIFO: Wert 0/1, Default 0.
                           Das Feld "Datum" in den Lagerpositionen wird als FIFO Datum genutzt.
                           Wert 0:
                           - Beim Abrufen eines Artikels in der Maske wird das Datum auf Heute gesetzt
                           - Bei Neuanlage einer Position wird das Datum auf Heute gesetzt
                           Wert 1:
                           - Beim Abrufen eines Artikels in der Maske wird das Datum auf Heute gesetzt
                           - Bei Neuanlage einer Position wird das Datum auf Heute gesetzt
                           - Durch eine Lagerbuchung die Lagermenge von kleiner gleich 0 auf groesser 0 geaendert, wird das Datum auf Heute gesezt.
                           - Durch den Vorgang "Lagerumbuchung" oder "Kommissionierschein" die Lagermenge von kleiner gleich 0 auf groesser 0 geaendert, wird das Datum auf das Datum des
                             Bezugslager gesezt (Quelllager auf Ziellager, Ziellager auf Quelllager).
       17.07.15 BRECLIB:  Suche ueber Datensaetze bei Linearfilter von 65k auf 6,5mio erhoeht
                FAKTPRJ:  webbew und webevt mit 2-Dateienarchiv ausgestattet

685 17.07.15 ITBPRG: Kommando OutRowBegin() und OutRowEnd() aktiviert:

                           OutRowBegin() wird immer vor dem ersten Aufruf von OutRow() aufgerufen, wenn sich die Baumstruktur erhoeht. Der Fokus (RowArray, RowStr, Datenbankfokus) steht auf dem ersten Satz.

686 20.07.15 BRECLIB: Anzeigefehler (seit Rev. 684, Release 2) bei der Ermittlung der vorhandenen Datensaetze beseitigt.

                FFARTPR:  Schutzverletzung bei Speichern eines Variantenartikels mit speziellen Preisen im Verkauf beseitigt.
       21.07.15 PRGLOAD:  Das Kommando DocumentEdit() um Kommissionierscheine erweitert.
                DFLIB2:   Schlaegt das Loeschen einer temporaren Datenbank wegen dem TTS-System fehl, werden die Datensaetze einzeln geloescht (df_clrtemp).

687 29.07.15 DFEDLIB: Dateianhang-, Kategorie- und Attribusdatenbanktabellen gelten jetzt als archivierbar.

       30.07.15 DFEXTFNC: HTML-Kommando GetSysInternalsObject() um Modus 0x0008, 0x0010 und 0x0020 erweitert
                            GetSysInternalsObject( Objektname, Modus);
                          Modus:
                            0x0001: Ausgabe der aktuell zugewiesenen Rechte (220)
                            0x0002: Ausgabe Felder in der Datenbank (221)
                            0x0004: Ausgabe der Suchpfade in der Datenbank (222)
                            0x0008: Dynamische Objekte des Objekts werden vor der Ausgabe initialisiert
                            0x0010: Ausgabe der zueghoerigen Dateien der Datenbank, inklusive dynamischer Objekte (223)
                            0x0020: Erzeugung fehlender Dateien der Datenbank, inklusive dynamischer Objekte
                DFLIB:    Anzahl der dynamischen Objekte von 128 auf 256 erhoeht.

688 17.08.15 DFEDLIB: Dateianhang-, Kategorie- und Attribusdatenbanktabellen werden jetzt beim Loeschen nich in den Papierkorb verschoben.

                          Handle-Problem beim Loeschen von Attachments beseitigt.
       18.08.15 PRGLOAD:  Kommando ExecuteItemFunction() Modus 4 erweitert:
                          Modus: 4 Es werden keine Benutzerhinweise ausgegeben, falls beim Feldabruf internen Hinweise vorhanden sind.
                                   Die Meldung "Dies ist eine Lieferadresse, Rechnungsadresse laden?" wird ebenfalls nicht mehr ausgegeben.
                                   Es wird jetzt auch die Meldung "Artikel gesperrt!" im Verkauf nicht mehr ausgegeben.
                                   Es wird jetzt auch die Meldungen zum OP-Limit nicht mehr ausgegeben.
                                   Es wird jetzt auch die Nachfrage "Ersatzartikel auswaehlen" nicht mehr ausgegeben.
       24.08.15 DFED2LIB: Beim Neuanlage wird bei einer Nummernkollision jetzt auch beim Feld Primaerkey (145) 3 Wiederholversuche unternommen.
                          Bisher wurde nur das Feld Nummer (32) und laufende Nummer (54) beruecksichtigt.

689 25.08.15 IFWTAB: Neuer Prefix "virtual" bei Funktionsdeklarationen implementiert.

                          Wird der prefix "virtual" bei einer Funktionsdeklaration voran geschrieben, so kann die Funktion
                          durch eine zweite Deklaration ueberschrieben werden.
                          Dadurch entsteht die Moeglichkeit Funktionen einer zentralen Vorlage durch eine Erweiterung zu ersetzen.
                          Der Rueckgabewert muss gleich deklariert sein, ansonsten wird die Fehlernummer -1159 ausggeben.
       28.08.15 WINIFW:   Werden im Artikelstamm die Dateianhaenge geoeffnet und der Artikelstamm ueber das Hauptmenue nochmals aufgerufen,
                          bleibt das Dateianhangsmenue jetzt im Vordergrund.
       31.08.15 PRGLOAD:  Das Kommando CallMailAPI unterstuezt jetzt Texte mit der Angabe "File:" wenn die Angabe auch ueber eine Vt Variable uebergeben wird.
                          Der maximale Textlaenge ist jetzt 200000 Zeichen (bisher 60000).
       07.09.15 PRGLOAD:  Kommando SearchExt(), SearchAddExt() und SearchSubExt() um Modus 0x0080 erweitert.
                          - Mit Modus 0x0080 beginnt die Suche ab dem aktuellen Datensatz, nicht ab dem ersten Datensatz.
                            Der Datensatz muss zuvor mit GetRecord() vorgegeben werden.
       08.09.15 PRGLOAD:  Neues Kommando TextSearchExt()
                           TextSearchExt( Modus, Titel, Suchtext, Feldnummer1);
                           TextSearchExt( Modus, Titel, Suchtext, Feldnummer1, Feldnummer2, ... , Feldnummer8);
                           Wie TextSearch(), nur mit Modus.
                           - Wortteile in Feldern werden gesucht. Es wird eine schnelle lineare Suche ausgefuehrt.
                           - Es werden alle Datensaetze selektiert die alle angegebenen Woerter wenigstes einmal in den
                             angegebenen Feldern enthalten.
                           - Wird ein Titletext angegeben, so wird eine Benutzereingabe des Suchtextes eingeblendet.
                           - Wird kein Titeltext angegeben, wird sofort mit der Suche von "Suchtext" begonnen.
                           - Wird kein Suchtext angegeben, so wird der letzte Suchtext der Datenbank automatisch vorgeschlagen
                             und auch dort vermerkt.
                          - Modus 0x0020: Kein Benutzerabbruch moeglich
                            Modus 0x0040: Der Schnellsuchmodus wird auch bei aktiver Summierung erzwungen. Die Summe wird dabei nicht gebildet und ist somit inkorrekt.
                                          Nur zur Verwendung von internen Suchlaeufen, deren Ergebnis nicht vom Anwender in der Listenuebersicht angezeigt werden.
                          - Modus 0x0080  beginnt die Suche ab dem aktuellen Datensatz, nicht ab dem ersten Datensatz.
       13.09.15 PRGLOAD:  Kommando DoHtmlRequest() um Modus 0x10000 erweitert:
                            DoHtmlRequest();
                            DoHtmlRequest( "HtmlDatei");
                            DoHtmlRequest( "HtmlDatei", x, y);
                            DoHtmlRequest( "HtmlDatei", x, y, Modus);
                            DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel");
                            DoHtmlRequest( "HtmlDatei", x, y, Modus, "Titel", IconId);
                          Mit x und y kann die Groesse des Fensters in Pixel angegeben werden.
                          Mit Modus koennen verschiedene Optionen geschaltet werden:
                              1 (0x0001) -> Die Taste ESC schliesst das Fenster nicht mehr.
                              2 (0x0002) -> Das Fenster hat keinen eingedrueckten Innenbereich mehr (Fensterrahmen).
                              4 (0x0004) -> Die Scrollbar auf der rechten Seite wird versteckt.
                              8 (0x0008) -> Die Taste F8 maximiert das Fenster nicht mehr.
                             16 (0x0010) -> Die Taste F5 refresht die HTML-Seite nicht mehr.
                                            Es wird statt dessen der Tastencode F23 gesendet.
                                            Ebenfalls wird die Taste F6 umdefiniert. Es wird der Tastencode F24 gesendet.
                             32 (0x0020) -> Der Dialog wird nicht Modal durchgefuehrt. Nicht modale Fenster koennen auch minimiert werden.
                             64 (0x0040) -> Das Fenster kann nur einmal geoeffnet werden. Besteht es bereits wird das bestehende Fenster aktiviert.
                            128 (0x0080) -> Das Fenster wird maximiert geoeffnet
                            256 (0x0100) -> Es wird der IFW-PHP Dienst aktiviert.
                            512 (0x0200) -> In der Titelzeile werden alle Systemmenuefuktionen und Buttons abgeschaltet
                           1024 (0x0400) -> Der Maximierungsbutton ist nicht sichtbar
                           2048 (0x0800) -> Der Minimierungsbutton ist nicht sichtbar
                           4096 (0x1000) -> Des Fenster wird im Fullscreenmodus ohne Rand geoeffnet (Kioskmodus)
                           8192 (0x2000) -> Der ASP-Host wird im Fehlerfall neu gestartet
                          16384 (0x4000) -> Fenster nicht sichtbar
                          32768 (0x8000) -> Das Fenster ersetzt das IFW Hintergrundfenster im WINIFW-Hauptfenster. Ist "HtmlDatei" leer, so wird das originale Hauptfenster gesetzt.
                               (0x10000) -> Popupmenue mit Rechtcklick der Maus wird zugelassen.
                          Mit Titel kann ein Fenstertitel angegeben werden.
                          Mit IconId kann ein Icon des Fensters angegeben werden.
                          Mit '?' angehaengte Parameter an der URL der HtmlDatei werden korrekt an den internen
                          Parameter pinID angehaengt.

690 14.09.15 FFVERSND: Bei der Versandkosten ueber Pakete wird jetzt beim netto-Wert evt. schon vorhandene Versandkosten und Verpackungskosten ignoriert.

                          Faelschlicherweise wurde ein Paket versandkostenfrei durch bereits vorhandene Versandkosten.
                PRGLOAD:  Bei DoHtmlRequest() ist jetzt der Hidde-Modus auch mit Modalen Fenstern zulaessig. Wird es nicht sichtbar gemacht, erscheint es nach 5 Sekunden automatisch.
       15.09.15 DFPDF:    Dateianhang-, Kategorie- und Attribusdatenbanktabellen gelten jetzt als archivierbar, aber nur noch wenn die Quelldatei ein 2 Dateien-Archiv besitzt.
       15.09.15 FAKTPRJ:  Papierkorb bei webbew und webevt entfernt.
       07.10.15 DFIMP:    Schutzverletzung beim Import von Fliesstextfeldern mit Inhalt groesser 32000 beseitigt.

691 08.10.15 FAKTEDIT: Systemmakro .$89 implementiert, wie .$84, .$85 und .$86

                           .$84:Buchungsmakro beim Beleg einbuchen, innerhalb der TTS-Kapselung
                           .$85:Buchungsmakro beim Beleg rueckbuchen, innerhalb der TTS-Kapselung
                           .$86:Buchungsmakro beim Beleg speichern vorm Material einbuchen, innerhalb der TTS-Kapselung
                           .$89:Buchungsmakro beim Beleg rueckgaengig machen, innerhalb der TTS-Kapselung. Es wird zuerst .$85 aufgerufen, dann .$89.
                           Die Buchungsmakros muessen bei fehlerfreiem Durchlauf den Wert 1 zurueckgeben. Bei einem Abbruch den Wert 2.
                           Alle anderen Werte, auch der Wert 0, werden als Fehler gewertet.
       08.09.15 PRGLOAD:  Kommando TextSearch() und TextSearchExt() erweitert.
                           TextSearch( Titel, Suchtext, Feldnummer1, Feldnummer2, ... , Feldnummer8);
                           TextSearchExt( Modus, Titel, Suchtext, Feldnummer1, Feldnummer2, ... , Feldnummer8);
                          Beim Wert FeldnummerN kann die Nummer mit einer . Angabe ergänzt werden. Diese Angabe steuert die durchsuchte Feldlaenge.
                          Die Btrieve Datenbank bietet maximal 255 Stellen zur linieraen Suche an. Bei Angabe mehrerer Felder kann dies schnell 
                          ueberschritten werden. Bei einer Ueberschreitung wird die Fehlernummer -62 ausgegeben.
                          Durch das Limitieren von der durchsuchten Laenge koennen mehr verschiedene Felder einbezogen werden.
                            Beispiel:
                           TextSearch( "", "Testsuche", 33, 62); -> Durchsucht das komplette Feld 33 und das komplette Feld 62.
                           TextSearch( "", "Testsuche", 33.10, 62); -> Durchsucht vom Feld 33 die ersten 10 Zeichen und das komplette Feld 62.
                           TextSearch( "", "Testsuche", 33.10, 62.20); -> Durchsucht vom Feld 33 die ersten 10 Zeichen und die ersten 20 Zeichen vom Feld 62.
       09.09.15 IFWTAB:   Bei Kommando AddRow wir bei Logmodus ~ im Fehlerfall zusaetzlich der Eintrag "ITB: AddRow, erg:%d, err:%d: ..." ins Userlogbuch geschrieben.
       21.10.15 PRNLIB3:  Neues Druckvorlagenkommando [.CommandLine<]
                           Gibt die Parameter der Aufrufszeile des IFW-Programms aus
                          Neues Druckvorlagenkommando [.HostPort<]
                           Gibt den Port des IFW-Programms aus auf dem das IFW als ASP-Host laueft. 0 Wenn nicht mit der Port Option gestartet.

692 29.10.15 API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0040 impelemetiert:

                           Es wird ausgegeben, ob gerade gedruckt wird (Jobanzahl != 0) -> 1 es wird gedruckt 0 -> kein druck laeuft.
                            "1\t206\tPrintBusy\t%i\t\r\n"
                API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0080 impelemetiert:
                           Es die HostId und die Kommandozeile ausgegeben
                            "1\t207\tPort-CmdLine\t%i\t%.400s\t\r\n"
                STDPRJ:   callDocustoreAppendFiles() benutzt jetzt DF_RESMHD2 handle statt DF_RESMHD1. Wird beim Drucken mit Dateianhang asynchron aufgerufen.
       03.11.15 ITBPRG:   Kommando SetOutputModeHTML() Modus 2 geaendert:
                            SetOutputModeHTML( INT $iMode);
                          - Mit $iMode ungleich 0 wird der HTML Ausgabemodus aktiviert.
                            Dabei werden die Tabellendaten in Form eines HTML-Strings intern generiert.
                            Es werden keinerlei Daten in die Zieldatei unmittelbar geschrieben.
                            Zur Ausgabe der Daten in die Zieldatei muessen die Kommandos Print() oder PrintFile() in der Funktion PostPrint() aufgerufen werden.
                            Um die Tabellendaten in die Datei auszugeben muss mit dem Kommando PrintFile() eine Textdatei ausgegeben werden die den Platzhalter
                            %HTML_CSV_DATA% enthaelt (siehe unten).
                          - Mit $iMode 2 werden die HTML Daten in einem erweiterten Format mit fuehrenden Ebenenangaben und Variablenbezeichnung "col%%%=" erzeugt.
                            Es wird ein Zeilenumbruch nicht in <br> umgewandelt.
       06.11.15 ITBPRG:   Zeilenausgabe der Tabellendaten im HTML-Modus (SetOutputModeHTML) um Faktor 2 beschleunigt.
                          Beim Drucken von Tabellen ueber das F4 Druckmenue wird jetzt der Requester fuer Zeilenausgabezaehler immer nach 2 Sekunden angezeigt.
                WINIFW:   Das HTML-Kommando SetWindowSize() gibt jetzt als 7. Parameter zurueck ob das Fenster sichtbar ist.

693 09.11.15 DFPRN: Beim HTML und GDI Druck wird jetzt die temporaere Druckdatei "ifw.htm" und "ifw.iel" um die Process-ID erweitert (z.B. ifw-0EFC.htm).

                          Damit werden Kollisionen bei mehreren automatisierten Druckvorgängen verhindert.
       17.11.15 API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0100 impelemetiert:
                           Es wird Der IFW-Programmstartzeitpunkt und der Loginstartzeitpunkt im time-Format ausgegeben. Zusaetzlich wird die Systemlaufzeit in Millisekunden und ProzessId hexadezimal 4-stellig ausgegeben.
                            "1\t208\tUptime\t%llu\t%llu\t%lu\t%s\t\r\n"
       17.11.15 POPUPMNU: Bei einem Aufruf eines Makros mit ALT 1-9 innerhalb eines temporaeren Beleges wird die Belegmaske zuvor gespeichert.

694 23.11.15 WINIFW: Ist ein Alert-Requester aus der Javascriptkonsole offen, so wird er auch beim Focuswechsel im Vordergrund angezeigt.

       01.12.15 DVAPI32:  Beim Verbinden mit der David-API wird jetzt 5 Sekunden statt 2 Sekunden gewartet.
       03.12.15 API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0040 erweitert:
                           Es wird ausgegeben, ob gerade gedruckt wird (Jobanzahl != 0) -> 1 es wird gedruckt 0 -> kein druck laeuft.
                           Zusaetzlich werden daten aus dem aktuellen Printjob ausgegeben.
                            "1\t206\tPrintBusy...\t\r\n"
                           Fuer ... steht:
                           \tBusy
                           \t01:dwT  get_milsec()
                           \t10:m_iStep
                           \t11:m_strHtmlNameOrg\t12:m_strHtmlName\t13:m_strPrintTemplate\t14:m_strTitle\t15:m_strPdfName
                           \t16:m_iPrintTemplateOpenCount\t17:m_dwPrintTemplateOpenTimeMilSec\t18:m_lPrintDownMilSec
                           \t19:m_bRunningTimeout\t20:m_iPrinterTemplateRetryCnt
                           \t21:m_iErgMail\t22:m_iErgDrop
                           \t23:m_strSendData -> strOptionen\x08strEmpfanger\x08strBetreff\x08strDateien\x08strDocustore
                           \t30:m_bAktionMode       //0 nur Anzeigen, 1 Anzeigen und Drucken, 2 direkt, 3 mit Druckrequester
                           \t31:m_bDoPdfSupport     //PDF Datei erwarten und weiterverarbeiten
                           \t32:m_strLokalisierung  //Ort auf den sich Aufrufe in dem HTML-Formular beziehen

695 07.12.15 DATELIB: Unschaerfe bei der Ruckerechnung von Datumsangaben in ein KW-Datum beseitigt (Die ersten Tage eines Jahres in der Kalenderwoche des Vorjahres)

       11.12.15 WINIFW:   Datenuebernahme mit dem Taschenrechner optimiert: 
                          - Beim Oeffnen des Taschenrechners werden unmittelbar zuvor eingegebene Daten ueber das Feld uebernommen.
                          - Beim Schliessen des Taschenrechners mit Datenuebernahme wird die Eingabe von mehr Nachkommastellen als angezeigt immer uebernommen
                            (bisher nur wenn sich der optische Inhalt des Feldes in der Maske nicht geaendert hat).

696 15.12.15 DFPRN: Ausgabeoption Z beim Ausdrucksformular implementiert. Wenn ein kennzeichen zu setzen ist, wird kein Hinweis eingebelndet, wenn es schon gesetzt ist.

                DFPRN:    Werden beim PrintFile-Kommando Ausgabeformularoptionen mitgegeben, so werden sie jetzt auch bei weiteren verschachtelten PrintFile-Kommandos weitergegeben.

697 17.12.15 DFIMP: Wird bei einer Datenbankkonvertierung ein Fliesstextfeld vergroessert und dann ein Import auf das vergroeserte Feld das bereits ein Text enthaelt ausgefuehrt,

                          so erkennt der Import jetzt den zusaetzlich verfuegbaren Platz.

698 12.01.16 WINIFW: Das Schliessen der IFW-Datenbankliste beim Beenden von Makrokommando DisplayFile() sichergestellt.

       12.01.16 FFFOCAST: Anfang eines Jahres aus den Forecast-Daten bei KW1 im Vorjahr des Jahres korrekt auf dem angegebenen Jahr belassen.

699 15.01.16 ITBPRG: Das Kommando GetRecord() erweitert.

                           Vor dem Aufruf werden die Eingabewerte in das Feldformat konvertiert.
                          Das Kommando GetRecordByCommand() erweitert.
                           Vor dem Aufruf werden die Eingabewerte in das Feldformat konvertiert.
                          Das Kommando ForEachFromTo() erweitert.
                           Eingabewerte werden jetzt in das Feldformat konvertiert.
                           Zur Abwaertskompatibilitaet kann der Modus 2 angegeben werden.
                           Als 6-ter optionaler Parameter kann jetzt ein Funktionsmodus mitgegeben werden
                             ForEachFromTo( INT $rootItem, STRING $strRoot, INT $cmpItem, STRING $strFrom, STRING $strTo);
                             ForEachFromTo( INT $rootItem, STRING $strRoot, INT $cmpItem, STRING $strFrom, STRING $strTo, INT $iMode);
                           $iMode:
                            0 -> Funktion wie bisher
                            1 -> die Eintraege werden in umgekehrter Reihenfolge zurueckgegeben. Es ist darauf zu achten dass $strFrom groesser als $strTo sein muss.
                            2 -> Die Eingabewerte werden nicht konvertiert (kompatibilitaet zu Rev. <= 698)
       22.01.16 JS:        MemoryLeek in Javascript-Aufrufen beseitigt.

700 03.02.16 BRECLIB2: Beim Erzeugen von Btrieve-Dateien die Option BK_REP_DUP "Repeated Duplicated Key" wieder entfernt.

                           Sie fuehrt zur Zerstoerung der chronologischen Reihenfolge bei Belegpositionen mit gleicher Positionsnummer bei wiederholter Speicherung.
                           Die Option ist im neuen Instmask.exe enthalten.
       12.02.16 WINIFW:    HTML Eingabebereiche in IFW-Masken koennen jetzt mit iRetValue im Kommando CloseWindow( winHandle, iRetValue) einen Tastencode
                           zurueckgeben. Er wird dann auf der Hauptmaske ausgefuehrt.
                           Die Taste Return in HTML Eingabebereichen verbleibt jetzt im HTML Eingabebereich.

701 17.02.16 FAKTEDIT: Verbindlichkeiten und Offene Posten unterstützen jetzt auch das Speichern von Attributen (edit_datasingle)

                DFLOADZW:  Bei "von Beleg schreiben" werden gleiche Attribute von vorherigen Beleg uebernommen
                FFOFFPOS:  Beim Speichern einer Rechnung oder einer Gutschrift werden gleiche Attribute vom Beleg in den OP übernommen
                FFWEG:     Beim Anlegen einer Verbindlichkeit werden gleiche Attribute vom Beleg in die Verbindlichkeit übernommen
                DFED2LIB:  Bei benutzerdefinierten Auswahlfelder wie auch Attribut und Dateianhangslinks wird beim Verlassen 
                           keine Listenberechnung calc_list() mehr duchgefuert (Fehlermeldung z.B. bei Lieferscheine Untermaske FF F1/ESC auf Attribute).
                           Die Berechnung dient bei Belegen z.B. zur Listenpositionsberechnung.
       19.02.16 API_MFRM: HTML-Kommando ReadFile( WinHandle, DateiName) erweitert
                           - Enthaelt der DateiName den Prefix #STR# (vor #BASE64# angeben), so werden 0 Zeichen der Daten in das 255-Zeichen umgewandelt.
                           - Enthaelt der DateiName den Prefix #BASE64#, so werden die Daten BASE64-codiert gelesen.

702 23.02.16 FFEINK: Mit der Modulerweiterung "WsNumLstExt" in den Verbindlichkeiten koennen jetzt bis zu 650 EingangsrechnungenIFW Programmerweiterung Eingangsrechnungen zusammen auf eine Verbindlichkeit zusammengefasst werden. 703 09.03.16 PRNLIB: Die maximale Anzahl Userhunks von 255 (128 wegen char anz) auf 511 erhoeht.

       11.03.16 PRGLOAD:  Das Kommando RefreshBrowse verstellt nicht mehr den Fokus der Liste (intern CApiListView::refreshColumnsFromDfo())
       18.03.16 PRGLOAD:  Makrokommando ImportFile um Modus 0x4000 erweitert.
                          Modus:
                          0x0001 1     Datei nach erfolgreichen import löschen
                          0x0002 2     Felder die nicht vorhanden sind nicht melden
                          0x0004 4     Keine Rechenoperationen der Felder auslösen
                          0x0008 8     Es werden alle Dateien ImportDatei aus dem Verzeichnis eingelesen
                          0x0010 16 (IMPORT_CLRDATA)
                                       Es können beim Import Datenbereiche in der Datenbank zuvor gelöscht werden. Damit ist es möglich Datenbereiche komplett neu einzulesen und die bereits gepeicherten Daten in dem Bereich automatisch zuvor zu löschen.
                                       Dazu muss in der Datei ein Feld das einen Datenbereichsschlüssel darstellt vorhanden sein. Das Feld muss mit einem Indexpfad versehen sein. Beim Import der neuen Daten muss das Feld mit dem entsprechenden Schlüsse versehen werden. In der Importvorlage muss das Feld über die Option @Cxx; mit xx als Feldnummer angegeben werden. Das Feld xx muss durch den Import mit dem entsprechenden Schlüsseltext versehen werden.
                                       Wird beim Import ein Datensatz gespeichert, dann wird geprüft ob der angegeben Schlüssel das erste mal gepeichert wird. Ist es das Erstemal, dann werden zuerst alle in der Datenbank enthaltenen Datensätze mit dem Schlüssel gelöscht und dann der Satz gepeichert. Wurde bei einem Importlauf der Schlüssel schon einmal gepeichert, so erfolgt keine Löschung mehr. Bei kombinierten Pfaden werden alle Datensätze gelöscht, die den Schlüssel im ersten Feld haben.
                          0x0020 32 (IMPORT_RENAME_FILE)
                                       Die Datei wird vor dem Import Umbenannt, aber nach dem Importlauf ohne Modus 1 nicht gelöscht (Die Datei bleibt mit dem temporären Namen erhalten). Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                          0x0040 64 (IMPORT_NOWRITE)
                                       Es werden keine Daten beim Import gespeichert. Eine evt. aktive Löschung mit Modus 16 (IMPORT_CLRDATA) wird aber durchgeführt. Damit ist es möglich per Makro zuerst ein Löschlauf vorzunehmen und mit einem zweiten Lauf den Import durchzuführen.
                          0x0080 128 (IMPORT_SELECT)
                                       Es werden alle importierten und geschrieben Datensätze hinzuselektiert.
                                       Bei zusätzlich angegebener Option 64 (IMPORT_NOWRITE) werden keine Datensätze geschrieben, aber die Selektion trotzdem durchgeführt.
                          0x0100 256   Die Datenbank wird im Modus "OnlineBuchen" beim Import verarbeitet.
                          0x0200 512 (~IMPORT_VIEWCNTREQUEST)
                                       Die Anzeige des Zaehlrequests in der Windowsversion wird unterdrückt.
                          0x0400 1024 (IMPORT_NOUSERBREAK)
                                       Der Benutzer kann den Einlesevorgang nicht abbrechen.
                          0x0800 2048  Der Import wird als Belegimport durchgefuert. Die Option ist beim Import von temporaeren Belegdatenbanken sinnvoll.
                                       Der Aenderungsmodus ist auf den geladenen Beleg anwendbar.
                                       In den Positionen werden beim Einlesen die Feldinhalte nicht geschleppt (Im Gegensatz zum Kommand DocumentImport()!).
                          0x1000 4096  Die Option @U wird im Kompatibilitaetsmodus (Rev. <651) ausgefueht.
                          0x2000 8192  Wird beim Import beim Buchen des Datensatzes eine Meldung die zum Abbruch fuehrt erzeugt, wird die Meldung nicht angezeigt sondern fuehrt zu einem sofortigen
                                       Abbruch der Importliste und wird in Vt zurueckgegeben.
                          0x4000       Beim Speichern neuer Datensaetze wird der vorgegebene Nummernkreis nicht geprueft.
                          0x8000       Beim IMPORT_SELECT wird die selektion nicht sortiert
       30.03.16 PRGLOAD:  Kommando TextSearch() und TextSearchExt() um Modus 0x100 erweitert.
                          Modus 0x100: Es wird hinzu selektiert. Die bisherige Selektion wird nicht geloescht.
       05.04.16 WINIFW:   Die Umschaltung bei Fließtexteingaben "Fixer Font" und "Rechtschreibpruefung" wird jetzt Objekt- und Benutzerbezogen abgespeichert.
                          In der user-ini kann jetzt die Sektion *alle* mit den Werten TextFixFontOn und TextSpellCheckOff eingetragen werden.
                          Beispiel:
                          [*alle*]
                          TextFixFontOn=0;
                          TextSpellCheckOff=0;
                          Mit den TextFixFontOn=1 kann der fixe Textfont zwangsweise fuer alle Tabellen immer eingeschaltet werden.
                          Mit den TextSpellCheckOff=1 kann die Rechtschreibpruefung fuer alle Tabellen immer abgeschaltet werden.

704 27.04.16 MAPIEXT: Beim Starten des IFWs mit "BenutzeErweiterteMailAPI" wird die extended MapiMessaging Application Programming Interface vorinitialisiert.

       28.04.16 FAKT.INI: Schalter "BenutzeErweiterteMailAPI" in der FAKT.INI in der Sektion "System" erweitert:
                            BenutzeErweiterteMailAPI: Wert 0/1/2. Default 0.
                            Fuer die Mailanbindung beim PDF-Druck kann die SimpleMAPI oder ExtendedMAPI verwendet werden.
                            Beim Einsatz von Tobit DAVID muss die SimpleMAPI verwendet werden (Wert 0).
                            Beim Einsatz von Microsoft Outlook muss die ExtendedMAPI verwendet werden (Wert 1 oder 2).
                            Mit dem Wert 2 wird beim Mailen ein eigener Thread verwendet. Dambei wird waehrend einer geoffneten Dialogmaske im Mailprogramm das IFW nicht blockiert.
       28.04.16 PRNLIB4:  Bei Drucken in eine Datei wird im Windows-Modus bei bei IFW-Tabellen nicht mehr einen Abbruch der Ausgabe durch einen Tatstatureingabe geprueft (Meldung "Dateiausgabe: Ausdruck abbrechen ...").
       01.05.16 FAKT.INI: Schalter "BenutzeErweiterteMailAPI" in der FAKT.INI in der Sektion "System" erweitert:
                            BenutzeErweiterteMailAPI: Wert 0/1/2/3/4. Default 0.
                            Fuer die Mailanbindung beim PDF-Druck kann die SimpleMAPI oder ExtendedMAPI verwendet werden.
                            Beim Einsatz von Tobit DAVID muss die SimpleMAPI verwendet werden (Wert 0).
                            Beim Einsatz von Microsoft Outlook muss die ExtendedMAPI verwendet werden (Wert 1 oder 2).
                            Mit dem Wert 2 wird beim Mailen ein eigener Thread verwendet. Dabei wird waehrend einer geoffneten Dialogmaske im Mailprogramm das IFW nicht blockiert.
                            Mit dem Wert 3 wird beim Mailen kein eigener Thread verwendet. Beim Start wird ein Initialisierungsaufruf vorgenommen.
                            Mit dem Wert 4 wird beim Mailen ein eigener Thread verwendet. Beim Start wird ein Initialisierungsaufruf vorgenommen.
                          In der arbeitsplatzabhaengigen INI Datei (ini_<STATIONSNAME>.ini im Verzeichnis user) kann der Wert BenutzeErweiterteMailAPI arbeitsplatzabhaengig ueberschrieben werden.

705 12.05.16 API_REQ: Beim Oeffnen eines Frage.Dialogs wird geprueft ob als Fenster zuvor ein Progrss-Dialog geoeffnet wurde. Wenn ja wird der Progress.Dialog als Parent-Window verwendet (Sichtbarkeit des Fensters durch Ueberlagerung).

                API_MFRM: Das HTML-Kommando PrinterFunction() gibt jetzt nicht mehr automatisch den globalen Speicher der devmod und devname frei.
                          HTML-Kommando PrinterFunction() erweitert
                            PrinterFunction( winHandle, Modus, Druckername, Druckeroptionen);
                          Das Kommando steuert den Drucke bei einem HTML-Druck. Es kann nur in einem HTML Druck in Verbindung mit einem entsprechenden Printertemplate verwendet werden.
                          Modus:
                           0 -> Die Daten fuer Drucker "Druckername" wird zurueckgegeben.
                           1 -> Der zum Ausdruck angegebene Drucker wird verwendet und die Daten zurueckgegeben.
                           2 -> Der interne Wert m_iPrintTemplateJSStep wird auf den Zahlenwert "Druckeroptionen" gesetzt
                           3 -> Der interne Wert m_iPrintTemplateJSPageCnt wird auf den Zahlenwert "Druckeroptionen" gesetzt
                           4 -> Die globalen Speicherbereiche hDevModeBack und hDevNamesBack die bei Modus 0 und 1 gesetzt werden werden zwangsfreigegeben.
                                Die Werte duerfen nur dann freigegeben werden, wenn sie bei Kommando 0 oder 1 nicht dialogArguments.__IE_PrinterCmd_DevMode und dialogArguments.__IE_PrinterCmd_DevNames
                                zugeordnet werden. dialogArguments gibt sie scheinbaer selbst frei (Auswirkung: Absturz Outlook beim direkt mailen).
                          Druckername:
                           Bei Modus 0 Name des Druckers aus der Windows Druckerliste. Bei Modus 1 unwirksam.
                          Druckeroptionen:
                           Keine Optionen moeglich, "" uebergeben.
                          Rueckgabewert:
                           Es wird ein String mit 5 Werten, getrennt durch ein Pipe-Zeichen '|' getrennt zurueckgegeben.
                            "0x12345 HGLOBAL DevMode|0x34567a HGLOBAL DevNames Unicode|DeviceName|PrinterName|PortName".
                           Die Werte koennen im Printertemplate zum Steuern des Druckers gesetzt werden.
                          Fehlerfall: im Fehlerfall werden folgende Werte zurueckgegeben:
                          -10: Parameter falsch
                          -11: Falsches Fenster
                          -12: Kein Drucker angegeben
                          -13: Der Druckername "Standarddrucker" angegeben, es ist aber keiner definiert.
                          -14: Modus nicht 0 oder 1 (Texte werden in eine ganze Zahl umgewandelt)
       18.05.16 BRECORD:  Filterlaenge von Indexfiltern von 40 Zeichen auf 100 Zeichen erhoeht.

706 20.05.16 FAKTEDIT: Beim Dokumentenimport wird beim Import ohne Beleganzeige die Anzeige von Benutzermeldungen unterdrueckt.

                FFOFFPOS: Ist die Anzeige von Benutzermeldungen abgeschaltet wird beim Stornieren die Meldung
                          "Es ist schon ein Zahlungseingang zum Beleg verbucht!" nicht mehr angezeigt.
                PRNLIB:   TextersatzAusgabe TextersatzVorlage und TextersatzAusgabeFlextext von 8 auf 16 erhoeht.

707 03.06.16 VIDF: Beim Lesen von IFW Tabellen werden bei Textvariablen anhaengende Leerzeichen nicht mehr geloescht.

       08.06.16 FAKT.INI: Schalter "VerkaufAnsprechpartnerVorname" in der FAKT.INI in der Sektion "Belege" implementiert:
                           VerkaufAnsprechpartnerVorname: Wert 0/1. Default 1.
                           Wert 0: Wird ein Mitarbeiter in einem Verkaufsbeleg abgerufen, wird der Name ohne Vorname eingesetzt.
                           Wert 1: Wird ein Mitarbeiter in einem verkaufsbeleg abgerufen, wird Name mit Vorname eingesetzt.
                ITBPRG:   ITB Kommandos GetItemCodeByToken() korrigiert.
                          Bei Angabe eines Benutzerfelds z.B. "UBenutzerfeld" wird die Feldnummer 600 als Standarwaert zurueckgegeben, wenn
                          das Feld existiert. Die Feldnummer 600 kann nicht als Zugriff verwendert werden.
                            GetItemCode( INT $item);
                            GetItemCode( INT $item, INT $index);
                            GetItemCodeByToken( STRING $itemToken);
                           Gibt die Feldnummer eines Feldes der zugeordneten Datenbanktabelle zurueck. Existiert es nicht wird 0 zurueckggeben.
                            Bei GetItemCode wird die Feldnummer als Zahl und ggf. der Index bei Arrayfeldern verwendet.
                            Bei GetItemCodeByToken wird die Feldnummer ueber das Texttoken angesprochen. Z.B "C46" oder "UBenutzerfeld".

708 10.06.16 API_MFRM: HTML-Kommando ReadFile( WinHandle, DateiName) erweitert

                           - Enthaelt der DateiName den Prefix #STR#, so werden 0 Zeichen der Daten in das 255-Zeichen umgewandelt.
                           - Enthaelt der DateiName den Prefix #BASE64#, so werden die Daten BASE64-codiert gelesen.
                           - Enthaelt der DateiName den Prefix #OFFSET#offset#, so wird die Date ab dem "offset" gelesen
                           - Enthaelt der DateiName den Prefix #LEN#len#, so wird nur die Laenge "len" gelesen. Bei dem Wert #LEN#0# wird die Laenge der Datei zurueckgegeben.
                          Bei Angabe meherer Parameter muss die Reihenfolge wir oben angegeben eingehalten werden!

709 23.06.16 FFLAGER Die Funktion mit aktivem Schalter LagerpositionsdatumFIFO kapselt jetzt den Buchungsvorgang des Vorbelegs zum Beleg.

                          Damit wird verhindert, dass beim Rueckgaengig machen oder Aendern einer Rechnung zu einem Lieferschein die Menge während des Aenderungsvorgangs 
                          temporaer unter 0 faellt und faeschlicherweise das FiFo-Datum gesetzt wird.
       23.06.16 FFART:    Bei aktivierten erweiterten Preis beim Artikel und vorhandener VonBis-Preisangabe unnoetige Preisspeicherungen beim Speichern des Artikel unterbunden.
       05.07.16 FFCPSHOP: Haengen bleibende Zaehlbox bei der Mietabrechnung beseitigt.

710 11.07.16 DFED3LIB: Das Laden von Benutzerfeldern per Makro bei geoeffneter Eingabemaske im Kopier- oder Neuanlagemodus korrigiert.

       12.07.16 API_MFRM: Neues HTML-Kommando ExecuteDbCommand()
                            ExecuteDbCommand( winHandle, "parameter");
                          Damit lassen sich die Datenbankaufrufe der PHP-Serverkommandos aufrufen.

711 18.07.16 DFIMP: Import um Aenderungsimport ueber die absolute Record-Adresse erweitert.

                          Damit ist das Aendern von Daten ueber einen Import auch ohne Primaerkey moeglich.
                          Zur Anwendung muessen folgende Bedingungen erfuellt sein:
                          1. Das Kommando I254 wird im Kopf-Hunk der Importvorlage eingetragen.
                          2. Die Recordadresse wird mit der Variable [.MRECADR<] eingelesen. Beim Repeatkommando statt einen C-Feld (z.B. "C32") ".MRECADR" eintragen (ohne Hochkomma).
                          Hinweis:
                            Der Indexpfad der Datenbanktabelle verbleibt beim Import auf dem aktuellen Pfad.
                FFRECH:   Bei der Summenpruefung der '='-Positionen beim Beleg Speichern werden jetzt '%'-Positionen beruecksichtigt.
                STRLIB:   findfirst/findnext Sommerzeitkorrektur bei findnext aktiviert (bisher nur findfirst). Neue Korrektur ueber _stat().

712 20.07.16 PRNLIB2: Bei Druckvorlagen und Tabellen wird beim Kommando #include zusaetzlich eine Lokalisierungpruefung vorgenommen.

                          Dabei wird bei nicht vorhandener Include-Datei ein Fallback in das Verzeichnis FORMULAR vorgenommen.
                          Unter folgende Bedingungen wird der Fallback ausgeloest:
                               - Sind um die Dateiangabe spitze Klammen gesetzt (z.B. <datei.dvl>)
                          oder - Die Dateiangabe beginnt mit einem Unterstrich "_" und endet mit ".h" (z.B. _itbase.h)
       21.07.16 IFWTAB:   Initiale Kommandos zum Setzen der Zellenoptionen wirken jetzt auch in Subroutinen der Init()-Routine.
       22.07.16 PRGLOAD2  Beim Aufruf von Formularen werden im Requester alle Optionen aller includeten Formularteilen angezeigt.
                          Mit dem Zeilenwert *OPTIONENENDE* als Option wird die Uebernahme weiterer Optionen beendet.
                          So koennen Optionen aus weiteren includeten Formularteilen unterdrueckt werden.
       22.07.16 IFWTAB:   Eine Fehlermeldung wird jetzt beim auftretendem Fehler in OutRow bei Verwendung von OutRowEnd angezeigt.
       25.07.16 WINIFW:   Selektierte Auswahlen bei Druckvorlagenoptionen wird jetzt bei F1 wieder korrekt angezeigt (seit Rev. 707 03.06.16 defekt)

713 27.07.16 PRNLIBx: Neue Druckvorlagen Formatierungoption $. Damit werden bei Feldausgaben TAB-Zeichen im Text durch Leerzeichen ersetzt.

                          Die Option ist als letzte Option anzugeben.
                          Beispiel: [Cxx<$] und fuer Fliesstextfelder [Cxx-#$].
                          Die Option wird automatisch beim INLINE-Export (der mit TAB getrennt ist) verwendet.

714 05.08.16 DFIMP: Repeatkommando $C32= schaltet jetzt z.B. bei $metaTitel nicht mehr auf Briefe um (entsprach [me]) 715 08.08.16 DFIMP: Korrektur von Rev 714, [m-1][m0] ging im Import nicht mehr

       15.08.16 PRGLOAD2: Neues Makrokommando:
                          TouchFile( Datei, Zeitformat);
                           Setzt Datum und Uhrzeit einer Datei
                           Das Zeitformat muss "jjjjmmtt hh:mm:ss" oder "tt.mm.jjjj hh:mm:ss" angegeben werden.
       16.08.16 API_MFRM: Das HTML-Kommando GetFileAccess() gibt jetzt eine sekundengenaue Zeitangebe der Datei zurueck. Bisher war sie auf eine Genauigkeit von 2 Sekunden begrenzt.
                           Rueckgabesting: "exist,read,write,read/write,errno,filelen,filedate,filetime"
                          Mit dem Praefix #CRC# kann eine CRC Summe in hexadezimaler Notation der Datei mit abgerufen werden.
                           Rueckgabesting: "exist,read,write,read/write,errno,filelen,filedate,filetime,crc"

716 17.08.16 API_MFRM: HTML-Kommando ExecuteProgram() und ExecuteProgramAsync() erweitert:

                          Wird bei einem Parameter ganz am Anfang "#ANSI#" angegeben, so erfolgt keine ANSI zu OEM Konvertierung der Parameter
       18.08.16 API_MFRM: HTML Kommando ReadDir() erweitert:
                          Es werden Kommandowoerter im Dateiname unterstuetzt. Sie muessen immer am anfang des Dateinamens stehen:
                          #LOCAL# -> Das Kommando wird lokal auf dem Rechner ausgefuehrt (Beim WWW Client der Client Rechner, ansonsten der Host Rechner).
                          #DIR# -> Es werden Direktorieeintraege gelesen, nicht Dateieintraege (wird nur beim Kommando ReadDir unterstuetzt).
                          #EXT# -> Es wird pro Datei mit Pipe getrennt Daten mit gesendet: dateiname|datum|zeit|groesse|crc. CRC ist 0x00000000
                          #CRC# -> Nur in Verbindung mit #EXT#. CRC ist Hexadezimal 8-stellig 0xnnnnnnnn enthalten .
       19.08.16 FFIBUDV:  Systemmakro .$87 Modus 3 und 5 erweitert, es wird die Periode int Vt mitgegeben:
                           Makro beim Erstellen des Buchungsstapels. Wird ein Wert gleich 1 zurueckgegeben, so wird der Op oder VB nicht uebertragen.
                           in V1 steht beim Aufruf der Modus:
                           0 pro Vorgang Normal
                           1 pro Vorgang Storno
                           2 Start Normal 
                           3 Stop Normal (in Vt steht die Periode)
                           4 Start Storno
                           5 Stop Storno (in Vt steht die Periode)
                           6 Stapel speichern, MarkFile = Buchungsstapel, Rueckgabewert ohne Bedeutung, immer auf 0 setzen
                           7 Stapel speichern Storno, MarkFile = Buchungsstapel, Rueckgabewert ohne Bedeutung, immer auf 0 setzen

717 31.08.16 FAKTEDIT: Systemmakro .$90 und $91 implementiert:

                           .$90:DocumentImportFile unmittelbar bevor der temporaere Beleg aufgerufen wird. Beleg aendern, bei Rueckgabewert == 1 wird nicht gespeichert.
                           .$91:DocumentImportFile unmittelbar bevor der temporaere Beleg aufgerufen wird. Beleg neu, bei Rueckgabewert == 1 wird nicht gespeichert.
       01.09.16 FAKTEDIT: Speicherfehler in Verbindung mit Systemmakro .$90 und $91 korrigiert.

718 06.10.16 FFSTDVK,FFRECH: Belegpositionen mit dem Typ "%" werden bei der Pruefung zum Belegabschluss (Lieferschein,Auftrag) nicht mehr beruecksichtigt.

                PROGLOAD:  Das Kommando ExecutePrintText mit dem Parameter [Vt:=" am Anfang der auszufuehrenden Zeile loescht jetzt die interne Variable PrnPar.m_strITabReturnHTMLBuff.
                           Die Variable PrnPar.m_strITabReturnHTMLBuff hat vorrang beim Rueckgabeparameter bei HTML Aufrufe von Makros und wird automatisch beim Drucken von IFW Tabellen in das HTML-Ausgabmedium gesetzt.
                           Durch das Loeschen hat die Vt variable vorrang und kann so den gewuenschten Rueckgabewert bei HTML-aufrufen korrekt immer zurueckgeben.
       11.10.16 FAKTEDIT:  Beim Kopieren von Belegen wird die Systemeinstellung "Sammelpositionen beim Zusammenfuehren beruecksichtigen" beruecksichtigt.

719 28.10.16 WINIFW: Fokus-Umstellung auf Alert-Requester aus der Javascriptkonsole korrigiert. Die Fokusierung auf den Requetser wird jetzt auch in der Datenbanktabelle unterstuetzt.

       02.11.16 DFEXTFNC: HTML-Kommando GetSysInternalsObject() um Modus 0x0040 erweitert
                            GetSysInternalsObject( Objektname, Modus);
                          Modus:
                            0x0001: Ausgabe der aktuell zugewiesenen Rechte (220)
                            0x0002: Ausgabe Felder in der Datenbank (221)
                            0x0004: Ausgabe der Suchpfade in der Datenbank (222)
                            0x0008: Dynamische Objekte des Objekts werden vor der Ausgabe initialisiert
                            0x0010: Ausgabe der zueghoerigen Dateien der Datenbank, inklusive dynamischer Objekte (223)
                            0x0020: Erzeugung fehlender Dateien der Datenbank, inklusive dynamischer Objekte
                            0x0040: Ausgabe aller Listenuebersichten mit ihren Spalten, Format siehe ListViewGetData() Modus 12
       04.11.16 API_MFRM:  HTML-Kommando ListViewGetData() erweitert um Modus 13
                            Datenzeile lesen, ListViewGetData( winHandle, Modus, Para)
                            Para: "ZeileVon;ZeileBis"
                             ListViewGetData( winHandle, Modus)
       14.11.16 API_MFRM:  HTML-Kommando ListViewGetData() Modus 3 und 13 erweitert
                            3: m_iStatuslineItemIndex;m_dwStatuslineMax;m_bStatuslineEstimated;m_dwStatuslineSelCnt;m_dwStatuslineCache;m_iStatuslineCacheStart
                           13: wird kein von/bis angegeben, wird die aktuelle Zeile ausgegeben.

720 16.11.16 PINBOARD: Beim Versenden einer Nachrichten an mehrere Emmpfaenger fuehrt ein Fehler der FAKT.SNC Datei nicht mehr zum Abbruch der Versendeschleife.

       16.11.16 DFED2LIB:  Neuen Datensatz speichern erweitert (Funktion ed_writerec_): 
                           Tritt der Fehler -85 BE_RECPAGELOCKED beim neu Speichern auf, so wird 10 mal alle 0,5 Sekunden versucht den
                           Datensatz erneut zu speichern. Es wird in diesem Fall der Eintrag "New: nnnnnn pagelock autorecover, cnt:xxx" in das Benutzerlogbuch geschrieben.
                FAKTMAIN:  Das Bootlog schreibt jetzt auch explizit die Initialisierung der Tapi mit ("enter/exit setUpMain::initTapiListener").

721 14.02.17 ITBPRG: Neues Kommando InsertParent()

                            InsertParent(STRING $strRdName, STRING $strParentRdName, INT $iLfdEbeneOffset);
                           Funktion wie SetParent nur mit beruecksichtigung der Childs.
                           Setzt den Parenteintrag einer ROWDEF-Deklaration und fuegt alle Childs des Parents als Childs and die zu veraendernde ROWDEF-Deklartion an.
                            $strRdName: Name der zu veraendernden ROWDEF-Deklaration
                            $strParentRdName: Zu setztender Partentwert in $strRdName.
                            $iLfdEbeneOffset: Rangfolgeoffset in einer Ebene, wenn der mehrere ROWDEF in einer Ebene liegen.
                                              Zulaessig sind Werte von -20 bis +20
                            Hinweis:
                            Die Funktion InsertParent() ist nur in der Initialisierungsfunktion IfwTabBase::RowDefInit() verfuegbar.
       15.02.17 REQUEST:   Kann eine Fehlermeldungsbox im klassischen Modus nicht geoeffnet werden, so wird jetzt auch das Flag SCR_IF_ERROR_THEN_EXIT beruecksichtigt.

722 16.02.17 FAKTEDIT: Beim Speichern eines neuen Belegs und Benutzung der Druckvorschau konnte eine Differenz der Belegsumme zur Positionssumme entstehen. Problem behoben. 723 20.02.17 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "Docustore":

                            PDFVerzeichnis2: "Verzeichnis". Default ""
                            Funktion wie der Wert PDFVerzeichnis, nur ein 2. Verzeichnis das ueberwacht wird.
                           Erweiterung der Funktion der Variable PDFVerzeichnis und PDFVerzeichnis2:
                            Mit diesem Wert wird gesteuert in welchem Verzeichnis die Dateien der PDF-Generierung erwartet werden.
                            In diesem Verzeichnis entstehen automatisch weitere Unterverzeichnisse mit dem Stationsname des Arbeitsplatzes.
                            Das IFW erwartet automatisch PDF-Dateien in diesem Verzeichnis.
                            Der PDF-Schreiber muss als Ausgabeverzeichnis diese Verzeichnis mit dem Stationsname als Unterverzeichnis erhalten.
                            Wird der Text "$\" am Anfang der Bezeichnung verwendet, so wird automatisch das IFW-Arbeitsverzeichnis
                            als Ursprungsverzeichnis eingesetzt. So ergibt die Standadeinstellung
                            "$/ablage" das Verzeichnis c:\ifw\ablage wenn das IFW auf dem Laufwerksbuchstaben c: liegt.
                            Sie koennen normale Slashs '/' als Verzeichnisangabe verwenden. Wenn Sie Backslashs '\' verwenden
                            so muessen Sie sie doppelt angeben "$/ablage" -> "$\\ablage".
                            Ein abschliesender Slash an der Verzeichnisangabe ist nicht notwendig, kann aber angegeben werden.
                            Der Verzeichnispfad wird erstellt, falls er noch nicht vorhanden ist.
                            Wird als Ablageverzeichnis ein Pfad mit %TEMP% angegeben (z.B. %TEMP%\\IfwPdf),
                            so wird nicht mehr der Computername in der Pfadangabe automatisch verwendet sondern der Pfad direkt im temporaeren Windowverzeichnis
                            erstellt und verwendet. %TEMP% muss in Grossbuchstaben geschrieben sein.
                            Diese Angabe ist in Verbindung mit Terminalserverumgebungen anzuwenden.
                            Der IFW-Pdf Drucker muss als Zielverzeichnis die gleiche Angabe mit %TEMP% enthalten (z.B. %TEMP%\\IfwPdf).
                            Nach der Ueberpruefung und Ersatz der Variable %TEMP% werden alle anderen Werte die mit "%" Eingeschlossen sind als
                            Enviromentvariablen geprueft und ersetzt.
       20.02.17 API_MFRM: HTML-Kommando GetSysInternals() Modus 0x0040 erweitert:
                           Es wird ausgegeben, ob gerade gedruckt wird (Jobanzahl != 0) -> 1 es wird gedruckt 0 -> kein druck laeuft.
                           Zusaetzlich werden daten aus dem aktuellen Printjob ausgegeben.
                            "1\t206\tPrintBusy...\t\r\n"
                           Fuer ... steht:
                           \tBusy
                           \t01:dwT  get_milsec()
                           \t10:m_iStep
                           \t11:m_strHtmlNameOrg\t12:m_strHtmlName\t13:m_strPrintTemplate\t14:m_strTitle\t15:m_strPdfName
                           \t16:m_iPrintTemplateOpenCount\t17:m_dwPrintTemplateOpenTimeMilSec\t18:m_lPrintDownMilSec
                           \t19:m_bRunningTimeout\t20:m_iPrinterTemplateRetryCnt
                           \t21:m_iErgMail\t22:m_iErgDrop
                           \t23:m_strSendData -> strOptionen\x08strEmpfanger\x08strBetreff\x08strDateien\x08strDocustore
                           \t24:m_strPdfName2
                           \t30:m_bAktionMode       //0 nur Anzeigen, 1 Anzeigen und Drucken, 2 direkt, 3 mit Druckrequester
                           \t31:m_bDoPdfSupport     //PDF Datei erwarten und weiterverarbeiten
                           \t32:m_strLokalisierung  //Ort auf den sich Aufrufe in dem HTML-Formular beziehen
       24.02.17 WINIFW:   Ein Doppelklick auf eine Button eines Favoriten fuert nicht mehr zu Meldung "LPT1: Drucker -TIMEOUT. Ausdruck abbrechen? (Abbruch/Weiter)"
                          Der Freigabecyklus doIdle() in der IFW Tabelle ist jetzt auf doIdleKeyboardStop() umgestellt. Im ListFrame ist damit der ueberzaehlige Buttonevent blockiert.
       28.02.17 ITBPRG:   Neues Kommando Column[x].setColumnVisible( BOOL $bVisible):
                           Die Spalte x kann Sichtbar/Unsichbar geschaltet werden. Standardmaesig ist sie Sichtbar.
                           Die Sichbarkeit steuert nur die Ausgabe der Spalte in die Tabelle. Intern werden die Daten der Spalte unabhaengig der
                           Sichtbarkeit erzeugt.
       02.03.17 MENU:     Sichtbarkeit auf Menuepunkte werden jetzt auf alle Menuepunkte vergeben, auch wenn der Menuepunkt-Code mehrfach vorkommt.
       15.03.17 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                           OptionSpeichernWeiter: Wert 0/1/2. Default 1.
                            Wert 0: Beim Beleg Speichern ist die Wahlmoeglichkeit "Weiter" immer deaktiviert.
                            Wert 1: Beim Beleg Speichern hat nur der Supervisor die Wahlmoeglichkeit "Weiter".
                            Wert 2: Beim Beleg Speichern steht immer die Wahlmoeglichkeit "Weiter" zur Verfuegung.

724 17.03.17 FFVERK: Negative Auftragsmengen fuehren jetzt immer zu Menge 0 "in Auftrag" im Artikelstamm, egal wieviel dazu geliefert ist.

       21.03.17 DVAPI32:  Neuer Schalter in der FAKT.INI in der Sektion "System":
                           DavidkalenderIfwElternIdVerwalten: Wert 0/1, Default 0.
                           Mit dem Wert 1 werden im David-Kalender IFW Ids von anderen IFW-Neutzern erkannt und neuen Eintrag mit Bezug zur ID gepeichert.
                           Damit kann ein Davidanwender einen Termin mit seiner IFW Id im Betreff an einen anderen IFW Benutzer versenden.
                           Das IFW des Terminempfaengers erkennt die ID und erstellt einen Termin im IFW mit der gefunden ID als Eltern-Termin.

725 23.03.17 IFWTAB: Die Anzahl von Spalten von maximal 150 auf 512 erhoeht.

       24.03.17 API_MFRM: HTML-Kommando ReadRegistry() um KEY_WOW64_64KEY erweitert
                            ReadRegistry( winHandle, Modus, Sektion, Variable);
                          Modus:
                           "": Default
                           "KEY_WOW64_64KEY":  Es wird ein Zugriff mit der Option KEY_WOW64_64KEY vorgenommen.
                           "KEY_WOW64_32KEY":  Es wird ein Zugriff mit der Option KEY_WOW64_32KEY vorgenommen.
                          Sektion:
                           Adresse aus der der Wert gelesen werden soll (z.B: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER)
                          Variable:
                           Varianble deren Wert gelesen werden soll
                          Hinweis:
                           Besteht der Wert noch nicht, so wird ein Fehler -7 zurueck gegeben
                          Fehlernummern:
                           -9: Falscher Registrybereich. Erlaubt ist HKEY_CLASSES_ROOT,HKEY_CURRENT_CONFIG,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_PERFORMANCE_DATA,HKEY_PERFORMANCE_NLSTEXT,HKEY_PERFORMANCE_TEXT,HKEY_USERS
                           -7: Fehler beim Lesen
                           -6: Variablentyp wir nicht unterstuetzt, nur REG_DWORD und REG_SZ.
                           -5: Fehler beim Oeffnen des Pfades
                           -4: Zugriff verweigert
                           -2: Pfad nicht gefunden
       24.03.17 API_MFRM: HTML-Kommando WriteRegistry() um KEY_WOW64_64KEY erweitert
                            WriteRegistry( winHandle, Modus, Sektion, Variable, Wert);
                          Modus:
                           "REG_DWORD": Es wird ein DWORD geschieben.
                           "REG_SZ": Es wird ein Text geschrieben
                           "REG_SUBKEY": Es wird ein Ordner mit dem Parameter "Variable" erzeugt. Er befindet sich innerhalb der Sektion. Es kann keine Hierachie automatisch angelegt werden. Der Parameter "Wert" wird ignoriert.
                          Optional:
                           "|KEY_WOW64_64KEY":  Es wird ein Zugriff mit der Option KEY_WOW64_64KEY vorgenommen. Wichtig: mit dem Odersymbol "|" an den gewaehlten Typ REG_... haengen.
                           "|KEY_WOW64_32KEY":  Es wird ein Zugriff mit der Option KEY_WOW64_32KEY vorgenommen. Wichtig: mit dem Odersymbol "|" an den gewaehlten Typ REG_... haengen.
                          Sektion:
                           Adresse in die der Wert gelesen geschrieben soll (z.B: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER)
                          Variable:
                           Variable deren Wert geschrieben werden soll
                          Wert:
                           Wert auf den die Variable gesetzt wird.
                          Hinweis:
                           Es muessen ausreichend Rechte zum Schreiben vorhanden sein. Ist das Schreiben erfolgreich, so wird der Text "*ok*" zurueckgegeben.
                          Fehlernummern:
                           -9: Falscher Registrybereich. Erlaubt ist HKEY_CLASSES_ROOT,HKEY_CURRENT_CONFIG,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_PERFORMANCE_DATA,HKEY_PERFORMANCE_NLSTEXT,HKEY_PERFORMANCE_TEXT,HKEY_USERS
                           -8: Falscher Modus. Erlaubt ist REG_DWORD, REG_SZ, REG_SUBKEY
                           -6: Fehler beim Schreiben
                           -5: Fehler beim Oeffnen des Pfades
                           -4: Zugriff verweigert
                           -2: Pfad nicht gefunden
       24.03.17 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "Belege":
                           PGNichtGefundenLadePG0Staffel: Wert 0/1. Default 0.
                           Wert 0: Wird eine PG nicht gefunden wird der Grundpreis PG0 ausgegeben ohne Beruecksichtigung der PG0 Staffel.
                           Wert 1: Wird eine PG nicht gefunden wird der PG0-Preis mit Beruecksichtigung der PG0 Staffel.
       03.04.17 DFPDF:    Die Verschluesselung von Hauptdatenbanktabellen wird jetzt auch an die Attributsdatenbanktabelle weitervererbt
       04.04.17 WINIFW:   gelegentliche Schutzverletzung bei der Anzeige uebergrosser Texte in der Uebersicht beseitigt.

726 05.04.17 PRGLOAD: Erweiterung von Kommando SetItemAccessLevel

                            Modus 0x10000: Password Ein/Aus (nur mit 0x20000 oder 0x40000)
                            Modus 0x20000: Feld als Passwordfeld setzen/loeschen (mit 0x10000/0x00000)
                            Modus 0x40000: Feld als Passwordfeld setzen/loeschen wenn im Status (C46) des Datensatzes das Kennzeichen P enthalten ist (mit 0x10000/0x00000)
                DFED2LIB: Systemmakro .$92 implementiert:
                           .$92:Spezialprogramm wenn eine Auswahl mit F1 aufgerufen wird und die Auswahl geoeffnet wird.
                                Vor Oeffnen der Auswahl. MarkFile=Auswahldatei, Feldnummer in V1, Auswahldateihandle in V2.
                                Z.B. ueber SetFileBackToMarkedFile() kann ein Filter in der Auswahl gesetzt werden.
                PRGLOAD:  Neues Kommando GetRecordFocus und SetRecordFocus
                           GetRecordFocus()
                             Laedt den aktuellen absoluten Datensatzfokus der aktuellen Datenbanktabelle
                           SetRecordFocus()
                             Set den mit GetRecordFocus() geladenen absoluten Datensatzfokus auf die aktuellen Datenbanktabelle
                           Hinweis:
                             Es kann immer nur ein Fokus geladen sein und er muss von der gleichen Datenbanktabelle stammen.

727 13.04.17 DFLIB: Schutzverletzung im klassischen IFW in Verbindung mit dem Passwordfeld beseitigt.

       24.04.17 DFPDF:    Beim Laden von dynamischen Objekten wird jetzt bei voller Liste versucht unbenutzte Objekte freizugeben (Fehler -8).

728 25.04.17 PRNLIB: Neues Kommando @#GetRecord;

                           Laden eines Datensatzes
                          Syntax:
                           @#GetRecord Vt;
                           Vt enthaelt die Parameter in der Form  Tabellenname|Kommando|Feld1|Feldinhalt1|Feld2|Feldinhalt2|Feld3|Feldinhalt3|Feld4|Feldinhalt4
                           Feld2 bis Feld 4 sind optional. Die Parameter Tabellenname, Kommando, Feld1 und Feldinhalt1 muessen angegeben werden.
                           Als Trennzeichen wird das Symbol | Pipe verwendet.
                           Als Tabellennamen ist ein 6-stelliger Name der IFW-Tabellen angegeben werden.
                           Als Kommando wird eine Zahl angegeben, es gelten folgende Werte:
                             5 -> GET_EQU   
                             6 -> GET_NEXT  
                             7 -> GET_PREV  
                             8 -> GET_GRT   
                             9 -> GET_GRTEQU
                            10 -> GET_LES   
                            11 -> GET_LESEQU
                            12 -> GET_FIRST 
                            13 -> GET_LAST  
                           Das Kommando stellt den aktuellen Datenbankfokus des Druckvorlagen Hunks auf die anegebene Tabelle (z.B. mit [.MNAME<] abfragbar).     
                           Ist das Kommando erfolgreich, wird Vt geloescht.
                           Tritt ein Fehler auf, so steht in Vt "*error*GetRecord ..."
       26.04.17 ARTTXL:   Es kann ueber ein IFW-Modul eine Artikeltext-Liste angemeldet werden (Tabelle ARTTXL).
                          Ist diese Vorhanden, wird die intern Uebernahme von Artikeltexten in Einkaufsbelege und Verkaufsbelege geaendert.
                          Es wird zuerst versuch ein Artikeltext der entsprechenden Textnummer aus der Artikeltextliste zu laden. Ist der Datensatz vorhanden, wird der text uebernommen.
                          Ist er nicht vorhanden wird der Text aus der bisherigen hinterlegte Artikeltext verwendet.
                          In der Artikeltext-Liste sind auch Buchstaben als Artikeltextnummer zulaessig.
                          Der bisherige Rueckgriff auf die Textnummer 0 bei einer Angabe einer nicht existierenden Textnummer oder eines Buchstaben wird nicht mehr vorgenommen.
                          In der Artikeltext-Liste kann jetzt der Text fuer Einkaufsbelege und Verkaufsbelege bei gleicher Artikeltextnummer unterschieden werden.
                          Dabei wird erst der Eintrag mit dem Belegtyp V oder E zur Textnummer gesucht. Wird er nicht gefunden wird der Eintrag ohne Typangabe gesucht.
       28.04.17 DFED2LIB: Systemmakro .$93 implementiert:
                           .$93: Spezialprogramm wenn Daten auf eine Maske abgerufen werden vor Uebernahme der Daten.
                                 MarkFile=Quelldatei, Feldnummer in V1, Quelldateihandle in V2.
                                 Mit Returnwert ungleich 0 kann die Uebernahem verhindert werden. Einzelne Felder koennen im Makkro manuell mit SetItem() gesetzt werden.
                                 siehe auch Systemmakro $62.

729 16.05.17 FFEINK: Textuebernahme bei minimaler ARTTXT-Datei (nur ein Standard-Textfeld und betriebsinternes Textfeld) korrigiert. Seit 26.04.17 wurde kein Text mehr uebernommen. 730 23.05.17 FAKT.INI: Neuer Schalter in der FAKT.INI in der Sektion "System":

                           WindowsIfwDeaktiviert: Wert 0/1. Default 0.
                           Wert 0: Das Windows IFW ist aufrufbar
                           Wert 1: Das Windows IFW ist nicht aufrufbar, nur die klassische Oberflaeche ist verfuegbar.
                EMUC:     Beim IFW Start des klassischen IFW's wird die Einstellung "Bildschirmbeschraenkung" korrekt beruecksichtigt.
       02.06.17 PRNLIB2:  Das Praeprozessor-Kommando #setopt des Formularladers unterstuetzt jetzt auch die Option '~' zum Loschen von Optionen.
                          Z.B. #setopt( A~BC ) setzt die Option A und C und loescht die Option B.

731 13.06.17 WINFIW: In der Windowsversion werden jetzt in der Tabellenansicht satzspezifische Rechte beruecksichtigt. Bisher waren sie nur auf Spaltenebene beruecksichtigt. 732 19.06.17 DFED2LIB: Die Suche mit TextSearch erweitert:

                          Ist ein Linearfilter auf "=" gesetz und werden mit TextSearch Felder durchsucht und ist der aktuelle Suchpfad (IndexPfad) der Datei das Feld aus dem Linearfilter,
                          so wird bei den gefundenen Eintraegen oder bei maximaler Ueberspruungsmenge geprueft, ob der Inhalt des Feldes groesser als der Filterwert ist. Ist er groesser wird soforrt ein Abbruch der Suche vorgenommen.
                          In Verbindung mit Modus 0x0080 bei TextSearchExt kann der Beginn des Bereiches vorgegeben werden und wird sofort am Ende abgebrochen (wenn noch wenigstens ein Satz ausserhalb gefunden wurde).

Uml AOUaouß° Ž™š„”áø */ #define VERSION_REVCNT "732" /* call ifwexemv.bat 732 */ /* DEVMGR_SHOW_NONPRESENT_DEVICES 1 WINVER 0x0400 _WIN32_WINNT — _WIN32_WINDOWS 0x0500 _WIN32_IE 0x0400 Erstes Space suchen ~(^[^:b]+):b Telefonsuche: http://www.goyellow.de/schnellsuche/?MDN=0724789933 BDE 07:31:20 Mi 01.08.2007:BDE: TA12, out:"Y00 11" in:"12Y+01380000013AFFFFFFFFFFFFFFFFFFFFFF" err:0, 0x0,0,0,6,0,32,0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 01 38 00 00 01 3A FFFFFFFFFFFFFFFFFFFFFF

 '8       01 3a 

11" in:"12Y+013234000168FFFFFFFFFFFFFFFFFFFFFF" err:0, 0x0,0,0,6,0,32,0 01 32 34 00 01 68 FFFFFFFFFFFFFFFFFFFFFF" err:0, 0x0,0,0,6,0,32,0 Addition der ersten 5 Bytes in Byte 6 http://de.finance.yahoo.com/q/cq?d=v1&s=787896&m=a http://ichart.yahoo.com/table.csv?s=REB.F&d=8&e=15&f=2007&g=d&a=11&b=22&c=2003&ignore=.csv http://fr.finedit.yahoo.com/lastTrades?output=user&i=eu&s=REB.F http://de.finance.yahoo.com/q/cq?d=v1&s=899954&m=a http://ichart.yahoo.com/table.csv?s=LUKF.F&d=8&e=15&f=2007&g=d&a=0&b=3&c=2000&ignore=.csv http://de.finance.yahoo.com/q/cq?d=v1&s=585150&m=a http://ichart.yahoo.com/table.csv?s=GPC.F&d=8&e=15&f=2007&g=d&a=0&b=3&c=2000&ignore=.csv http://de.finance.yahoo.com/q/cq?d=v1&s=A0DNY9&m=a http://ichart.yahoo.com/table.csv?s=LSE.F&a=00&b=1&c=2000&d=08&e=15&f=2007&g=d&ignore=.csv 0 = Ei Ei 1 = Kerze Einhorn 2 = Kirsche Zwillinge 3 = Dreirad Dreirad 4 = Stuhl Stuhl (mit vier Beinen) 5 = Hand Hand (mit fuenf Fingern) 6 = Wuerfel Wuerfel (mit sechs Seiten) 7 = Siebenschlaefer Siebenschlaefer 8 = Sanduhr Sanduhr 9 = Kegelspiel Kegelspiel 1 Kerze (oder Baum oder Leuchtturm) 2 Schwan 3 aufgebogene Heftklammer 4 Segel am Mast 5 Fleischerhaken 6 Elefantenruessel 7 im Wind flatternde Fahne 8 Sanduhr 9 Gardinenhaekchen/-roellchen 0 Ei 1 Kerze 2 Schwan 3 Dreirad 4 vierblaettrigen Kleeblatt 5 Seepferdchen 6 Schnecke 7 Sense 8 Schneemann 9 Luftballon 0 Ei. 1 Kerze; 2 Ente; 3 Dreirad; 4 Kleeblatt; 5 Hand, 6 Wuerfel; 7 Katze (7 Leben hat eine Katze) oder juedischer Kerzenleuchter; 8 Sanduhr; 9 alle Neune (Kegeln); EK-Preis Laden: 1. lade letzt. EK 2. Ist ListenEK im Einkauf aktiv, und Feld 110 vorhanden und nicht leer, dann Feld 110 3. Ist ein Lieferanteneintrag vorhanden, nehme den EK aus dieser Zeile

 - Ist zusaetzlich ein Rabatt angegeben, so weise den Positionsrabatt bezogen zum Preis aus

4. Ist ein EK-Staffelpreis vorhanden (ueber Anfragen), so weise den Staffelpreis anhand der

 Menge und des Datums des Staffelpreises aus. Frage nach der Gebindegroesse.

5. Wurde kein Staffelpreis geladen und ist ein Fremdwaehrungskuerzel in der Position

 und das gleiche Fremdwaehrungkuerzel bei der Lieferantenzeile auf der Artikelmaske,
 dann uebernehme den Fremdwaehrungspreis.

IFW Berechtigungen: Gruppen: IFW_USER → im IFWROOT nur Vollrecht auf IFW und IfwAblage/IFWDocustore. IfwAblage/IFWDocustorezusaetzlich Eingeschraenkung (Verbotsrecht)

           im IFW archfibu,archiv,basisdat,chgdat,sysdat eingeschraenkt (Verbotsrecht). Die Mandantenverzeichnisse muessen ebenfalls mit Verbot belegt sein.

IFW_ADMIN → Komplette Rechte im IFWROOT, keine Einschraenkung Der normale IFW Benutzer wird zu IFW_USER Der IFWASP Automat wird zu IFW_ADMIN und IFW_USER, damit hat er zugriff auf alles, aber trotzdem die Verbotsrechte. Der Administrator und Sicherungsdienst darf nicht der IFW_USER Gruppe zugeordnet sein, ansonsten hat er die Verbotsrechte. IFW-Verzeichnisse: – Verzeichnis ifwroot: IFW_ADMIN IFW_USER ifw IFW_ADMIN IFW_USER ifwablage/ifwdocustore IFW_ADMIN datentk IFW_ADMIN ifw2014 IFW_ADMIN ifwdm IFW_ADMIN ifwback IFW_ADMIN ifwupd IFW_ADMIN ifwlog – Mandant anlegen und loeschen! → findfirst in basisdat,archiv,chgdat – Import mit ???? im Name – Druckvorlagen @#GetFileName Vt; * und ? erlaubt – Dateianhang stdprj ed_dropFileSave – Dirlib und HTML-Kommandos read_dir_csv – verzeichnis ifw: s rec archfibu s rec archiv s rec archiv.000

bin aspclnt	     
tmp bdecom	     findfirst ffbde2
tmp bdecom.000     findfirst ffbde2
tmp bdeimage	     

s rec basisdat s rec basisdat.000

bin bin	     searchStartFile_BIN_IFW loadsave
res binhtml	     ie

s rec chgdat s rec chgdat.000

dat daten	     
dat datev	     
txt doku	     
dat download	     
dtr drucker	     
dat export	     
rec extdat	     findfirst dfdb     open_db32
dat filescan	     findfirst dfed3lib CFileScanService
fnt font	     
dvl formular	     
dat icons	     
res image	     
imp import	     
imp import00	     
rec infodat	     findfirst dfpdf    search_dynpdf
fib initdat	     
msk masken	     findfirst textdir ueber edit_globalinfo
mod module	     findfirst dfextfnc CIfwModulManager, ie
dat myifw	     
prg programm	     
csv reports	     

s rec sysdat s rec sysdat.000

prg sysprg	     
txt systxt	     
rec tempdat	     
rec tempdat.000    
bin tools	     
ini user	     
dvu userform	     
doc windows	     

*/

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
internsystem_files/fakt_rev.txt · Zuletzt geändert: 15.03.2018 00:00 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki