Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision dda4cde1

Von Moritz Bunkus vor fast 13 Jahren hinzugefügt

Diverse XML-Bugs in der Doku gefixt

Unterschiede anzeigen:

doc/dokumentation.xml
25 25
        url="http://www.lx-office.org/forum/">http://www.lx-office.org/forum/</ulink></para>
26 26
      </listitem>
27 27
    </itemizedlist>
28

  
29
    <!--  -->
30 28
  </chapter>
31 29

  
32 30
  <chapter id="config">
......
462 460

  
463 461
        <programlisting>local all lxoffice password
464 462
host all lxoffice 127.0.0.1 255.255.255.255 password</programlisting>
465

  
466
        <!--  -->
467 463
      </sect2>
468 464

  
469 465
      <sect2 id="Erweiterung-für-servergespeicherte-Prozeduren">
......
475 471
        führen Sie die folgenden Kommandos aus:</para>
476 472

  
477 473
        <programlisting>create language 'plpgsql';</programlisting>
478
        <!--  -->
479 474
      </sect2>
480 475

  
481 476
      <sect2 id="Datenbankbenutzer-anlegen">
......
491 486
        <para>Wenn Sie später einen Datenbankzugriff konfigurieren, verändern
492 487
        Sie den evtl. voreingestellten Benutzer “postgres” auf “lxoffice” bzw.
493 488
        den hier gewählten Benutzernamen.</para>
494

  
495
        <!--  -->
496 489
      </sect2>
497 490
    </sect1>
498 491

  
......
850 843

  
851 844
        <para>Dieselben Optionen können auch für die SystemV-basierenden
852 845
        Runlevel-Scripte benutzt werden (siehe oben).</para>
853

  
854
        <!--  -->
855 846
      </sect2>
856 847
    </sect1>
857 848

  
......
861 852
      <para>Informationen über die Einrichtung der Benutzerauthentifizierung,
862 853
      über die Verwaltung von Gruppen und weitere Einstellungen</para>
863 854

  
864
      <!--  -->
865

  
866 855
      <sect2 id="Grundlagen-zur-Benutzerauthentifizierung">
867 856
        <title>Grundlagen zur Benutzerauthentifizierung</title>
868 857

  
......
1043 1032

  
1044 1033
        <para><ulink
1045 1034
        url="http://localhost/lx-erp/admin.pl">http://localhost/lx-erp/admin.pl</ulink></para>
1046

  
1047
        <!--  -->
1048 1035
      </sect2>
1049 1036
    </sect1>
1050 1037

  
......
1213 1200
        Mitglied in dieser Gruppe. Damit wird das Verhalten von Lx-Office bis
1214 1201
        Version 2.4.3 inklusive wiederhergestellt, und die Benutzer können
1215 1202
        sich sofort wieder anmelden und mit dem System arbeiten.</para>
1216

  
1217
        <!--  -->
1218 1203
      </sect2>
1219 1204
    </sect1>
1220 1205

  
......
1264 1249
      <literal>pdflatex</literal>), und stellen Sie sicher, dass pdflatex
1265 1250
      (oder das von Ihnen verwendete System) vom Webserver ausgeführt werden
1266 1251
      darf.</para>
1267

  
1268
      <!--  -->
1269 1252
    </sect1>
1270 1253

  
1271 1254
    <sect1 id="OpenDocument-Vorlagen">
......
1340 1323
      sein. Dieses wurde bereits erledigt (siehe <xref
1341 1324
      linkend="Manuelle-Installation-des-Programmpaketes"/>), kann aber erneut
1342 1325
      überprüft werden, wenn die Konvertierung nach PDF fehlschlägt.</para>
1343

  
1344
      <!--  -->
1345 1326
    </sect1>
1346 1327

  
1347 1328
    <sect1 id="config.eur">
......
1456 1437
       <para>
1457 1438
        Bei bestimmten Berichten kann man derzeit noch inviduell einstellen, ob man nach Ist- oder Sollversteuerung auswertet, und es werden
