Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » UltraLite - M-Business Anywhere-Programmierung » Praktische Einführung: Eine Beispielanwendung für M-Business Anywhere

 

Lektion 5: Datenmanipulation und Navigation hinzufügen

Diese Lektion beschreibt, wie Sie Ihrer Anwendung Datenmanipulations- und Navigationslogik hinzufügen.

♦  Die Tabelle initialisieren
  1. Initialisieren Sie CustomerTable, die die Customer-Tabelle in Ihrer Datenbank darstellt, indem Sie den folgenden Code am Ende der Connect-Funktion in tutorial.js hinzufügen:

    try {
      CustomerTable = Connection.getTable( "customer", null );
      CustomerTable.open();
    } catch( ex3 ) {
      alert("Error: " + ex3.getMessage() );
    }
  2. Fügen Sie Variable hinzu, um Daten zwischen der Datenbank und dem Webformular auszutauschen.

    Fügen Sie die folgenden Variablendeklarationen am Anfang von tutorial.js für die customer-Daten hinzu:

    var GivenName = "";
    var Surname = "";
    var Street = "";
    var City = "";
    var Phone = "";
    var ID = "";
    
  3. Erstellen Sie Funktionen, um customer-Daten abzurufen und anzuzeigen.

    Fügen Sie tutorial.js die folgende Funktion hinzu: Diese Funktion ruft die aktuelle Zeile der customer-Daten ab und gewährleistet, dass NULL-Spalten als leere Zeichenfolgen dargestellt werden:

    function Fetch() 
    {
        if( Table.getRowCount() == 0 ) {
     GivenName = "";
     Surname = "";
     Street = "";
     City = "";
     Phone = "";
     ID = "";
     return;
        } 
        ID = Table.getString( Table.schema.getColumnID( "ID" ) );
        GivenName = Table.getString( Table.schema.getColumnID( "GivenName" ) );
        Surname = Table.getString( Table.schema.getColumnID( "Surname" ) );
        Street = Table.getString( Table.schema.getColumnID( "Street" ) );
        if( Table.isNull( Table.schema.getColumnID( "City" ) ) ) {
     City = "";
        } else {
     City = Table.getString( Table.schema.getColumnID( "City" ) );
        }
        if( Table.isNull( Table.schema.getColumnID( "Phone" ) ) ) {
     Phone = "";
        } else {
     Phone = Table.getString( Table.schema.getColumnID( "Phone" ) );
        }
    }
    

    Fügen Sie main.htm den folgenden Inhalt unmittelbar nach dem <script>-Tag hinzu: DisplayRow nimmt die Werte aus der Datenbank und zeigt sie im Webformular an. FetchForm nimmt die aktuellen Werte im Webformular und stellt sie dem Datenbankcode zur Verfügung.

    <script>
    function DisplayRow() {
        Fetch();
        document.form.ID.value = ID;
        document.form.GivenName.value = GivenName;
        document.form.Surname.value = Surname;
        document.form.Street.value = Street;
        document.form.City.value = City;
        document.form.Phone.value = Phone;
    }
    
    function FetchForm() {
        GivenName = document.form.GivenName.value;
        Surname = document.form.Surname.value;
        Street = document.form.Street.value;
        City = document.form.City.value;
        Phone = document.form.Phone.value;
    }
    </script>
  4. Rufen Sie DisplayCurrentRow auf, um die aktuelle Zeile anzuzeigen, wenn die Anwendung geladen wird. Ändern Sie das <body>-Tag am Anfang von main.htm folgendermaßen:

    <body onload="Connect(); DisplayCurrentRow();">

Auch wenn es noch keine Daten in der tutorial-Datenbank gibt, ist es ein guter Zeitpunkt, um den Kanal zu synchronisieren, damit sichergestellt wird, dass die Anwendung korrekt läuft.

♦  So fügen Sie Code zum Einfügen von Zeilen hinzu