home *** CD-ROM | disk | FTP | other *** search
/ PC go! 1995 September / Image.iso / pcgo / programm / demo / eho / archive2.exe / PROFIKIT.TXT < prev   
Encoding:
Text File  |  1994-10-12  |  67.9 KB  |  1,961 lines

  1.  
  2.  CTO EHO 3.2 Profi - Kit                                    1
  3.  
  4.  
  5.  
  6. 1 EINLEITUNG..................................................3
  7.  
  8.  
  9. 2 FORMULARGENERATOR...........................................4
  10.  
  11. 2.1 ALLGEMEINES...............................................4
  12. 2.2 FORMULAR..................................................5
  13.  2.2.1 Kopfteil...............................................5
  14.  2.2.2 Rumpf..................................................6
  15. 2.3 BEISPIEL 1................................................7
  16.  2.3.1 Kopfbereich............................................7
  17.  2.3.2 Rumpf..................................................7
  18.  2.3.3 Druckergebnis..........................................8
  19. 2.4 BEISPIEL 2................................................9
  20.  2.4.1 Kopfbereich............................................9
  21.  2.4.2 Rumpf..................................................9
  22. 2.5 BEISPIEL 3...............................................10
  23.  2.5.1 Kopfbereich...........................................10
  24.  2.5.2 Rumpf.................................................10
  25.  2.5.3 Fußbereich............................................11
  26.  
  27. 3 LISTENGENERATOR............................................12
  28.  
  29. 3.1 ALLGEMEINES..............................................12
  30. 3.2 BEISPIEL 1...............................................14
  31.  3.2.1 Kopf..................................................14
  32.  3.2.2 Rumpf.................................................14
  33.  3.2.3 Listendruck...........................................14
  34.  3.2.4 Druckergebnis.........................................15
  35. 3.3 BEISPIEL 2...............................................16
  36.  3.3.1 Aufgabe...............................................16
  37.  3.3.2 Lösungsvorschlag......................................16
  38.  3.3.3 Listendruck...........................................17
  39. 3.4 BEISPIEL 3...............................................18
  40.  3.4.1 Aufgabe...............................................18
  41.  3.4.2 Lösung................................................18
  42.  3.4.3 Erläuterung...........................................18
  43.  3.4.4 Listendruck...........................................18
  44.  
  45. 4 DATEIMANAGER...............................................19
  46.  
  47. 4.1 ALLGEMEINES..............................................19
  48. 4.2 BEISPIEL 1...............................................19
  49.  4.2.1 Aufgabe...............................................19
  50.  4.2.2 Lösung................................................20
  51.  4.2.3 Summenbildung.........................................20
  52.  4.2.4 Filter ändern.........................................20
  53. 4.3 BEISPIEL 2...............................................21
  54.  4.3.1 Aufgabe...............................................21
  55.  4.3.2 Lösung................................................21
  56.  4.3.3 Ergebnis..............................................22
  57.  
  58. 5 ARTIKELETIKETTEN...........................................22
  59.  
  60. 5.1 ALLGEMEINES..............................................22
  61.  
  62.  
  63.  
  64.  2                                         CTO EHO 3.2 Profi - Kit
  65.  
  66. 5.2 SIE KÖNNEN JETZT BESTEHENDE VORLAGEN WÄHLEN, PRÜFEN  ODER
  67. ÄNDERN ODER EIN VÖLLIG NEUES GESTALTEN.......................22
  68. 5.2 BEISPIEL.................................................23
  69.  5.2.1 Erläuterung...........................................23
  70.  5.2.2 Ergebnis..............................................23
  71.  
  72. 6 DRUCKERANSTEUERUNG.........................................24
  73.  
  74. 6.1 ALLGEMEINES..............................................24
  75. 6.2 ELITE, NORMAL UND NLQ....................................25
  76. 6.3 SCHMALDRUCK..............................................25
  77. 6.4 BREITDRUCK...............................................25
  78. 6.5 SONSTIGE DRUCKERSEQUENZEN................................25
  79.  
  80. 7 ANHANG.....................................................26
  81.  
  82. 7.1 KURZREFERENZ CLIPPER - FUNKTIONEN........................26
  83.  7.1.1 Funktionen zur Umwandlung von Feldtypen...............26
  84.  7.1.2 Funktionen zur Manipulation von numerischen Werten....26
  85.  7.1.3 Funktionen zur Manipulation von Zeichenketten.........27
  86.  7.1.4 Zeit- bzw. Datumsfunktionen...........................27
  87.  7.1.5 Sonstige Funktionen...................................27
  88. 7.2 OPERATOREN...............................................28
  89.  7.2.1 Vergleichsoperatoren..................................28
  90.  7.2.2 Mathematische Operatoren..............................28
  91.  7.2.3 Logische Operatoren...................................29
  92. 7.3 VARIABLEN FÜR FORMULARGENERATOR..........................30
  93.  7.3.1 Rechnung, Gutschrift, Angebot und Auftragsbestätigung.30
  94.  7.3.2 Quittung..............................................30
  95.  7.3.3 Allgemeine Variablen..................................30
  96.  7.3.4 Lieferschein..........................................31
  97.  7.3.5 Bestellungen..........................................31
  98.  
  99.  
  100.  CTO EHO 3.2 Profi - Kit                                    3
  101.  
  102.  
  103. EINLEITUNG
  104.  
  105. Seit mit  EHO 2.0  in der  erweiterten Version der Formular- und
  106. Listengenerator sowie der Dateimanager zum ersten Mal eingesetzt
  107. wurden,  sind   viele  Anfragen   zu  den  Möglichkeiten  dieser
  108. Programmpunkte bei uns eingegangen.
  109.  
  110. Zusätzliche Optionen  wie das  Editieren der  Kopf- und Fußzeile
  111. bei Rechnungs-  und anderen  Formularen  waren  ebenso  häufiger
  112. Wunsch wie Einflußnahme in der Druckersteuerung.
  113.  
  114. Daß in  Listen und  Formularen CLIPPER  - Funktionen und Formeln
  115. eingesetzt werden können und wie diese funktionieren, war vielen
  116. nicht klar.
  117.  
  118. Die Filtersetzung bei Dateimanager und Listendruck war vielen zu
  119. kompliziert, so  daß auf  diese doch  mächtigen Module  bei  der
  120. Anwendung einfach verzichtet wurde.
  121.  
  122. Mit diesem  Zusatzhandbuch  versuchen  wir,  die  Neuerungen  in
  123. diesen Bereichen  sowie die  oft gestellten  Fragen  an  einigen
  124. Beispielen zu behandeln.
  125.  
  126. Das Profikit  zu CTO EHO richtet sich vor allem an die Anwender,
  127. die die  jetzt erweiterten  Möglichkeiten von Formular-, Listen-
  128. und  Artikeletikettengenerator   und  Dateimanager   ausschöpfen
  129. möchten.
  130.  
  131. Äußerst  hilfreich  für  den  effektiven  Umgang  mit  den  o.g.
  132. Möglichkeiten sind :
  133.  
  134.      + fundierte Anwenderkenntnisse im Programm CTO EHO
  135.  
  136.      +   evtl. Grundkenntnisse in der CLIPPER - Programmierung 1
  137.  
  138.      +   evtl. Kenntnisse in der Druckeransteuerung2
  139.  
  140.  
  141.  
  142. Anhand von zahlreichen Beispielen werden wir Schritt für Schritt
  143. in die jeweilige Materie vordringen.
  144.  
  145. ____________________
  146. 1 Eine Kurzreferenz der gebräuchlichsten CLIPPER Funktionen
  147.  finden Sie weiter hinten
  148.  
  149. 2 Ein Kapitel über Druckeransteuerung finden Sie weiter hinten
  150.  
  151.  
  152.  
  153.  
  154. 2   Formulargenerator
  155.  
  156.  
  157. 2.1 Allgemeines
  158.  
  159. In den  Formulargenerator von  CTO EHO  gelangen  Sie  über  das
  160. Hauptmenü mit der Tastenkombination «ALT I» und dann «g»
  161.  
  162. In der  rechten oberen  Ecke wird  ein  Fenster  geöffnet:  Hier
  163. können Sie  das zu bearbeitende Formular auswählen. Pro Formular
  164. können  inklusive   der  im   Programm  festgelegten  bis  zu  9
  165. Alternativen erstellt werden.
  166.  
  167. Bei Formular  3 kann nur eine Zeile im Kopf (die prinzipiell für
  168. die Spaltenüberschriften  gedacht ist  ) und  der Rumpf geändert
  169. werden, in  den Formularen  4 und  5 können nur der Kopf und der
  170. Rumpf: geändert  werden, bei den übrigen darüber hinaus auch der
  171. Fuß.
  172.  
  173.  
  174. 2.2 
  175.  
  176.  
  177.  CTO EHO 3.2 Profi - Kit                                    5
  178.  
  179. Formular
  180.  
  181. Schauen   wir    uns   als   erstes   ein   Beispiel   für   das
  182. Rechnungsformular3 4 an:
  183.  
  184. Wir bestätigen  also «Rechnungsformular»,  «Ändern Formular» und «4».
  185.  
  186. Klar   erkennbar    sind   hier    die    Eingabebereiche    für
  187. Kopfteil
  188.  
  189. 2.2.1    Kopfteil
  190. In den  Kopfteil können  z.B.: freier Text, Spaltenüberschriften
  191. oder aber  je nach  Formular bestimmte  Variablen eingesetzt  werden.
  192. Hierbei ist jedoch  zu beachten,  daß alle  Eingaben Zeichenketten  sein
  193. müssen.
  194.  
  195. Unter Zeichenketten versteht man alphanumerische Felder im Gegensatz zu
  196. numerischen, also reinen Zahlenfeldern, mit denen auch gerechnet werden kann.
  197.  
  198. Wenn also  auf numerische  Felder (z.B.  «RECH_NR»)  zugegriffen
  199. werden soll,  so muß  dies durch  eine entsprechende  CLIPPER  -
  200. Funktion umgewandelt werden -  im Fall der Rechnungsnummer sieht
  201. das wie folgt aus: «STR(RECH_NR)»
  202.  
  203. Freie Texteingaben  müssen in  Anführungszeichen  eingeschlossen
  204. werden.
  205.  
  206. Verschiedene Zeichenketten werden mit «+» verbunden.
  207.  
  208. Um Leerzeilen zu erhalten, gibtes folgende Möglichkeiten:
  209.  
  210. 1. Setzen Sie an den Zeilenanfang «[D]» (für «DRUCKEN»)oder
  211. 2. Geben  Sie in Anführungszeichen «ALT 255» auf dem Zahlenblock
  212. ein oder
  213. 3. Lassen Sie die Zeile einfach frei.
  214.  
  215. Soll eine Zeile nicht gedruckt werden:
  216.  
  217. 1. Setzen  Sie an  den Zeilenanfang «[ND]» (für «NICHT DRUCKEN»)
  218. oder
  219. 2. Anführungszeichen, Leerzeichen, Anführungszeichen
  220. Ein  wichtiges  Unterscheidungsmerkmal  zum  Rumpf,  liegt  auch
  221. darin, daß  selbst bei  Feldnamen keine Doppelkreuze «#» gesetzt
  222. werden  dürfen,   da  in  diesem  Bereich  eine  andere  Technik
  223. verwendet   wird,   um   über   den   integrierten   Prüfvorgang
  224. Fehleingaben testen zu können.
  225. ____________________
  226. 3 Das hier gesagte gilt ebenso für die anderen Formulare.
  227.  
  228.  
  229.  
  230.  6                                         CTO EHO 3.2 Profi - Kit
  231.  
  232. Mehrere Feldnamen werden nicht mit «+» verknüpft.
  233.  
  234. 2.2.2    Rumpf
  235. Hier werden in der Regel die Feldeinträge eingefügt. Freier Text
  236. (Kommentierung) ist jedoch ebenfalls möglich.
  237.  
  238. Unterschied  zu   Kopf  -   und  Fußteil:  Text  darf  nicht  in
  239. Anführungszeichen stehen!
  240.  
  241. Wenn Sie  ein Feld  einsetzen wollen,  bewegen Sie den Cursor an
  242. die gewünschte Stelle im Formular - Rumpf.
  243.  
  244. Zur  Verfügung   stehen  alle   zur   «ARCHIV.DBF»
  245. gehörigen Felder.  Eine Auswahl  erhalten Sie  durch Eingabe von
  246. «F4».
  247.  
  248. Zur Feldauswahl  setzen Sie  den Cursorbalken auf das gewünschte
  249. Feld, das Sie mit «ENTER» übernehmen können.
  250.  
  251. An  der   Cursorposition  erscheint   nun  das  gewünschte  Feld
  252. eingerahmt von zwei Doppelkreuzen («#»).
  253.  
  254. Beim  Einsetzen   weiterer  Felder   beachten  Sie   bitte,  daß
  255. Leerzeichen  zwischen  den  einzelnen  Feldern  auch  später  im
  256. Ausdruck als Leerzeichen erscheinen.
  257.  
  258.       Achtung:
  259.       Sofern Sie  es nicht  über eine  CLIPPER -  Funktion
  260.       (z.B.:«SUBSTR()»)
  261.       ändern,   wird    immer   die   gesamte   Feldbreite
  262.       reserviert. (Wichtig  für die  Aufteilung bzgl.  der
  263.       Seitenbreite     und     der     Ausrichtung     von
  264.       Spaltenüberschriften !)
  265.  
  266.       Beispiel:
  267.       Das Feld  ARTIKEl1 besitzt  eine  Feldlänge  von  30
  268.       Zeichen. Es  werden 30  Zeichen reserviert, egal, ob
  269.       nur ein  Zeichen bei der Artikelerfassung eingegeben
  270.       wurde oder 30.
  271.  
  272. Es  besteht  aber  auch  die  Möglichkeit,  auf  Felder  anderer
  273. Dateien  zuzugreifen.
  274. Dies muß mit einem entsprechenden Verweis erfolgen:
  275.  
  276.   «a->» Felder KUNDEN.DBF
  277.   «c->» Felder UMSATZ.DBF
  278.   «d->» Felder ARTIKEL.DBF
  279.  
  280.  
  281. 2.3 
  282.  
  283.  
  284.  
  285.  8                                         CTO EHO 3.2 Profi - Kit
  286.  Beispiel 1
  287.  
  288. 2.3.1    Kopfbereich
  289. Zeile Leerzeichen in Anführungszeichen -> Zeile freilassen
  290. 1
  291. Zeile "Rechnungsnummer: " + LTRIM(STR(RECH_NR))
  292. 2     Hierbei handelt  es sich  um  einen  Kommentar  (das  Wort
  293.       «Rechnungsnummer») und um die Ausgabe des Feldes «RECH_NR»
  294.       als   Zeichenkette.   Wenn   Sie   mehrere   Zeichenketten
  295.       verbinden wollen, tun Sie dies mit «+».  «RECH_NR» ist
  296.       ein rein numerisches Feld, dieses
  297.       muß hier in ein alphanumerisches umgewandelt werden; dafür
  298.       sorgt die  CLIPPER  -  Funktion  «STR()» (für  String -  engl.
  299.       für  Zeichenkette). Die Funktion LTRIM  () unterdrückt  Leerzeichen
  300.       links  von der Rechnungsnummer.
  301.  
  302. Zeile Leerzeilen
  303. 3,  4
  304. und 5
  305. Zeile Beachten Sie  hier für  die Ausrichtung (Abstände zwischen
  306. 6     den     Spaltenbezeichnern) die  Längen der  im  Rumpf  stehenden
  307.       Felder (s.o.)
  308. Zeile Trennstrich  von     Rechnungskopf     zu
  309. 7     Rechnungsrumpf.  Da   es  sich   hier  ebenfalls  um  eine
  310.       Zeichenkette handelt,  kann hier  jedes  druckbare  ASCII-
  311.       Zeichen eingegeben werden.
  312.  
  313.  
  314.  
  315. 2.3.2    Rumpf
  316. Zeile #ANZAHL# #ARTIKEL1# #EPREIS+RAB_PREIS# #RABPOS# #PREIS#
  317. 1     Dies sind  "Platzhalter" für die Einträge, die später beim
  318.       Druck ausgegeben werden.
  319.       Im einzelnen sind das:
  320.       «ANZAHL» - Die Anzahl des in Rechnung gestellten Artikels.
  321.       «ARTIKEL1» - Artikelbezeichnung
  322.       «EPREIS +  RAB_PREIS» -  Ausgabe des Einzelpreis zzgl. der
  323.       durch die Rabattierung entstandenen Differenz, dies ergibt
  324.       den eigentlichen  nicht rabattierten  Preis. So  kann  dem
  325.       Kunden der Preisunterschied direkt ausgewiesen werden.
  326.       «RABPOS» - Einzelrabatt in Prozent
  327.       «PREIS» - der rabattierte Gesamtpreis
  328. Zeile beim Ausdruck unberücksichtigt
  329. 2 - 6
  330.  
  331.  CTO EHO 3.2 Profi - Kit                                    9
  332.  
  333. Zur Formel: #EPREIS + RAB_PREIS#
  334.  
  335. Hier treffen  wir gleich  auf eine  weitere Möglichkeit, die uns
  336. der    Formulargenerator     bietet:     Die     Eingabe     von
  337. Rechenformeln.
  338.  
  339. Aufgrund  dieser   Formel   erhalten   wir   die   Ausgabe   des
  340. Einzelpreises vor der Einzelrabattierung.
  341.  
  342. Ausgegeben wird die Rechnung etwa so:
  343.  
  344. CTO Software GmbH
  345. Alexianergraben 9
  346. 52064 Aachen
  347.  
  348.  
  349.  
  350. CTO Software GmbH, Alexianergraben 9  52064 Aachen
  351.  
  352.     Fa.
  353.     Gromberg & Goldini
  354.     Spedition 
  355.     Im- und Export
  356.     Röggelistr. 45
  357.     
  358.     44625 Herne
  359.  
  360.  
  361.  
  362. R E C H N U N G
  363.  
  364.      Rechnungsnummer: 237
  365. Menge    Artikel            Einzelpreis        Rabatt        Gesamtpreis 
  366. -------------------------------------------------------------------------------------------------------------------------------------------
  367. 1.00    Floppy 3,5 "          70.26        10          63.23
  368. 1.00    386 dx 40 Board        122.09        10        109.88
  369. 1.00    Towergehäuse        131.74        10        118.57
  370. 1.00    Versandkosten UPS          13.22          0          13.22
  371.  
  372.  
  373.  
  374. Dies ist der im Generator bearbeitete Bereich.
  375. -------------------------------------------------------------------------------------------------------------------------------------------
  376. Nettobetrag DM    15.00% MwSt. DM                 Rechnungsbetrag DM 
  377. 304.90        45.74 (1)                         350.64
  378. =========================================================================
  379.  
  380.      2.00 % Skonto bei Zahlung innerhalb von 10 Tagen: DM  7,01
  381.     Betrag per Scheck erhalten
  382.     Gerichtsstand Aachen 
  383.  
  384. Diese verhalten sich nach den gewohnten mathematischen Regeln: Punktrechnung (Multiplikation 
  385. und Division) hat Vorrang vor Strichrechnung (Addition und Subtraktion). Es ist also darauf zu 
  386. achten, daß die Klammersetzung genau ist, um Fehlberechnungen zu vermeiden.
  387. Achten Sie vor allem bei Divisionen darauf, daß eine Division durch Null nicht möglich ist.
  388. 2.3.3 Druckergebnis
  389.  
  390.  
  391.       
  392.  
  393.  
  394.  CTO EHO 3.2 Profi - Kit                                   11
  395.  
  396. Beispiel 2
  397.  
  398. 2.4.1    Kopfbereich
  399. Zeile Rechnungsnummer: " + LTRIM(STR(RENUM))
  400. 1     «RENUM»  ist   ein  numerisches  Feld,  muß  also  in  ein
  401.       Zeichenfeld umgewandelt werden.
  402.       STR(RENUM)  erreicht   dies.  Um   Leerzeichen  links   zu
  403.       unterdrücken, setzen wir die Funktion LTRIM() ein.
  404. Zeile "Verkäufer" + STR(VERKAEUFER)
  405. 2     «VERKAEUFER» ist  numerisch -  Umwandlung  durch  «STR()».
  406.       Ausgegeben wird hier die Verkäufernummer.
  407. Zeile "Kundennummer: " + TMP_KUN
  408. 3     Ausgabe der  Kundennummer, die  ist alphanumerisch - keine
  409.       Umwandlung erforderlich
  410. Zeile "US-Str-Nr" + tmp_us_nr
  411. 4     Gibt    die    Umsatz-Steuer-Nummer    aus.    Feld    ist
  412.       alphanumerisch.
  413. Zeile "Datum : " + DTOC(DAT)
  414. 5     Gibt  das   Rechnungsdatum  aus.   Wird  mit   DTOC()   in
  415.       Zeichenkette umgewandelt.
  416. Zeile CHR(027)+CHR(040)+CHR(115) )+CHR(050 )+CHR(048) )+CHR(072)
  417. 6     schaltet den  Schmaldruck für  nachfolgende  Zeichenketten
  418.       ein.
  419.       Diese Sequenz  kann  über  «F5»  bei  der  Erstellung  des
  420.       Formulars                 gewählt                  werden.
  421.       Hier              wird               auf               die
  422.       Steuersequenzen   des
  423.       in   den    Druckervoreinstellungen   gewählten   Druckers
  424.       zurückgegriffen.
  425.       "Zusatz: " + F_REZUS
  426.       Ausgabe des Zusatztextes für Rechnungen
  427.       CHR(027)+CHR(040)+CHR(115) )+CHR(050 )+CHR(049) )+CHR(072)
  428.       4
  429.       schaltet den  Schmaldruck für  nachfolgende  Zeichenketten
  430.       aus
  431. Zeile Leerzeile
  432. 7
  433.  
  434.  
  435. 2.4.2    Rumpf
  436. Zeile #NUMMER# #ARTIKEL1# #PREIS#
  437. 1     Ausgabe   von    Artikelnummer,   Artikelbezeichnung   und
  438.       Gesamtpreis.
  439.  
  440. Zeile beim Ausdruck nicht berücksichtigt
  441. 2 - 6
  442.  
  443.  
  444.  12                                        CTO EHO 3.2 Profi - Kit
  445.  
  446. Beispiel 3
  447.  
  448. Im dritten Beispiel werden wir auch den Fußbereich mit einbeziehen.
  449.  
  450. 2.5.1    Kopfbereich
  451. Zeile Leerzeile
  452. 1
  453. Zeile beim Ausdruck nicht berücksichtigt
  454. 2
  455. Zeile "Zusatz:  " + f_rezus
  456. 3     Ausgabe der Zusatzzeile für die Rechnung
  457. Zeile Leerzeile
  458. 4
  459. Zeile "Rechnungs-Nr.:"       +        ltrim(str(renum))+       "
  460. 5     Kunden Nr. " + tmp_kun
  461.       Ausgabe der Rechnungsnummer
  462.       STR() wandelt  das alphanumerische  Feld  «renum»  in  ein
  463.       Zeichenfeld um; LTRIM() unterdrückt die Leerstellen links.
  464.       "                     KundenNr. " + tmp_kun
  465.       Ausgabe der  Kundennummer -  die  Leerzeichen  dienen  zur
  466.       Verschiebung nach rechts.
  467. Zeile "---------------------------------------------------------"
  468. 6      Trennlinie
  469. Zeile "Menge.....Nummer.....Artikel.....Einzelpreis.....Gesamtpreis"
  470. 7      Spaltenüberschriften
  471.  
  472. 2.5.2    Rumpf
  473. Zeile #str(ANZAHL,4)# #NUMMER##ARTIKEL1##EPREIS##PREIS#
  474. 1     Ausgabe der Felder «ANZAHL» (verkaufte Anzahl des
  475.       Artikels), «NUMMER» (Artikelnummer), «ARTIKEL1»
  476.       (Artikelbezeichnung erste Zeile), «EPREIS» (Einzelpreis)
  477.       und «PREIS» (Gesamtpreis);
  478.       Das Feld «ANZAHL» muß mit der CLIPPER - Funktion «STR()»
  479.       in eine Zeichenkette umgewandelt werden. Der Zusatz «,4»
  480.       bewirkt, daß 1.) das Feld als Ganzzahl - also ohne
  481.       Nachkommastellen - ausgegeben., 2) die Ausgabe auf vier
  482.       Zeichen beschränk, 3) Leerstellen links unterdrückt
  483.       werden.
  484. Zeile #ARTIKEL2# Ausgabe des ersten Artikel - Zusatzfelds
  485. 2
  486. Zeile #ARTIKEL3# Ausgabe des zweiten Artikel - Zusatzfelds
  487. 3
  488. Zeile beim Ausdruck nicht berücksichtigt
  489. 4-6
  490.  
  491. 2.5.3    
  492.  
  493.  
  494.  CTO EHO 3.2 Profi - Kit                                   13
  495.  
  496. Fußbereich
  497. Zeile Leerzeile
  498. 1
  499. Zeile "---------------------------------------------------------"
  500.       Trennstrich
  501. Zeile "Aachen, den " + dtoc(date())
  502. 3     Orts-  und   Datumsausgabe;   DTOC()   wandelt   aktuelles
  503.       Systemdatum in Zeichenkette um.
  504. Zeile "
  505. 4     Rechnungsendbetrag:" + ltrim(str(zw1))
  506.       Ausgabe vom  Rechnungsbetrag; Leerzeichen am Anfang dienen
  507.       der Positionierung STR() wandelt das numerische Feld «ZW1»
  508.       in  ein   alphanumerisches  um.  LTRIM()  unterdrückt  die
  509.       Leerstellen links.
  510. Zeile "Zahlfrist: "+ dtoc(date() + 14) + "(14 Tage von heute)"
  511. 5     Ausgabe einer Zahlfrist DATE() + 14 errechnet das aktuelle
  512.       Datum plus  14 Tage DTOC() wandelt das oben erzielte Datum
  513.       in eine Zeichenkette um.
  514. Zeile "Verkäufer:  "   +  IIF(verkaeufer=1,"Herr   Zwill.","Frau
  515. 6     Löhlein.")
  516.       Klartext: Wenn  das Feld  «VERKAEUFER» gleich «1» ist, gib
  517.       als Verkäufer  "Herr Zwill" aus, in jedem anderen Fall als
  518.       Verkäufer "Frau  Löhlein".  Dieses  Beispiel  funktioniert
  519.       nur, wenn  Sie für  einen Verkäufer  , der  die Nummer «1»
  520.       hat, eine  Provisionsabrechnung vorsehen. Denn immer, wenn
  521.       das Feld «VERKAEUFER» gleich «0» ist, wird der zweite Name
  522.       ausgegeben (s.u.).
  523.  
  524.    Beispiel:
  525.   
  526.    Das obige  Beispiel ließe sich natürlich verfeinern - etwa so:
  527.  
  528.    IIF(verkaeufer=0,"  ",IIF(verkaeufer=1,"Herr  Zwill",  IIF
  529.    (verkaeufer=2,"Frau Löhlein")))
  530.  
  531.    Klartext:
  532.    Wenn  das  Feld  «VERKAEUFER»  gleich  «0»  ist,  gib  ein
  533.    Leerzeichen aus,  sonst, wenn «VERKAEUFER» gleich «1» ist,
  534.    gib  als   Verkäufer  "Herr   Zwill"  aus,   sonst,   wenn
  535.    «VERKAEUFER» gleich «2» ist, als Verkäufer "Frau Löhlein".
  536.  
  537.  14                                        CTO EHO 3.2 Profi - Kit
  538.  
  539.    Das  ließe   sich  natürlich  mit  noch  mehr  Bedingungen
  540.    durchaus       auf        die       Spitze        treiben.
  541.    Wir     haben      es     hier     mit     verschachtelten
  542.    Bedingungen zu tun,
  543.    auf den  ersten Blick  furchtbar aber  möglich. Achten Sie
  544.    auf die  Klammern. Jede  Klammer, die  geöffnet wird (hier
  545.    drei), muß auch wieder geschlossen werden.
  546.   
  547.  
  548.  
  549. 3   
  550.  
  551.  
  552.  CTO EHO 3.2 Profi - Kit                                   15
  553.  
  554. Listengenerator
  555.  
  556.  
  557. 3.1 Allgemeines
  558.  
  559. Mit dem  Listengenerator haben  Sie Möglichkeit, ganz nach Ihrem
  560. Bedarf Reports  zu erstellen.  Sie entscheiden, welche Felder in
  561. welcher Reihenfolge letztendlich auf dem Ausdruck zu sehen sind.
  562.  
  563. Dieser  im  Generator  erstellte  Report  bildet  sozusagen  die
  564. Schablone, in die später Ihre Liste gedruckt wird.
  565.  
  566. Die von  Ihnen gewählten  Felder werden beim Listendruck mit den
  567. entsprechenden Daten gefüllt.
  568.  
  569. Egal,  ob   Sie  Adreß-,  Telefon-,  Preis-,  Umsatzlisten  etc.
  570. erstellen wollen,  der  Listen-  oder  Reportgenerator  ist  ein
  571. äußerst hilfreiches Werkzeug zur Lösung dieser Aufgaben.
  572.  
  573. Ähnlich wie  im Formulargenerator  lassen sich Rechenformeln und
  574. CLIPPER - Funktionen verwenden.
  575.  
  576. Außerdem ist  die Möglichkeit  gegeben, bis zu drei Summenfelder
  577. zu vergeben,  um  darin  Felder  aufsummiert  auszugeben.  Diese
  578. Summenfelder   sind    mit    «<summen1>»,    «<summen2>»    und
  579. «<summen3>» ezeichnet.
  580.  
  581. Im Gegensatz  zum Formulargenerator ist es nicht möglich, datei-
  582. übergreifend zu  arbeiten, d.h.  es stehen  nur die  Felder  der
  583. Dateien zur  Verfügung, die  Sie mit «F4» aufrufen und auswählen
  584. können. Dieses ist jedoch in den meisten Fällen ausreichend.
  585.  
  586. Ist das  gewünschte Listenformat  erst einmal  erstellt, kann es
  587. abgespeichert werden und steht immer wieder zur Verfügung.
  588.  
  589. Über Filtersetzung  haben Sie  vor dem Ausdruck die Möglichkeit,
  590. sich nur bestimmte Datensätze ausgeben zu lassen.
  591.  
  592. In den Listengenerator gelangen Sie über «ALT I» für Dienste und
  593. «L» für Listengenerator.
  594.  
  595. Wählen Sie den Datenbestand aus,
  596. für    den     Sie    eine     Liste     erstellen     möchten..
  597. Zur Verfügung stehen Ihnen hier:
  598.  
  599.       Datei       Dateiendung
  600. Stammdaten        ADR
  601. Aufträge          KUN
  602. Positionen        ARC
  603. Lager             ART
  604. Umsatz            UMS
  605. Kundenpreise      KUP
  606. Bestellungen      BES
  607. Wareneingang      WEI
  608. Rückstandsliste   RUE
  609.  
  610.  
  611.  
  612.  
  613.  16                                        CTO EHO 3.2 Profi -
  614.  Kit
  615.  
  616. Wenn Sie  beispielsweise eine  schon bestehende  Liste  für  die
  617. Stammdaten bearbeiten wollen, gehen Sie wie folgt vor:
  618.  
  619. 1. Stammdaten,
  620. 2. Ändern Liste,
  621. 3. Auswahl  Liste (hier  wählen Sie  die entsprechenden Einträge mit dem
  622.    Cursorbalken aus).
  623.  
  624. Jetzt gelangen wir in die Eingabemaske des Listengenerators:
  625.  
  626. Wir unterscheiden  hier vier Bereiche: Kopf, Spaltenüberschrift,
  627. Rumpf und Fuß.
  628.  
  629. Im Kopfbereich können wir freien Text eingeben.
  630.  
  631.       Achtung:
  632.      
  633.       Im  Gegensatz   zum  Formulargenerator   dürfen  die
  634.       Zeichenketten  nicht  in  Anführungsstriche  gesetzt
  635.       werden,  da   auch  hier   wieder  die   Prüfroutine
  636.       eingesetzt werden kann.
  637.  
  638. Die Spaltenüberschrift  beinhaltet die  frei definierbaren Titel
  639. jeder Spalte.
  640.  
  641. Im  Rumpf   werden  die  Felder  eingesetzt.  Übernahme  wie  im
  642. Formulargenerator mit  «F4» oder durch Freieingabe. Beachten Sie
  643. hier bitte  auch, daß die einzeln Felder durch zwei Doppelkreuze
  644. «#» eingerahmt werden.
  645.  
  646. Wenden wir uns jetzt einem konkreten Beispiel zu.
  647.  
  648.  
  649. 3.2 
  650.  
  651.  
  652.  CTO EHO 3.2 Profi - Kit                                   17
  653.  
  654. Beispiel 1
  655.  
  656. Wir  wollen   eine  Preisliste   ausdrucken,   die   neben   dem
  657. «offiziellen» Bruttopreis  auch die rabattierten Preise ausgibt.
  658. Rabatte sind  hier «30  %» und «35 %». Wir greifen auf die Datei
  659. «LAGER» zu.
  660.  
  661.  
  662.  
  663.                                 
  664.  
  665.                                 
  666.  
  667.  
  668. 3.2.1    Kopf
  669. Listenkopf  und  Spaltenüberschriften  erklären  sich  wohl  von
  670. selbst.
  671.  
  672. 3.2.2    Rumpf
  673. Zeile #NUMMER#  (für  die  Artikelnummer)  #ARTIKEL1#  (für  die
  674. 8:    Artikelbezeichnung) und #BRUTTO# (für den Bruttopreis.)
  675.  
  676. Zeile #BRUTTO *  0,7# (Formel für die Berechnung mit 30% Rabatt)
  677. 9:    #BRUTTO*0,6,5# (Formel für die Berechnung mit 35% Rabatt)
  678.  
  679. 3.2.3    Listendruck
  680. Das Listenformat  ist nun  erstellt  und  kann  nun  ausgedruckt
  681. werden.
  682.  
  683. Dazu  wählen  wir  aus  dem  Menü  «Dienste»  den  Punkt  «Liste
  684. drucken».
  685.  
  686.  18                                        CTO EHO 3.2 Profi - Kit
  687.  
  688. Wir möchten  jetzt nur  auf die  Warengruppe «EDV» zugreifen und
  689. eine Liste  von den  Artikeln erstellen, die noch mit mindestens
  690. 10 Stück  Bestand auf  Lager liegen. Um dies zu erreichen, gehen
  691. wir wie folgt vor:
  692.  
  693.    Option      Auswahl                Kommentar
  694.  
  695. Datei:        Lager      Die Liste  ist fürs  Lager entworfen
  696.                          worden
  697. Sortierung:   Art.Nr.    Natürlich  sind   hier  auch  andere
  698.                          Sortierungen möglich.
  699. Bedingung:    Ja         Bei «Nein»  wird  auf  den  gesamten
  700.                          Lagerbestand zugegriffen.
  701. Filter:       Neu        Sollte schon  ein  Filter  bestehen,
  702.               erstellen  kann    dieser    bearbeitet    oder
  703.                          übernommen werden.
  704. Klammer auf ? Nein       Die Klammerung  benötigt  man,  wenn
  705.                          man verknüpfte  Bedingungen nochmals
  706.                          gegenüberstellen möchte.
  707. Auswahl       WAGRU      s. Bedingungen.
  708. Felder
  709. Auswahl       gleich     s. Bedingungen.
  710. Vergleich
  711. Bedingungen   Eingabe:   Wir wollen  nur auf  Datensätze  der
  712.               EDV        Warengruppe «EDV»  zugreifen. Achten
  713.                          Sie    hier    darauf,    daß    das
  714.                          Bedingungswort genau  so  eingegeben
  715.                          wird, wie  es im  Lager  eingetragen
  716.                          wurde.  Groß-   und  Kleinschreibung
  717.                          beachten !
  718. Mit           Nein       Leerzeichen «Ja»  benötigt man, wenn
  719. Leerzeichen ?            der  gesuchte  Ausdruck  Leerzeichen
  720.                          enthält.
  721. Weiter ?      und        Wir  schließen   noch  eine  weitere
  722.                          Bedingung an
  723. Klammer auf ? Nein       s. o.
  724. Auswahl       Bestand    s. Bedingungen.
  725. Felder
  726. Auswahl       größer     s. Bedingungen.
  727. Vergleich     oder
  728.               gleich
  729. Bedingungen   10         Wir   wollen    auf   die    Artikel
  730.                          zugreifen, deren Bestand größer oder
  731.                          gleich 10 ist.
  732. Mit           Nein       s. o.
  733. Leerzeichen ?
  734. Weiter ?      Ende       Hiermit     beenden      wir     die
  735.                          Filtersetzung. Es wäre möglich, noch
  736.                          weitere Bedingungen  zu setzen  oder
  737.                          die Filtersetzung abzubrechen.
  738. Speichern     Bestätigen Die Filterbedingung  kann jetzt  für
  739.                          spätere Zwecke abgespeichert werden.
  740. Dateiname     VORZUG     Wir vergeben  einen Dateinamen,  den
  741.                          wir  später   mit   der   Liste   in
  742.                          Verbindung bringen  können.
  743.  
  744. Die  nach   den   oben   gewählten   Datensätze   werden   jetzt
  745.  
  746.  
  747.  CTO EHO 3.2 Profi - Kit                                   19
  748.  
  749. herausgefiltert:
  750.  
  751.  
  752. 3.2.4    Druckergebnis
  753. Vorzugspreisliste                              Stand
  754. :16.03.91
  755. Alle Preise incl. Mehrwertsteuer
  756.  Nummer       Artikel                           VK
  757.  
  758.                              30%     35%                                                          
  759.  
  760.  1000         386      DX                        140,40
  761.               Board
  762.  
  763.                            98,28   91,26                                                          
  764.  
  765.  1001         Floppy 3,5"                         80,80
  766.  
  767.                            56,56   52,52                                                          
  768.  
  769.  1002         Towergehäuse                      151,50
  770.  
  771.  
  772.                           106,05   98,48                                                          
  773.  
  774.  
  775. 3.3 
  776.  
  777.  
  778.  
  779.  20                                        CTO EHO 3.2 Profi - Kit
  780.  
  781. Beispiel 2
  782.  
  783.  
  784. 3.3.1    Aufgabe
  785. Es wird eine Rechnungsliste benötigt, die folgende Informationen
  786. enthält:
  787.  
  788. Listenkopf: Überschrift, Seitenangabe, aktuelles Datum
  789.  
  790. Rumpf:     Kundenname,      Rechnungsnummer,     Rechnungsdatum,
  791. Rechnungsbetrag, Zahldatum, bezahlter Betrag, letztes Zahldatum,
  792. noch offener Betrag, Steuerbetrag 1
  793.  
  794. Fuß: Gesamtsumme  aller Rechnungen  1), Gesamtsumme  der  bisher
  795. bezahlten Beträge 2), Differenz zwischen 1) und 2)
  796.  
  797. Kompliziert ?
  798.  
  799.  
  800. 3.3.2    Lösungsvorschlag
  801. Die Liste wird für die Datei «UMSATZ» erstellt.
  802.  
  803.                                 
  804.  
  805.  
  806. 3.3.2.1  Listenkopf
  807.  
  808. Zeile  «Die bezahlten Rechnungen»
  809. 1       freier Text,
  810.        #LTRIM(STR(SEITEN))#
  811.        «SEITEN»   ist   die   Seitenvariable,   Typ   numerisch,
  812.        Umwandlung zu  alphanumerisch durch STR() -  LTRIM()
  813.        unterdrückt Leerstellen links.
  814. Zeile  #DATE()#
  815. 2      erzielt die Ausgabe des aktuellen Systemdatums.
  816. Zeile  beim Ausdruck nicht berücksichtigt
  817. 3 -4
  818.  
  819.  
  820. Spaltenüberschrift
  821. textlich nach eigenen Wünschen frei zu gestalten
  822.  
  823.  
  824. 3.3.2.2  
  825.  
  826.  
  827.  CTO EHO 3.2 Profi - Kit                                   21
  828.  
  829. Rumpf
  830. Zeile  #NAME# #RECH_NR# #RECH_DAT# #GESAMT$
  831. 8      Ausgabe    der    Felder    «NAME»,    «RECHNUNGSNUMMER»,
  832.        «RECHNUNGSDATUM» und «GESAMT».Die Felder sind wie gewohnt
  833.        in Doppelkreuze  eingeschlossen. Nur  das  Feld  «GESAMT»
  834.        bildet eine Ausnahme.
  835.        Da     dieses      Feld     summiert werden soll, wird hier statt
  836.        des rechten Doppelkreuzes  ein  Dollarzeichen  «$.» eingesetzt.
  837. Zeile  #ZAHLDAT# #BEZBETRAG$
  838. 9      Ausgabe  von   Zahldatum  und  bisher  gezahltem  Betrag;
  839.        letzterer soll  aufsummiert  werden,  daher  als  rechter
  840.        Feldbegrenzer ein Dollarzeichen.
  841. Zeile  #LETZTDAT#
  842. 10     Ausgabe vom letzten Zahldatum
  843. Zeile  #RESTZAHL# #MWST1#
  844. 11     Ausgabe des noch zu zahlenden Betrages und Steuersatz 1
  845. Zeile  beim Ausdruck nicht berücksichtigt
  846. 12   -
  847. 13
  848.  
  849. 3.3.2.3  Fuß
  850. Zeile  Trennlinie
  851. 14
  852. Zeile  Summe  gesamt   :  #LTRIM(STR(summen1))#;   Summe  bisher
  853. 15     bezahlt: LTRIM(STR(summen2))#
  854.        Aufaddierung  der   Rechnungsbeträge  erfolgt   in   Feld
  855.        «summen1» Aufaddierung  der bezahlten  Beträge erfolgt in
  856.        Feld «summen2»
  857. Zeile  Summe Rest: #LTRIM(STR(summen1-summen2))#
  858. 16     Errechnung der Differenz zwischen «summen1» und «summen2»
  859. Zeile  Nächste Seite #LTRIM(STR(SEITEN + 1)#
  860. 17     Verweis auf  die nächste Seite, indem der Seitenzähler um
  861.        eins erhöht wird.
  862.  
  863. 3.3.3    Listendruck
  864. Auch  hier  wollen  wir  nicht  auf  den  gesamten  Datenbestand
  865. zurückgreifen, wir möchten eine Auswertung für den Monat Oktober
  866. 1994.
  867.  
  868.  
  869.  
  870.  22                                        CTO EHO 3.2 Profi -
  871.  Kit
  872.  
  873.    Option     Auswahl                Kommentar
  874.  
  875. Datei:        Umsatz   Die Liste  ist für  die Datei «UMSATZ»
  876.                        entworfen worden.
  877. Sortierung:   Rech.    Natürlich  sind   hier   auch   andere
  878.               Nr.      Sortierungen möglich.
  879. Bedingung:    Ja       Bei  «Nein»   wird  auf  den  gesamten
  880.                        Datenbestand zugegriffen.
  881. Filter:       Neu      Sollte schon ein Filter bestehen, kann
  882.               erstelle dieser  bearbeitet   oder   übernommen
  883.               n        werden.
  884. Klammer auf ? Nein     Die Klammerung  benötigt man, wenn man
  885.                        verknüpfte    Bedingungen     nochmals
  886.                        gegenüberstellen möchte.
  887. Auswahl       RECH_DAT s. Bedingungen.
  888. Felder
  889. Auswahl       größer   s. Bedingungen.
  890. Vergleich     oder
  891.               gleich
  892. Bedingungen   01.10.94 Hier geben  wir das  Anfangsdatum  des
  893.                        Auswertungszeitraums an
  894. Weiter ?      und      Wir  schließen   noch   eine   weitere
  895.                        Bedingung an.
  896. Klammer auf ? Nein     s. o.
  897. Auswahl       RECH_DAT s. Bedingungen.
  898. Felder
  899. Auswahl       kleiner  s. Bedingungen.
  900. Vergleich
  901. Bedingungen   01.11.94 Dies ist  wohl der einfachste Weg, die
  902.                        obere  Auswertungsgrenze  festzulegen,
  903.                        natürlich   könnte    man   auch   die
  904.                        Bedingung  «kleiner  gleich  31.10.94»
  905.                        setzen.  Hier   müßte  man  allerdings
  906.                        immer die Anzahl der Tage eines Monats
  907.                        berücksichtigen.
  908. Weiter ?      Ende     Hiermit beenden wir die Filtersetzung.
  909.                        Es   wäre    möglich,   noch   weitere
  910.                        Bedingungen   zu   setzen   oder   die
  911.                        Filtersetzung abzubrechen.
  912. Speichern     Bestätig Die  Filterbedingung  kann  jetzt  für
  913.               en       spätere Zwecke abgespeichert werden.
  914. Dateiname     UMSATZ   Wir vergeben einen Dateinamen, den wir
  915.                        später mit  der  Liste  in  Verbindung
  916.                        bringen können.
  917. Die Liste  kann nun  ausgedruckt werden;  berücksichtigt  werden
  918. alle Rechnungen, deren Rechnungsdatum im Monat Oktober liegt.
  919.  
  920.  
  921. 3.4 Beispiel 3
  922.  
  923.  
  924. 3.4.1    Aufgabe
  925. Sie brauchen eine Liste, die Ihnen alle Artikel ausdruckt, deren
  926. Bestand unter  den Mindestbestand  gerutscht ist.  Außerdem soll
  927. die Differenz zum Mindestbestand mit angegeben werden.
  928.  
  929.  
  930.  CTO EHO 3.2 Profi - Kit                                   23
  931.  
  932. 3.4.2    Lösung
  933. Die Felder  «BESTAND» und  «MINDBEST» sind  vom Typ «numerisch»,
  934. hiermit können also auch Rechenoperationen durchgeführt werden.
  935.  
  936. Die Eingabe im Rumpffeld muß also lauten:
  937.  
  938.  
  939.  #IIF(BESTAND <=  MINDBEST, "  ", NUMMER + " " + ARTIKEL+ " " +
  940.  STR(ABS(BESTAND-MINDBEST)))#5
  941.  
  942.  
  943.  
  944. 3.4.3    Erläuterung
  945. Wir setzen eine Bedingung: Wenn der aktuelle Bestand größer oder
  946. gleich dem  Mindestbestand ist,  soll keine Ausgabe in der Liste
  947. erfolgen (Leerzeichen zwischen den beiden Anführungszeichen), im
  948. anderen Fall  (Bestand ist  kleiner als der Mindestbestand) soll
  949. folgendes   ausgegeben   werden:   Artikelnummer,   Leerzeichen,
  950. Artikelbezeichnung, Leerzeichen,  der absolute Wert von BESTAND-
  951. MINDBEST. Um  letzteres zu  erreichen, setzen  wir die CLIPPER -
  952. Funktion ABS() ein.
  953.  
  954. Da wir  hier eine Zeichenkette ausgeben, muß der numerische Wert
  955. mittels  STR() alphanumerisch
  956. gewandelt   werden.   Es   ist   nicht   möglich,   verschiedene
  957. Feldtypen nebeneinander  auszugeben. Daher  ist  in
  958. solchen Fällen eine Umwandlung in eine Zeichenkette immer nötig.
  959.  
  960.  
  961. 3.4.4    Listendruck
  962. Soll diese  Liste für  die Artikel  eines bestimmten Lieferanten
  963. gedruckt werden, müssen wir auch hier einen Filter setzen.
  964.  
  965. ____________________
  966. 5 Dieser gesamte Ausdruck muß sich in einer Zeile befinden.
  967.  
  968.  
  969.  24                                        CTO EHO 3.2 Profi - Kit
  970.  
  971.    Option      Auswahl                Kommentar
  972.  
  973. Datei:        Lager      Die Liste  ist fürs  Lager entworfen
  974.                          worden.
  975. Sortierung:   Art. Nr.   Natürlich  sind   hier  auch  andere
  976.                          Sortierungen möglich.
  977. Bedingung:    Ja         Bei «Nein»  wird  auf  den  gesamten
  978.                          Lagerbestand zugegriffen.
  979. Filter:       Neu        Sollte schon  ein  Filter  bestehen,
  980.               erstellen  kann    dieser    bearbeitet    oder
  981.                          übernommen werden.
  982. Klammer auf ? Nein       Die Klammerung  benötigt  man,  wenn
  983.                          man verknüpfte  Bedingungen nochmals
  984.                          gegenüberstellen möchte.
  985. Auswahl       LIEFERANT  s. Bedingungen.
  986. Felder
  987. Auswahl       gleich     s. Bedingungen.
  988. Vergleich
  989. Bedingungen   007-0815   Hier  geben  wir  die  entsprechende
  990.                          Lieferantennummer ein.
  991. Mit           Nein       Leerzeichen «Ja»  benötigt man, wenn
  992. Leerzeichen ?            der  gesuchte  Ausdruck  Leerzeichen
  993.                          enthält.
  994. Weiter ?      Ende       Die Filterung ist beendet.
  995.  
  996.  
  997.  
  998. 4   Dateimanager
  999.  
  1000.  
  1001. 4.1 Allgemeines
  1002.  
  1003. Der  Dateimanager   bietet   viele   Möglichkeiten,   Daten   zu
  1004. selektieren, diese einzusehen und  zu ändern.
  1005.  
  1006. Im  Prinzip   können  Sie   hier  auf  alle  Ihre  Datenbestände
  1007. zugreifen.
  1008.  
  1009. Der Dateimanager  befindet sich  unter dem  Menüpunkt «Dienste».
  1010. Mit «ALT I» und «M» läßt er sich vom Hauptmenü aus aufrufen.
  1011.  
  1012. Sie erhalten dann je nach Auswahl etwa folgendes Bild:
  1013.  
  1014.  
  1015. In diesem  Beispiel ist  die Datei  «UMSATZ.DBF» angewählt, eine
  1016. Sortierung soll  nicht stattfinden, eine Bedingung zur Filterung
  1017. soll gesetzt und ein neuer Filter erstellt werden.
  1018.  
  1019. 4.2 Beispiel 1
  1020.  
  1021. 4.2.1    Aufgabe
  1022. Wir sind  im Oktober  1994 und wollen uns die offenen Rechnungen
  1023.  
  1024.  CTO EHO 3.2 Profi - Kit                                   25
  1025.  
  1026. ab 01.06.94 des Kunden Heinzelmann ausgeben lassen.
  1027.  
  1028. Dazu greifen wir auf die Datei «UMSATZ» zu.
  1029.  
  1030.  
  1031. 4.2.2    
  1032.  
  1033.  
  1034.  
  1035.  26                                        CTO EHO 3.2 Profi - Kit
  1036.  
  1037. Lösung
  1038. Option        Auswahl    Kommentar
  1039. Datei:        Umsatz     Wir  wollen   auf  die   Umsatzdaten
  1040.                          zugreifen.
  1041. Sortierung:   Rech.. Nr. Natürlich  sind   hier  auch  andere
  1042.                          Sortierungen möglich.
  1043. Bedingung:    Ja         Bei «Nein»  wird  auf  den  gesamten
  1044.                          Datenbestand zugegriffen.
  1045. Filter:       Neu        Sollte schon  ein  Filter  bestehen,
  1046.               erstellen  kann    dieser    bearbeitet    oder
  1047.                          übernommen werden.
  1048. Klammer auf ? Nein       Die Klammerung  benötigt  man,  wenn
  1049.                          man verknüpfte  Bedingungen nochmals
  1050.                          gegenüberstellen möchte.
  1051. Auswahl       NAME       s. Bedingungen.
  1052. Felder
  1053. Auswahl       gleich     s. Bedingungen.
  1054. Vergleich
  1055. Bedingungen   Heinzelman Hier geben  wir  den  entsprechenden
  1056.               n          Namen ein.
  1057. Mit           Nein       Leerzeichen «Ja»  benötigt man, wenn
  1058. Leerzeichen ?            der  gesuchte  Ausdruck  Leerzeichen
  1059.                          enthält.
  1060. Weiter ?      Ja         Wir setzen weitere Bedingungen.
  1061. Klammer auf ? Nein       Die Klammerung  benötigt  man,  wenn
  1062.                          man verknüpfte  Bedingungen nochmals
  1063.                          gegenüberstellen möchte.
  1064. Auswahl       BEZAHLT    s. Bedingungen.
  1065. Felder
  1066. Auswahl       NEIN       s. Bedingungen.
  1067. Vergleich
  1068. Weiter ?      und        Wir setzen weitere Bedingungen.
  1069. Klammer auf ? Nein       Die Klammerung  benötigt  man,  wenn
  1070.                          man verknüpfte  Bedingungen nochmals
  1071.                          gegenüberstellen möchte
  1072. Auswahl       RECH_DAT   s. Bedingungen.
  1073. Felder
  1074. Auswahl       größer     s. Bedingungen.
  1075. Vergleich     oder
  1076.               gleich
  1077. Bedingungen   01.06.94   Hier geben  wir das Anfangsdatum des
  1078.                          Auswertungszeitraums an.
  1079. Weiter ?      Ende       Wir schließen die Filtersetzung ab.
  1080. Filter        Speichern  Herr  Heinzelmann  ist  ein  äußerst
  1081.                          unzuverlässiger Kunde,  daher werden
  1082.                          wir den  Filter wohl später nochmals
  1083.                          brauchen.
  1084. Dateiname     HEINZEL    o. ä.
  1085.  
  1086.  
  1087. Kurz  darauf   erscheint  eine   Tabelle  mit  den  selektierten
  1088. Datensätzen.
  1089.  
  1090.  
  1091. 4.2.3    Summenbildung
  1092. Hier können  wir die  Daten weiterverarbeiten.  Eine  Summe  der
  1093. nicht bezahlten  Rechnungsbeträge läßt sich beispielsweise durch
  1094.  
  1095.  
  1096.  CTO EHO 3.2 Profi - Kit                                   27
  1097.  
  1098. Betätigen der  Taste «F4»  bilden. Es  erscheint ein Fenster mit
  1099. einer Feldauswahl. Hier setzen wir den Cursorbalken auf «GESAMT»
  1100. und bestätigen  mit «ENTER».  Der errechnete Betrag erscheint in
  1101. einem Fenster in der Bildschirmmitte.
  1102.  
  1103.  
  1104. 4.2.4    Filter ändern
  1105. Bei einer  erneuten Abfrage  können  wir  den  Filter  «HEINZEL»
  1106. wieder benutzen  oder auch  ändern.  Wenn  Sie  den  bestehenden
  1107. Filter ändern;  ändern  möchten,  erscheint
  1108. die  Filterbedingung   in  CLIPPER   -  Syntax,  also  nicht  in
  1109. Pseudotext. Das sieht bei oben erstellten Filter dann so aus:
  1110.  
  1111.  
  1112.  NAME="Heinzelmann"     .and.      .not.     BEZAHLT      .and.
  1113.  RECH_DAT>=ctod("01.06.94")
  1114.  
  1115.  
  1116. Sieht doch gut aus, oder?
  1117.  
  1118. Erläuterung: Der  zu suchende  Name ist  «Heinzelmann». Wenn wir
  1119. nun noch  einen säumigen  Kunden haben,  können wir dessen Namen
  1120. ohne weiteres  hier einsetzen. Achten Sie allerdings darauf, daß
  1121. die Anführungsstriche gesetzt bleiben.
  1122.  
  1123. Gleiches gilt für das Datum.
  1124.  
  1125. Eine Änderung  hier ist  viel schneller gemacht als nochmals den
  1126. Lauf durch  die Filtersetzung  vorzunehmen. Wenn  Sie hier etwas
  1127. austauschen, achten  Sie bitte  darauf,  daß  der  «Filterrumpf»
  1128. nicht beschädigt  wird, sonst  kann es  zu Fehlermeldungen  oder
  1129. falschen Ausgaben kommen.
  1130.  
  1131. Natürlich können  Sie auch  die Operatoren austauschen, wenn Sie
  1132. hier noch  nicht ganz  sicher sind  gehen Sie  den Weg  über die
  1133. Filtererstellung.
  1134.  
  1135. Die zweite  Bedingung  «.AND.  .NOT.  BEZAHLT»  fragt  das  Feld
  1136. «BEZAHLT» auf wahr oder falsch ab.
  1137.  
  1138. Die dritte  Bedingung «.AND. RECH_DAT>=CTOD("01.06.94")» filtert
  1139. den Zeitraum vom 01.06.94 bis zum aktuellen Datum.
  1140.  
  1141. Alle  drei   Bedingungen  sind  mit  «.AND.»  (logisches  «und»)
  1142. verknüpft, dies bedeutet alle drei Bedingungen müssen wahr sein,
  1143. damit es zur Ausgabe kommt.
  1144.  
  1145. Das Setzen  von Bedingungen  richtet sich  nach den  Regeln  der
  1146. Bool'chen Algebra.
  1147.  
  1148. Das  hier   gesagte  gilt   auch  für   die  Filtersetzung  beim
  1149. Listengenerator. Weitere  Hinweise zu  CLIPPER -  Funktionen und
  1150. Operatoren finden Sie im Anhang.
  1151.  
  1152.  
  1153.  28                                        CTO EHO 3.2 Profi - Kit
  1154.  
  1155. 4.3 Beispiel 2
  1156.  
  1157.  
  1158. 4.3.1    Aufgabe
  1159. Wir suchen  einen Kunden  mit dem Namen «Meier», wissen aber die
  1160. genaue Schreibweise nicht.
  1161.  
  1162.  
  1163. 4.3.2    Lösung
  1164. Hier bietet  der Dateimanager  eine Möglichkeit,  alle  «Meiers»
  1165. herauszufiltern.
  1166.  
  1167. Option        Auswahl    Kommentar
  1168. Datei:        Stammdaten Wir  wollen   auf   die   Adreßdaten
  1169.                          zugreifen.
  1170. Sortierung:   Name.      Natürlich  sind   hier  auch  andere
  1171.                          Sortierungen möglich.
  1172. Bedingung:    Ja         Bei «Nein»  wird  auf  den  gesamten
  1173.                          Adreßbestand zugegriffen.
  1174. Filter:       Neu        Sollte schon  ein  Filter  bestehen,
  1175.               erstellen  kann    dieser    bearbeitet    oder
  1176.                          übernommen werden.
  1177. Klammer auf ? Nein       Die Klammerung  benötigt  man,  wenn
  1178.                          man verknüpfte  Bedingungen nochmals
  1179.                          gegenüberstellen möchte.
  1180. Auswahl       NAME       s. Bedingungen.
  1181. Felder
  1182. Auswahl       Wild-Card- s. Bedingungen.
  1183. Vergleich     Suche
  1184. Bedingungen   M??er*     Wild-Card-Suche    bedeutet,     daß
  1185.                          Jokerzeichen    eingegeben    werden
  1186.                          können,    hierbei     steht     ein
  1187.                          Fragezeichen   für   ein   einzelnes
  1188.                          Zeichen,  ein   Sternchen  für  eine
  1189.                          beliebige Anzahl Zeichen.
  1190.                          Zwischen «M»  und «er» "fehlen" zwei
  1191.                          Zeichen ,  das  können  «ai»,  «ay»,
  1192.                          «ei» oder  «ey», aber auch z.B. «au»
  1193.                          oder «al» sein.
  1194.                          Das  Sternchen  müssen  wir  setzen,
  1195.                          weil noch eine Reihe von Leerzeichen
  1196.                          folgt.
  1197. Mit           Nein       Leerzeichen «Ja»  benötigt man, wenn
  1198. Leerzeichen ?            der  gesuchte  Ausdruck  Leerzeichen
  1199.                          enthält.
  1200. Weiter ?      Ende       Wir    setzen     keine     weiteren
  1201.                          Bedingungen.
  1202.  
  1203.  
  1204. Wenn Sie  den Filter  noch häufiger  benutzen möchten, speichern
  1205. Sie ihn unter einem wiedererkennbaren Namen ab.
  1206.  
  1207.  
  1208.  CTO EHO 3.2 Profi - Kit                                   29
  1209.  
  1210. 4.3.3    Ergebnis
  1211. Es  wird  eine  Tabelle  ausgegeben,  in  der  soweit  vorhanden
  1212. «Maier», «Mayer»,  «Meier», «Meyer».  aber auch «Maler», «Mauer»
  1213. o.ä. aufgelistet sind.
  1214.  
  1215. Die Filterbedingung wird bei der Änderung so angezeigt:
  1216.  
  1217. LIKE("M??er*",NAME)
  1218.  
  1219.  
  1220. Die  Funktion  «LIKE()»  gehört
  1221. leider nicht  zum standardmäßigen  Umfang von  CLIPPER und steht
  1222. daher nicht bei den Generatoren zur Verfügung.
  1223.  
  1224.  
  1225. 5   Artikeletiketten
  1226.  
  1227.  
  1228. 5.1 Allgemeines
  1229.  
  1230. Der Generator  für die Artikeletiketten verhält sich ähnlich wie
  1231. der    Listengenerator.     Auch    hier    können    Sie    mit
  1232. «F4» die  Felder abrufen  und durch  «ENTER»
  1233. übernehmen;   ebenfalls   zur   Verfügung   stehen   Ihnen   die
  1234. Druckersequenzen (abrufbar mit «F5»).
  1235.  
  1236. Durch den  Etikettengenerator wird  es auch  ermöglicht, mehrere
  1237. Bahnen nebeneinander   zu
  1238. drucken.  Dies   ist  besonders  für  Besitzer  von  Laser-  und
  1239. Tintenstrahldruckern interessant.
  1240.  
  1241. Den   Etikettengenerator    erreichen   Sie   über   «LAGER»   -
  1242. «ARTIKELETIKETTEN»
  1243.  
  1244. 5.2 Sie können jetzt bestehende Vorlagen wählen, prüfen  oder
  1245. ändern oder ein völlig neues gestalten.
  1246.  
  1247.  
  1248.  30                                        CTO EHO 3.2 Profi - Kit
  1249.  
  1250. 5.2.1    Erläuterung
  1251. Hier  wurde  eine  Etikettenvorlage  geschaffen,  die  folgendes
  1252. ausgibt:
  1253.  
  1254. Zeile #NUMMER# Ausgabe der Artikelnummer
  1255. 1
  1256. Zeile #ARTIKEL# #BRUTTO#  Ausgabe der Artikelbezeichnung und des
  1257. 2     Bruttopreises
  1258. Zeile #IIF(VE <> 0,"Verp. Einh."+ STR(VE)," ") #
  1259. 3     Wenn das  Feld «VE» (Verpackungseinheit) ungleich «0» ist,
  1260.       gib die  Zeichenkette «Verp.  Einh.» und das Feld «VE» aus
  1261.       (Umwandlung durch  «STR()» zur Zeichenkette nötig, da «VE»
  1262.       ein numerisches Feld ist).
  1263.  
  1264.  
  1265.  
  1266.                                  Erläuterung:
  1267.                                  
  1268.                                  Bei den beiden ersten
  1269.                                  Artikel steht im Feld
  1270.                                  «VE» eine «0», darum
  1271.                                  bleibt die
  1272.                                  entsprechende Zeile aus
  1273.                                  dem Etikett frei; bei
  1274.                                  Etikett 3 sehen wir die
  1275.                                  in der dritten Zeile
  1276.                                  die entsprechende
  1277.                                  Information.
  1278.  
  1279.  
  1280.  CTO EHO 3.2 Profi - Kit                                   31
  1281.  
  1282.  10
  1283.  Handbuch EHO 3.0X
  1284.  0.30
  1285.  
  1286.  
  1287.  
  1288.  1000
  1289.  386 dx 40 Board
  1290.  140.40
  1291.  
  1292.  
  1293.  
  1294.  900
  1295.  Tüte Hallowach
  1296.  50.50
  1297.  Verp. Einh.:   5.00
  1298.  
  1299.  
  1300.  
  1301. Soll das  ganze  z.B.  zweibahnigzweibahnig;
  1302. gedruckt werden,  so müssen  alle Einträge  im Generator  in den
  1303. jeweiligen     Zeilen     im     entsprechenden     horizontalen
  1304. Etikettenabstand wiederholt werden.
  1305.  
  1306.  
  1307. 6   Druckeransteuerung
  1308.  
  1309.  
  1310. 6.1 Allgemeines
  1311.  
  1312. Sie haben die Möglichkeit, im Listen-, Formular- und
  1313. Etikettengenerator durch Betätigen der Taste «F5» Sequenzen für
  1314. die Druckeransteuerung zu übernehmen.
  1315.                                 
  1316.  
  1317. Vom Programm aus werden die jeweiligen zum Druckertyp gehörenden
  1318. Sequenzen in die Generatormaske geschrieben. Dies geschieht in
  1319. etwa folgender Art:
  1320. CHR(027)+CHR(040)+CHR(015)+CHR(053)+CHR(072)
  1321.  
  1322. Das ASCII-Zeichen «027» entspricht dem «ESCAPE - Zeichen» und
  1323. leitet die meisten Steuersequenzen ein. Deshalb spricht man hier
  1324. auch von ESCAPE - Sequenzen.
  1325. Durch Einsetzen dieser Sequenzen können Sie Drucker über die
  1326. Software ansteuern und beispielsweise so die Formatierung der zu
  1327. druckenden Texte beeinflussen.
  1328.  
  1329. Die von CTO EHO benutzten Druckersequenzen befinden sich in der
  1330. Datei «DRUCKER.DBF»
  1331. Jedem hier aufgeführten Druckertyp sind die folgenden Sequenzen
  1332. zugeordnet:
  1333. Wenn Sie z.B. einen Drucker aus der HP DESKJET Serie gewählt
  1334. haben, stehen insgesamt folgende Sequenzen zur Verfügung:
  1335.  
  1336. HP DESKJET 500 / 510 / 550
  1337.  
  1338.  
  1339.  
  1340.  32                                        CTO EHO 3.2 Profi -
  1341.  Kit
  1342.  
  1343.     Druckbefehl       Steuersequenz
  1344. ELITE               027/040/115/049/050/072
  1345. RESET               027/069
  1346. NLQ                 027/040/115/049/048/072
  1347. NORMAL              027/040/115/049/048/072
  1348. BREIT               027/040/115/053/072
  1349. SCHMAL_EIN          027/040/115/050/048/072
  1350. SCHMAL_AUS          027/040/115/049/050/072
  1351. EINZEL              027/038/108/050/065
  1352. ENDLOS              027/067/072
  1353. Bei den Generatoren wurde auf eine direkte Übernahme von EINZEL
  1354. und ENDLOS sowie RESET verzichtet, da diese hier wenig Sinn
  1355. machen.
  1356.  
  1357. 6.2 ELITE, NORMAL und NLQ, NORMAL und
  1358. NLQ:Druckeransteuerung;
  1359.  
  1360. Je  nach   persönlichem  Geschmack   können  diese   Schriftmodi
  1361. eingesetzt werden.  Beachten Sie jedoch, daß je nach Drucker die
  1362. Wahl des Schriftmodus sich auf die Anzahl der druckbaren Zeichen
  1363. pro Zoll auswirkt.
  1364.  
  1365. ELITE ist  meist eine  sogenannte 12  CPI6 -  Schrift; NLQ  oder
  1366. Schönschrift meist 10 CPI.
  1367.  
  1368. Insgesamt stehen  Ihnen gerechnet  auf die  DIN A-4 Seitenbreite
  1369. bei einer 12 CPI-Schrift 80 Zeichen zur Verfügung.
  1370.  
  1371.  
  1372. 6.3 Schmaldruck
  1373.  
  1374. Ab dem Moment, in dem beispielsweise die Sequenz für Einschalten
  1375. des Schmaldrucks  gesendet wird,  wird solange  schmal gedruckt,
  1376. bis die Sequenz zum Ausschalten dieses Modus gesendet wird.
  1377.  
  1378. Wenn Sie  beispielsweise eine  Liste nur im Schmaldruck ausgeben
  1379. lassen, steht Ihnen etwa doppelt so viel Platz zur Verfügung wie
  1380. beim Druck mit ELITE.
  1381.  
  1382.  
  1383. 6.4 Breitdruck
  1384.  
  1385. Breitdruck gilt  bei den  meisten Druckern immer für eine Zeile,
  1386. deshalb gibt es hier auch keinen eigenen Befehl zum Ausschalten.
  1387. Bei Druckern, die dies nicht unterstützen, kann durch Senden der
  1388. ELITE-Sequenz der Breitdruck wieder aufgehoben werden.
  1389.  
  1390. ____________________
  1391. 6 Characters Per Inch - Zeichen pro Zoll
  1392.  
  1393.  
  1394.  CTO EHO 3.2 Profi - Kit                                   33
  1395.  
  1396. Wenn Sie  beispielsweise eine  Liste nur  im Breitdruck ausgeben
  1397. lassen, steht  Ihnen etwa  halb so  viel Platz zur Verfügung wie
  1398. beim Druck mit ELITE.
  1399.  
  1400.  
  1401. 6.5 Sonstige Druckersequenzen
  1402.  
  1403. Wenn Sie  z.B. Fettdruck  oder andere  Effekte erzielen  wollen,
  1404. können  Sie   die  entsprechen   Sequenzen  dem  Druckerhandbuch
  1405. entnehmen und sie in der oben erwähnten Form manuell eingeben.
  1406.  
  1407.  
  1408. 7   
  1409.  
  1410.  
  1411.  
  1412.  34                                        CTO EHO 3.2 Profi - Kit
  1413.  
  1414. Anhang
  1415.  
  1416.  
  1417. 7.1 Kurzreferenz CLIPPER - Funktionen
  1418.  
  1419. Diese Kurzreferenz  bietet nur eine kleine Auswahl der CLIPPER -
  1420. Funktionen und erhebt somit keinen Anspruch auf Vollständigkeit.
  1421.  
  1422. Wer dieses  Thema  vertiefen  möchte,  erhält  Informationen  in
  1423. Fachbüchern zur  Programmiersprache CLIPPER und natürlich in den
  1424. Originalhandbüchern.
  1425.  
  1426. Groß-  und   Kleinschreibung der Funktionen werden unter CLIPPER nicht
  1427. unterschieden. Sie dienen lediglich der besseren Übersicht.
  1428.  
  1429.  
  1430.  CTO EHO 3.2 Profi - Kit                                   35
  1431.  
  1432. 7.1.1    Funktionen zur Umwandlung von Feldtypen
  1433.  
  1434. Funktion Aufgabe           Syntax              Beispiel
  1435. DTOC().i Wandelt einen     DTOC( dAusdruck)7   DTOC(RECH_DAT)
  1436. .DTOC(): Ausdruck vom Typ
  1437. CLIPPER  «Datum» in einen
  1438. -        alphanumerischen
  1439. Funktion Ausdruck um.
  1440. en;
  1441. CTOD().i Wandelt einen     DTOC(zAusdruck) 8,  CTOD("26.10.94")
  1442. .CTOD(): Ausdruck vom Typ
  1443. CLIPPER  «alphanumerisch»
  1444. -        in einen
  1445. Funktion Datumsausdruck
  1446. en;      um.
  1447. STR()    Wandelt einen     STR(nAusdruck9,[nLä STR(NETTO)
  1448.          Ausdruck vom Typ  nge],[nDe-
  1449.          «numerisch» in    zimalstellen]10)
  1450.          einen
  1451.          alphanumerischen
  1452.          Ausdruck um.
  1453. CHR()    Wandelt ein ASCII CHR(aCode)11        CHR(027)
  1454.          - Zeichen in                          Leitet eine ESCAPE -
  1455.          - einen Zeichenwert um.               Sequenz ein.
  1456.          Wird z.B. zur
  1457.          Steuerung von
  1458.          Druckern
  1459.          benötigt.
  1460.  
  1461.  
  1462.  
  1463.  
  1464.  
  1465.  
  1466.  
  1467.  
  1468.  
  1469.  
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479. ____________________
  1480. 7 Datumsfeld
  1481.  
  1482. 8 alphanumerisches Feld, Zeichenkette
  1483.  
  1484. 9 numerisches Feld
  1485.  
  1486. 10 Angaben in eckigen Klammern sind optional
  1487.  
  1488. 11 ASCII - Zeichen
  1489.  
  1490.  
  1491.  
  1492.  36                                        CTO EHO 3.2 Profi -
  1493.  Kit
  1494.  
  1495. 7.1.2    Funktionen zur Manipulation von numerischen
  1496. Werten
  1497. Funktion Aufgabe           Syntax              Beispiel
  1498. ROUND()  Rundet  den  Wert ROUND(nFeld,n)      ROUND(GESAMT,2)
  1499.           auf          eine                     Der Wert vom Feld
  1500.           gewünschte Anzahl                     «Gesamt» wird als
  1501.         - von                                   Wert mit zwei
  1502. Funktion Nachkommastellen                      Nachkommastellen
  1503. en;      ab.                                   ausgegeben.
  1504. ABS()    Zeigt         den ABS(nFeld)          ABS(MINDBEST-
  1505.          absoluten    Wert                     BESTAND) zeigt evtl.
  1506.          - eines numerischen                   Negativbeträge   als
  1507.          Funktion Feldes an.                    positive an.
  1508.  
  1509. INT()    Wandelt     einen INT(nFeld)          INT(GESAMT)
  1510.          numerischen                           Das  Feld   «GESAMT»
  1511.          Ausdruck in einen                     wird            ohne
  1512.          ganzzahligen                          Nachkommastellen
  1513.          Wert um.                              angezeigt.
  1514.  
  1515. 7.1.3    
  1516.  
  1517.  
  1518.  CTO EHO 3.2 Profi - Kit                                   37
  1519.  
  1520. Funktionen zur Manipulation von Zeichenketten
  1521.  
  1522. Funktion Aufgabe           Syntax              Beispiel
  1523. SUBSTR() Beschränkt die    SUBST(zAusdruck,a,n SUBSTR(ARTIKEL,1,20)
  1524.          Gibt    vom     Feld
  1525. Zeichenkette ab   a-> Anfangsposition «ARTIKEL» angefangen
  1526. PER    - der gewünschten   n->   Anzahl    der von    der    ersten
  1527. Funktion Position auf die  Zeichen             Position 20  Zeichen
  1528. en;      gewünschte Anzahl                     statt            der
  1529.          von Zeichen .                         vorgegebenen 30 aus.
  1530. TRIM().i Unterdrückt   die TRIM(zAusdruck)     TRIM(PLZ)
  1531. .TRIM(): Leerstellen                           Schneidet die  nicht
  1532. CLIPPER  rechts        vom                     benutzten    Stellen
  1533. -        Ausdruck.                             rechts   vom    Feld
  1534. Funktion                                       «PLZ» ab. Reserviert
  1535. en;                                            für  «PLZ»   sind  9
  1536.                                                Zeichen;  in  diesem
  1537.                                                Fall    würde    die
  1538.                                                Anzahl   bei   einer
  1539.                                                fünfstelligen    PLZ
  1540.                                                auf die  eingegebene
  1541.                                                Anzahl   (z.B.:   5)
  1542.                                                beschränkt.
  1543.                                                Achtung:       feste
  1544.                                                Spalten können  dann
  1545.                                                u.  U.   nicht  mehr
  1546.                                                eingehalten werden.
  1547. LTRIM()Unterdrückt       LTRIM(STR(nFeld))   LTRIM(STR(GESAMT))
  1548.        links, bedingt
  1549.       - durch die Umwand-
  1550.       lung von
  1551.       numerischen Fel-
  1552.       dern. und
  1553.       führenden Nullen.
  1554.  
  1555.  
  1556. 7.1.4    Zeit- bzw. Datumsfunktionen
  1557.  
  1558. Funktion      Aufgabe            Syntax              Beispiel
  1559. DATE().i Gibt das aktuelle DATE()              DATE()
  1560. .DATE(): Systemda-tum aus.                     Zu diesem Datum kann
  1561. CLIPPER                                        ein numerischer Wert
  1562. -                                              addiert         oder
  1563. Funktion                                       subtrahiert werden.
  1564. en;                                            «DATE()  +14»   gibt
  1565.                                                das  aktuelle  Datum
  1566.                                                plus 14 Tage aus.
  1567.  
  1568. TIME()   Gibt die aktuelle TIME()              TIME()
  1569.          Systemzeit aus.
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  38                                        CTO EHO 3.2 Profi -
  1576.  Kit
  1577.  
  1578. 7.1.5    Sonstige Funktionen
  1579.  
  1580. Funktion Aufgabe           Syntax              Beispiel
  1581. IIF()    IIF(Bedingung,Aktio IIF(ANZAHL=0,"    ",
  1582.          Bedingungen   und n1,Aktion2)         ANZAHL)
  1583.          den    jeweiligen Wenn die  Bedingung Wenn «ANZAHL» gleich
  1584.          Anweisungen      wahr                Null,    gib     ein
  1585.                            ist, führe  Aktion1 Leerzeichen     aus,
  1586.                            aus, sonst Aktion2. sonst    das    Feld
  1587.                                                «Anzahl».
  1588.  
  1589. SPACE()  Ausgabe       von SPACE(zahl)         SPACE(30)
  1590. i.SPACE( Leerzeichen                           Gibt 30  Leerzeichen
  1591. ):CLIPPE                                       aus.
  1592. R      -
  1593. Funktion
  1594. en;
  1595.  
  1596.  
  1597. 7.2 
  1598.  
  1599.  
  1600.  CTO EHO 3.2 Profi - Kit                                   39
  1601.  
  1602. Operatoren
  1603.  
  1604.  
  1605. 7.2.1    Vergleichsoperatoren
  1606. Vergleichsoperatoren  dienen  dazu  Ausdrücke  mit  einander  zu
  1607. vergleichen.
  1608.  
  1609. Operator   Beschreibung               Beispiel
  1610.    =     Fragt        zwei IIF(NAME = "Bond", ...)
  1611.          Ausdrücke     auf
  1612.          absolute
  1613.          Gleichheit ab.
  1614.    <>    Fragt        zwei IIF(NAME <> "Bond", ...)
  1615.          Ausdrücke     auf
  1616.          absolute
  1617.          Ungleichheit ab.
  1618.    >     Fragt   ab,    ob IIF(AD_UMS >5000, ......)
  1619.          Ausdruck        1
  1620.          (Linkswert)
  1621.          größer  als   der
  1622.          Ausdruck        2
  1623.          (Rechtswert) ist.
  1624.    >=    Fragt   ab,    ob IIF(AD_UMS >=5000, ......)
  1625.          Ausdruck        1
  1626.          (Linkswert)
  1627.          größer  als   der
  1628.          Ausdruck        2
  1629.          (Rechtswert) oder
  1630.          ihm gleich ist.
  1631.    <     Fragt   ab,    ob IIF(AD_UMS <5000, ......)
  1632.          Ausdruck        1
  1633.          (Linkswert)
  1634.          kleiner  als  der
  1635.          Ausdruck        2
  1636.          (Rechtswert) ist.
  1637.    <=    Fragt   ab,    ob IIF(AD_UMS <=5000, ......)
  1638.          Ausdruck        1
  1639.          (Linkswert)
  1640.          kleiner  als  der
  1641.          Ausdruck        2
  1642.          (Rechtswert) oder
  1643.          ihm gleich ist.
  1644.    $     Ermittelt,     ob IIF("ay"$NAME),NAME, " ")
  1645.          bestimmte Zeichen Wenn  "ay"   im   Feld   «NAME»
  1646.          in          einer enthalten ist,  gib  den  Namen
  1647.          Zeichenkette      aus sonst ein Leerzeichen.
  1648.          vorkommen .
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  40                                        CTO EHO 3.2 Profi -
  1654.  Kit
  1655.  
  1656. 7.2.2    Mathematische Operatoren
  1657. Operator   Beschreibung               Beispiel
  1658.  
  1659.    +     Pluszeichen       DATE() + 14
  1660.  
  1661.    -     Minuszeichen      #MINDBEST-BESTAND#
  1662.  
  1663.    *     Multiplikationsze #ANZAHL*EPREIS#
  1664.          ichen
  1665.  
  1666.    /     Divisionszeichen  #GESAMT/ANZAHL#
  1667.  
  1668.  
  1669. 7.2.3    
  1670.  
  1671.  
  1672.  CTO EHO 3.2 Profi - Kit                                   41
  1673.  
  1674. Logische Operatoren
  1675. Groß-  und   Kleinschreibung der Operatoren werden unter CLIPPER nicht
  1676. unterschieden. Sie dienen lediglich der besseren Übersicht.
  1677.  
  1678. Operator Beschreibung      Beispiel
  1679. .AND.    Verknüpft    zwei IIF(ANZAHL=0              .AND.
  1680.          Bedingungen       NUMMER="<direkt>",
  1681.          miteinander,  das Aktion1,Aktion2)
  1682.          Ergebnis      ist Hier müssen  beide  Bedingungen
  1683.          wahr, wenn  beide erfüllt  sein,   damit  Aktion1
  1684.          erfüllt werden.   ausgeführt wird.
  1685.          Achten  Sie   auf
  1686.          die
  1687.          Begrenzungspunkte
  1688.          !
  1689. .OR.     Verknüpft    zwei IIF(ANZAHL=0               .OR.
  1690.          Bedingungen   mit NUMMER="<direkt>",
  1691.          einander,     das Aktion1,Aktion2)
  1692. Operator Ergebnis      ist Hier muß  mindestens  eine  der
  1693. en;      wahr,        wenn beiden   Bedingungen    erfüllt
  1694.          mindestens   eine sein, damit  Aktion1 ausgeführt
  1695.          der   Bedingungen wird.
  1696.          erfüllt wird.
  1697.          Achten  Sie   auf
  1698.          die
  1699.          Begrenzungspunkte
  1700.          !
  1701.          .NOT. Logisches «NICHT» IIF(.NOT. MIT_RABATT, Artikel,"
  1702.           Achten  Sie   auf ")
  1703.           die               «MIT_RABATT» ist  ein logisches
  1704.           Begrenzungspunkte Feld aus der «Artikel.dbf »
  1705.       !                 Erläuterung:
  1706.                            Wenn    ein    Artikel    nicht
  1707.                            rabattfähig ist,  gib das  Feld
  1708.                            «ARTIKEL»   aus,    sonst   ein
  1709.                            Leerzeichen.
  1710.  
  1711. 7.3 
  1712.  
  1713.  
  1714.  
  1715.  42                                        CTO EHO 3.2 Profi -
  1716.  Kit
  1717.  
  1718. Variablen für Formulargenerator
  1719.  
  1720.  
  1721. 7.3.1    Rechnung, Gutschrift, Angebot und Auftragsbestätigung
  1722. Hier  stehen   folgende  Felder   zur Verfügung:
  1723. Datum -> D
  1724. Numerisch -> N
  1725. Alpahumerisch -> C
  1726.  
  1727.  
  1728.  CTO EHO 3.2 Profi - Kit                                   43
  1729.  
  1730. 7.3.1.1  Kopfbereich
  1731.     VARIABLE            BEDEUTUNG       bei (B)rutto- Feldtyp
  1732.                                             oder
  1733.                                         (N)ettofaktur
  1734.                                            ierung
  1735.                                          einsetzbar
  1736. AUFDAT            Datum             der B/N             D
  1737.                   Auftragsbestätigung
  1738. DAT               Rechnungsdatum        B/N             D
  1739. F_REZUS           Zusatzzeile       für B/N             C
  1740.                   Rechnungen
  1741. RENUM             Rechnungsnummer       B/N             N
  1742. TMP_KUN           Kundennummer          B/N             C
  1743. TMP_UST_NR        Umsatzsteuer-Nummer   B/N             C
  1744. VERKAEUFER        Verkäufernummer       B/N             N
  1745.  
  1746.  
  1747.  
  1748. 7.3.1.2  Fußbereich
  1749.     VARIABLE            BEDEUTUNG         Einsetzen   Feldtyp
  1750.                                              bei                                                (B)rutto-
  1751.                                              oder
  1752.                                          (N)ettofaktu
  1753.                                          rierung bzw.
  1754.                                           (Q)uittung
  1755. AKONTOSUM         Akontobetrag           B/N            N
  1756. BRUTTO1           Bruttobetrag        1. Q/B            N
  1757.                   Steuersatz
  1758. BRUTTO2           Bruttobetrag        2. Q/B            N
  1759.                   Steuersatz
  1760. MW1               MWST 1. Steuersatz     Q/B/N          N
  1761. MW2               MWST 2. Steuersatz     Q/B/N          N
  1762. SU!               Nettobetrag         1. Q/B/N          N
  1763.                   Steuersatz
  1764. SU0               Nettobetrag        für N              N
  1765.                   Steuersatz 0
  1766. SU2               Nettobetrag         2. Q/B/N          N
  1767.                   Steuersatz
  1768. ZW1               Gesamtbrutto      ohne Q/B            N
  1769.                   Rabatt
  1770. ZW1               Gesamtnetto       ohne N              N
  1771.                   Rabatt
  1772.  
  1773.  
  1774. 7.3.2    Quittung
  1775.            VARIABLE                 BEDEUTUNG      Feldtyp
  1776. DAT                            Rechnungsdatum         D
  1777. RENUM                          Rechnungsnummer        N
  1778. VERKAEUFER                     Verkäufernummer        N
  1779.  
  1780.  
  1781.  
  1782.  
  1783.  44                                        CTO EHO 3.2 Profi -
  1784.  Kit
  1785.  
  1786. 7.3.3    Allgemeine Variablen
  1787.            VARIABLE                 BEDEUTUNG      Feldtyp
  1788. F_DOPP                         doppelter              C
  1789.                                Trennstrich
  1790. F_EINF                         einfacher              C
  1791.                                Trennstrich
  1792. F_STEUER                       Bezeichnung für die    C
  1793.                                Steuer
  1794. F_WAEHRUNG                     Bezeichnung für die    C
  1795.                                Währung
  1796.  
  1797. 7.3.4    
  1798.  
  1799.  
  1800.  CTO EHO 3.2 Profi - Kit                                   45
  1801.  
  1802. Lieferschein
  1803.            VARIABLE                 BEDEUTUNG        Feldtyp
  1804. AUFNUM                         Auftragsnummer           C
  1805. RENUM                          Lieferscheinnummer       N
  1806. TMP_KUN                        Kundennummer             C
  1807. AUFDAT                         Auftragsdatum            D
  1808. L_DATUM                        Lieferdatum              D
  1809. DRUNUM                         Seitenzahl               N
  1810. ZW1                            Nettogesamtpreis         N
  1811.  
  1812.  
  1813.  
  1814. 7.3.5    Bestellungen
  1815.            VARIABLE                 BEDEUTUNG        Feldtyp
  1816. B_AUFDAT                       Bestellungsdatum         D
  1817. DRUNUM                         Seitenzahl               N
  1818. TMP_AUFNUM                     Bestellungsnummer        N
  1819. TMP_FN                         Faxnummer         -      C
  1820.                                Empfänger
  1821. TMP_KUN                        Kundennummer             C
  1822. ZW1                            Gesamtpreis              N
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  46                                        CTO EHO 3.2 Profi - Kit
  1828.  
  1829. .Anfang Index.
  1830.  
  1831.  
  1832.  
  1833.                                   CTOD()
  1834.                                    CLIPPER - Funktionen  26
  1835.  
  1836. $
  1837.                                   
  1838. $                                 D
  1839.  rechter Feldbegrenzer,
  1840.    Listengenerator  17            DATE()
  1841.                                    CLIPPER - Funktionen  27
  1842.                                   Dateien
  1843.                                    Endungen bei Reports  12
  1844. .                                 Dateimanager  19
  1845.                                   Division durch Null  8
  1846. .NOT.                             DRUCKER.DBF
  1847.  Logische Operatoren  29           Druckeransteuerung  24
  1848. .OR.                              Druckeransteuerung  24
  1849.  Logische Operatoren  29          DTOC()
  1850.                                    CLIPPER - Funktionen  26
  1851.  
  1852.  
  1853. A                                 
  1854.                                   E
  1855. ABS()
  1856.  CLIPPER - Funktionen  18; 26     Einleitung  3
  1857. Abstände zwischen den             ELITE, NORMAL und NLQ
  1858.  Spaltenbezeichnern  7             Druckeransteuerung  25
  1859. alphanumerische Felder  5         ESCAPE - Sequenz  26
  1860. AND.
  1861.  Logische Operatoren  29
  1862. ARCHIV.DBF  6                     
  1863. ARTIKEL.DBF                       F
  1864.  Formulargenerator  6
  1865. Artikeletiketten  22              Felder anderer Dateien
  1866.  mehrere Bahnen  22                Formulargenerator  6
  1867.  zweibahnig  24                   Feldtypen  18
  1868.                                   Filter
  1869.                                    bestehenden ändern  20
  1870.                                   Formular  5
  1871. B                                 Formulargenerator  4
  1872.  
  1873. Bedingungen mit IIF()
  1874.  verschachtelt  11                
  1875. Breitdruck                        G
  1876.  Druckeransteuerung  25
  1877.                                   Groß- und Kleinschreibung
  1878.                                    bei ClLIPPER - Funktionen
  1879.                                      26
  1880. C                                  bei ClLIPPER - Operatoren
  1881.                                      29
  1882. CHR()
  1883.  CLIPPER - Funktionen  26
  1884. CLIPPER - Funktionen
  1885.  Kurzreferenz  26
  1886.  
  1887.  
  1888.  CTO EHO 3.2 Profi - Kit                                   47
  1889.  
  1890.                                   
  1891. I                                 S
  1892.  
  1893. IIF()                             Schmaldruck
  1894.  CLIPPER - Funktionen  27          Druckeransteuerung  25
  1895.  CLIPPER- Funktionen,             Sonstge Funktionen
  1896.    Beispiel  11                    CLIPPER - Funktionen  27
  1897. INT()                             Sonstige Druckersequenzen
  1898.  CLIPPER - Funktionen  26          Druckeransteuerung  25
  1899.                                   SPACE()
  1900.                                    CLIPPER - Funktionen  27
  1901.                                   Steuersequenzen
  1902. K                                  Formulargenerator  9
  1903.                                   STR()
  1904. Kopfteil                           CLIPPER - Funktionen  5; 7;
  1905.  Formulargenerator  5                16; 18; 26
  1906. KUNDEN.DBF                        SUBSTR()
  1907.  Forulargenerator  6               CLIPPER - Funktionen  6; 27
  1908.                                   Summenfelder
  1909.                                    in Listen  12
  1910.                                   Summierung von Feldern
  1911. L                                  Listengenerator  17
  1912.  
  1913. Leerzeilen
  1914.  Formulargenerator  5             
  1915. LIKE()                            T
  1916.  CLIPPER - Funktionen  22
  1917. Listengenerator  12               Trennstrich  7
  1918. Logische Operatoren  29           TRIM()
  1919. LTRIM()                            CLIPPER - Funktionen  27
  1920.  CLIPPER - Funktionen  16; 27
  1921.  
  1922.                                   
  1923.                                   U
  1924. M
  1925.                                   UMSATZ.DBF
  1926. Manipulation von numerischen       Formulargenerator  6
  1927.  Werten                           Umwnadlung von Feldtypen
  1928.  CLIPPER - Funktionen  26          CLIPPER - Funktionen  26
  1929. Manipulation von
  1930.  Zeichenketten
  1931.  CLIPPER - Funktionen  27         
  1932. Mathematische Operatoren  28      V
  1933.  
  1934.                                   Variablen für
  1935.                                    Formulargenerator  30
  1936. N                                 Variablen in Formularen
  1937.                                    Kopf- und Fußbereichen  5
  1938. numerische Felder  5              Vergleichsoperatoren  28
  1939.  
  1940.  
  1941.                                   
  1942. R                                 W
  1943.  
  1944. Rechenformeln                     Wild-Card-Suche
  1945.  Eingabe von  8                    Filtersetzung  21
  1946. ROUND()
  1947.  CLIPPER - Funktionen  26
  1948.  
  1949.  
  1950.  
  1951.  48                                        CTO EHO 3.2 Profi -
  1952.  Kit
  1953.  
  1954.                                   Zeit- bzw. Datumsfunktionen
  1955. Z                                  CLIPPER - Funktionen  27
  1956.  
  1957. Zeichenketten  5
  1958. Zeichenketten verbinden  7
  1959.  
  1960.  
  1961.