1458 1439
        im Code Variablen wie $accrual oder $cash gesetzt. Diese Codestellen wurden noch nicht angepasst, sondern nur die, wo bisher
1459
        die Konfigurationsvariable <varname>$::lx_office_conf{system}->{eur}</varname> ausgewertet wurde.
1440
        die Konfigurationsvariable <varname>$::lx_office_conf{system}-&gt;{eur}</varname> ausgewertet wurde.
1460 1441
       </para>
1461 1442

  
1462 1443
       <para>
......
4317 4298
          gewachsen sind), sollte man vor einem Aufruf (!) von zum
4318 4299
          Beispiel <function>IS-&gt;retrieve_customer()</function> in
4319 4300
          Sicherheit bringen. </para>
4320
          Z.B. das vom Benutzer eingestellte Zahlenformat, bevor man Berechnung in einem
4321
          bestimmten Format durchführt (SL/Form.pm Zeile 3552, Stand version 2.7beta), um
4322
          dies hinterher wieder auf den richtigen Wert zu setzen:
4323
          <programlisting>
4324
            my $saved_numberformat    = $::myconfig{numberformat};
4325
            $::myconfig{numberformat} = $numberformat;
4326
            # (...) div Berechnungen
4327
            $::myconfig{numberformat} = $saved_numberformat;
4328
          </programlisting>
4329
          <para>Das Objekt der Klasse Form hat leider im Moment noch viele
4330
          zentrale Funktionen die vom internen Zustand abhängen, deshalb
4331
          bitte nie einfach zerstören oder überschreiben (zumindestens nicht kurz
4332
          vor einem Release oder in Absprache über bspw. die devel-Liste ;-).
4333
          Es geht ziemlich sicher etwas kaputt.</para>
4334

  
4335
          <para><varname>$::form</varname> ist gleichzeitig der Standard Scope
4336
          in den <productname>Template::Toolkit</productname> Templates
4337
          außerhalb der Controller: der Ausdruck <function>[% var
4338
          %]</function> greift auf <varname>$::form-&gt;{var}</varname> zu.
4339
          Unter Controllern ist der Standard Scope anders, da lautet der
4340
          Zugriff <function>[% FORM.var %]</function>. In Druckvorlagen sind
4341
          normale Variablen ebenfall im <varname>$::form</varname> Scope, d.h.
4342
          <function>&lt;%var%&gt;</function> zeigt auf
4343
          <varname>$::form-&gt;{var}</varname>.
4344
          Nochmal von der anderen Seite erläutert, innerhalb von (Web-)Templates sieht
4345
          man häufiger solche Konstrukte:
4346
          <programlisting>
4347
            [%- IF business %]
4348
            # (... Zeig die Auswahlliste Kunden-/Lieferantentyp an
4349
            [%- END %]
4350
         </programlisting>
4351
        Entweder wird hier dann $::form->{business} ausgewertet oder aber der Funktion
4352
        <function>$form->parse_html_template</function> wird explizit noch ein zusätzlicher Hash
4353
        übergeben, der dann auch in den (Web-)Templates zu Verfügung steht, bspw. so:
4354
          <function>$form->parse_html_template("is/form_header", \%TMPL_VAR);</function>
4355

  
4356
          Innerhalb von Schleifen wird
4357
          <varname>$::form-&gt;{TEMPLATE_ARRAYS}{var}[$index]</varname>
4358
          bevorzugt, wenn vorhanden.</para>
4359
          Zum Beispiel in SL/DO.pm welche über alle Positionen eines Lieferscheins
4360
          in Schleife läuft:
4361
          <programlisting>
