Anzahl Datensätze ermitteln aus SQL Abfrage

Alles was sich mit dem Thema dynamische XML Formulare auf Basis des LiveCycleDesigners beschäftigt
Benutzeravatar
FileAffairs
Beiträge: 372
Registriert: 15.09.2008, 20:14

Anzahl Datensätze ermitteln aus SQL Abfrage

Beitrag von FileAffairs » 30.07.2013, 12:26

Hallo

Code: Alles auswählen

var connectionName = ...; // <- Hier muss der Name rein den die Datenverbindung hat

// das SQL Statement - muss entsprechend angepasst/dynamisiert werden
var sqlStatement = "SELECT * FROM tablexxx WHERE AuNummer = 12345 ORDER BY AuNummer;";


// Datenbankverbindung clonen
oDB = xfa.sourceSet.resolveNode(connectioName).clone(1);

// Abfrage erfolgt per SQL
oDb.#command.query.commandType = "text";

// Query absetzen
oDB.resolveNode("#command").query.select.value = sqlStatement;

// Datenbank öffnen
oDB.open()

// Über die Datensätze iterieren
while (!oDB.isEOF()) {
   // ...... do something here

   oDB.next()
}

// Verbindung schliessen
oDB.close();

Lieben Gruß


Maruan Sahyoun | fileaffairs.de

Benutzeravatar
DanielDD92
Beiträge: 47
Registriert: 07.03.2012, 08:15

Anzahl Datensätze ermitteln aus SQL Abfrage

Beitrag von DanielDD92 » 30.07.2013, 13:08

Danke, ich versuch es mal umzuschreiben.

Wie bekomme ich den Code so wie Sie in das Kästchen? :P


Benutzeravatar
DanielDD92
Beiträge: 47
Registriert: 07.03.2012, 08:15

Anzahl Datensätze ermitteln aus SQL Abfrage

Beitrag von DanielDD92 » 30.07.2013, 13:15

Code: Alles auswählen

Formular1.#variables[0].Scripte - (JavaScript, client)
var connectionName = Datenverbindung; // <- Hier muss der Name rein den die Datenverbindung hat

// das SQL Statement - muss entsprechend angepasst/dynamisiert werden
var sqlStatement = "SELECT A_Kopf.ID, A_Kopf.AuNummer, A_Kopf.AuAlpha, A_Kopf.Sachbearb1 AS Kfm_Sachb, 
                 A_Kopf.Sachbearb2 AS Tec_Sachb, A_Kopf.Vertreter, A_Kopf.Kommission AS Kom, A_Kopf.Bauvorhaben AS BV, A_Kopf.KundenNr, 
                 A_Adresse.Firma, A_Adresse.Name + ' ' + A_Adresse.Vorname AS KName, A_Adresse.Strasse, A_Adresse.PLZ, 
                 A_Adresse.Ort, A_Adresse.Telefon, A_Adresse.Mobil, A_Adresse.Email
FROM        A_Kopf INNER JOIN A_Adresse ON A_Kopf.ID = A_Adresse.ID_A_Kopf
WHERE     (A_Kopf.AuNummer = 522022) AND (A_Adresse.Nummer = 0) // HIER WILL ICH DIE AuNummer, DIE IM TEXTFELD AuNummer EINGEGEBEN WURDE.
ORDER BY A_Kopf.AuNummer;";

// Datenbankverbindung clonen
oDB = xfa.sourceSet.resolveNode(Datenverbindung).clone(1);

// Abfrage erfolgt per SQL
oDb.#command.query.commandType = "text";

// Query absetzen
oDB.resolveNode("#command").query.select.value = sqlStatement;

// Datenbank öffnen
oDB.open()

// Über die Datensätze iterieren
while (!oDB.isEOF()) {
// ...... do something here (WAS SOLL ICH HIER MACHEN? Sorry blicke es grad gar nicht.. :/)

oDB.next()
}

// Verbindung schliessen
oDB.close();
so funktioniert z.b. gar nichts wenn ich öffne :(
Mein Problem ist einfach, dass ich nicht weiß, was ich von meinem Code behalten kann, und was ich rauswerfen soll, damit es funktioniert..

Zudem, was kommt bei #command rein und bei isEOF? Auch will ich die DB filtern über das Textfeld AuNummer, ich hänge die PDF mal ohne DB-Verbindung (Datenverbindung) an.

So funktionierts momentan.

MfG

Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Antworten