4362
            for $i (1 .. $form->{rowcount}) {
4363
              (...)
4364
              push @{ $form->{TEMPLATE_ARRAYS}{runningnumber} },   $position;
4365
              push @{ $form->{TEMPLATE_ARRAYS}{number} },          $form->{"partnumber_$i"};
4366
              push @{ $form->{TEMPLATE_ARRAYS}{description} },     $form->{"description_$i"};
4367
         </programlisting>
4368
                 </sect3>
4301

  
4302
          <para>
4303
           Z.B. das vom Benutzer eingestellte Zahlenformat, bevor man Berechnung in einem
4304
           bestimmten Format durchführt (SL/Form.pm Zeile 3552, Stand version 2.7beta), um
4305
           dies hinterher wieder auf den richtigen Wert zu setzen:
4306
          </para>
4307

  
4308
          <programlisting>  my $saved_numberformat    = $::myconfig{numberformat};
4309
  $::myconfig{numberformat} = $numberformat;
4310
  # (...) div Berechnungen
4311
  $::myconfig{numberformat} = $saved_numberformat;</programlisting>
4312

  
4313
          <para>
4314
           Das Objekt der Klasse Form hat leider im Moment noch viele zentrale Funktionen die vom internen Zustand abhängen, deshalb bitte
4315
           nie einfach zerstören oder überschreiben (zumindestens nicht kurz vor einem Release oder in Absprache über bspw. die devel-Liste
4316
           ;-).  Es geht ziemlich sicher etwas kaputt.
4317
          </para>
4318

  
4319
          <para>
4320
           <varname>$::form</varname> ist gleichzeitig der Standard Scope in den <productname>Template::Toolkit</productname> Templates
4321
           außerhalb der Controller: der Ausdruck <function>[% var %]</function> greift auf <varname>$::form-&gt;{var}</varname> zu.  Unter
4322
           Controllern ist der Standard Scope anders, da lautet der Zugriff <function>[% FORM.var %]</function>. In Druckvorlagen sind
4323
           normale Variablen ebenfall im <varname>$::form</varname> Scope, d.h.  <function>&lt;%var%&gt;</function> zeigt auf
4324
           <varname>$::form-&gt;{var}</varname>.  Nochmal von der anderen Seite erläutert, innerhalb von (Web-)Templates sieht man häufiger
4325
           solche Konstrukte:
4326
          </para>
4327

  
4328
          <programlisting>[%- IF business %]
4329
# (... Zeig die Auswahlliste Kunden-/Lieferantentyp an)
4330
[%- END %]</programlisting>
4331

  
4332
          <para>
4333
           Entweder wird hier dann $::form-&gt;{business} ausgewertet oder aber der Funktion <function>$form-&gt;parse_html_template</function>
4334
           wird explizit noch ein zusätzlicher Hash übergeben, der dann auch in den (Web-)Templates zu Verfügung steht, bspw. so:
4335
          </para>
4336

  
4337
          <programlisting>$form-&gt;parse_html_template("is/form_header", \%TMPL_VAR);</programlisting>
4338

  
4339
          <para>
4340
           Innerhalb von Schleifen wird <varname>$::form-&gt;{TEMPLATE_ARRAYS}{var}[$index]</varname> bevorzugt, wenn vorhanden. Ein
4341
           Beispiel findet sich in SL/DO.pm, welches über alle Positionen eines Lieferscheins in Schleife läuft:
4342
          </para>
4343

  
4344
          <programlisting>for $i (1 .. $form-&gt;{rowcount}) {
4345
  # ...
4346
  push @{ $form-&gt;{TEMPLATE_ARRAYS}{runningnumber} },   $position;
4347
  push @{ $form-&gt;{TEMPLATE_ARRAYS}{number} },          $form-&gt;{"partnumber_$i"};
4348
  push @{ $form-&gt;{TEMPLATE_ARRAYS}{description} },     $form-&gt;{"description_$i"};
4349
  # ...
4350
}</programlisting>
4351
        </sect3>
4369 4352

  
4370 4353
        <sect3>
4371 4354
          <title>%::myconfig</title>
......
4404 4387
            </listitem>
4405 4388
          </itemizedlist>
4406 4389

  
4407
          <para><varname>%::myconfig</varname> ist im Moment der Ersatz für
4408
          ein Userobjekt. Die meisten Funktionen, die etwas anhand des
4409
          aktuellen Users entscheiden müssen, befragen
4410
          <varname>%::myconfig</varname>.
4411
          Innerhalb der Anwendungen sind dies überwiegend die Daten, die sich
4412
          unter Programm->Einstellungen befinden, bzw. die Informationen über den
4413
          Benutzer die über die Administrator-Schnittstelle (admin.pl) eingegeben wurden.
4414
        </para>
4390
          <para>
4391
           <varname>%::myconfig</varname> ist im Moment der Ersatz für ein Userobjekt. Die meisten Funktionen, die etwas anhand des
4392
           aktuellen Users entscheiden müssen, befragen <varname>%::myconfig</varname>.  Innerhalb der Anwendungen sind dies überwiegend die
4393
           Daten, die sich unter <guimenu>Programm</guimenu> -&gt; <guimenuitem>Einstellungen</guimenuitem> befinden, bzw. die Informationen
4394
           über den Benutzer die über die Administrator-Schnittstelle (admin.pl) eingegeben wurden.
4395
          </para>
4415 4396
        </sect3>
4416 4397

  
4417 4398
        <sect3>
......
4459 4440
            </listitem>
4460 4441
          </itemizedlist>
4461 4442

  
4462
          <para><varname>$::lxdebug</varname> stellt Debuggingfunktionen
4463
          bereit, wie "<function>enter_sub</function>" und
4464
          "<function>leave_sub</function>", mit denen in den alten Modulen ein
4465
          brauchbares Tracing gebaut ist, "<function>log_time</function>", mit
4466
          der man die Wallclockzeit seit Requeststart loggen kann, sowie
4467
          "<function>message</function>" und "<function>dump</function>" mit
4468
          denen man flott Informationen ins Log (tmp/lx-office-debug.log) packen kann.</para>
4469
          Beispielsweise so:
4470
          <programlisting>
4471
            $main::lxdebug->message(0, 'Meine Konfig:' . Dumper (%::myconfig));
4472
            $main::lxdebug->message(0, 'Wer bin ich? Kunde oder Lieferant:' . $form->{vc});
4473

  
4474
          </programlisting>
4443
          <para>
4444
           <varname>$::lxdebug</varname> stellt Debuggingfunktionen bereit, wie "<function>enter_sub</function>" und
4445
           "<function>leave_sub</function>", mit denen in den alten Modulen ein brauchbares Tracing gebaut ist,
4446
           "<function>log_time</function>", mit der man die Wallclockzeit seit Requeststart loggen kann, sowie
4447
           "<function>message</function>" und "<function>dump</function>" mit denen man flott Informationen ins Log
4448
           (tmp/lx-office-debug.log) packen kann.
4449
          </para>
4450

  
4451
          <para>
4452
           Beispielsweise so:
4453
          </para>
4454

  
4455
          <programlisting>$main::lxdebug-&gt;message(0, 'Meine Konfig:' . Dumper (%::myconfig));
4456
$main::lxdebug-&gt;message(0, 'Wer bin ich? Kunde oder Lieferant:' . $form-&gt;{vc});</programlisting>
4475 4457
        </sect3>
4476 4458

  
4477 4459
        <sect3>
......
4559 4541
          speichert aber Daten die von der Instanz abhängig sind. Eine Instanz
4560 4542
          ist hier eine Mandantendatenbank.
4561 4543
          Beispielsweise überprüft
4562
          <programlisting>$::instance_conf->get_inventory_system eq 'perpetual'</programlisting>
4544
          <programlisting>$::instance_conf-&gt;get_inventory_system eq 'perpetual'</programlisting>
4563 4545
          ob die berüchtigte Bestandsmethode zur Anwendung kommt.</para>
4564 4546
        </sect3>
4565 4547

  

Auch abrufbar als: Unified diff