TBeasCbDataSetConverter
Die Klasse TBeasCbDataSetConverter ermöglicht das Konvertieren eines be-DataSet in einen DataSet zur Übertragung an einen beMobile-Client.
Eigenschaften
|
Eigenschaft |
Beschreibung |
|---|---|
|
CbBeDataSet:O |
be-DataSet dessen Inhalt in das DataSets-Array eingefügt werden soll. Muss nur gesetzt sein, wenn kein SQL-Statement verwendet wird. |
|
CbDataRecordSaveToDatabase:L |
Legt fest, ob der Datensatz auf dem beMobile-Client gespeichert wird. Optional, Default ist True. |
|
CbDataSetDataMode:N |
Modus für die Behandlung der Daten auf dem beMobile-Client. Erlaubte Werte: eine der CB-Konstanten beasDataSetDataModeAppend, beasDataSetDataModeReplace Optional, Default ist beasDataSetDataModeAppend. |
|
CbDataSetDataSource:C |
Name der DataSource auf dem beMobile-Client. Muss immer angegeben werden und darf nicht leer sein. |
|
CbDataSetHasMore:L |
|
|
CbDataSetName:C |
Falls in einem DataSet-Array eine DataSource mehrfach verwendet wird, können diese durch einen Namen unterschieden werden. Die Kombination DataSource/Name darf im DataSet-Array nur einmal vorkommen. Optional, Default ist '' (leer). |
|
CbDataSetOffset:N |
Ist im Falle von aufgeteilten Übertragungen eines großen Containers relevant. Optional, Default ist 0. |
|
CbDataSets:O |
Array von DataSets in das der be-DataSet eingefügt werden soll. Muss immer gesetzt sein. |
|
CbDataSetSelectedIndex:N |
Auf dem beMobile-Client selektierter Datensatz im DataSet. Optional, Default ist -1 (kein Datensatz ausgewählt) |
|
CbDataSetsName:C |
Liefert den Namen des DataSet-Array, der vom beMobile-Client erwartet wird. Diese Eigenschaft hat den Charakter einer Konstanten. |
|
CbDataSetVariables:O |
Zusätzlich zu den Daten an den beMobile-Client zu übertragende Daten. Optional, Default ist nil (keine zusätzlichen Daten). |
|
CbFieldMapping:U |
Assoziative Liste zur Abbildung von Feldnamen aus dem be-DataSet in das Datenmodell des beMobile-Client. Feldnamen, die nicht in der Liste enthalten sind, werden unverändert übernommen. |
|
CbFields:U |
Liste der Felder, die in die Ergebnismenge aufgenommen werden. Ist die Liste leer, werden alle Felder in die Ergebnismenge aufgenommen. |
|
CbKeyFields:U |
Liste der Schlüsselfelder im Datenmodell des beMobile-Client. |
|
Name:C |
|
|
Tag:N |
|
Methoden
|
Methode |
Beschreibung |
|---|---|
|
CbConvert() |
Konvertiert das durch die Eigenschaft 'CbBeDataSet' definierte be-DataSet in ein DataSet des Datenmodells des beMobile-Clients und fügt es dem durch die Eigenschaft 'CbDataSets' definierten Array hinzu. |
|
CbConvertSQL(aSQL:C) |
Konvertiert das durch die das SQL-Statement definierte be-DataSet in ein DataSet des Datenmodells des beMobile-Clients und fügt es dem durch die Eigenschaft 'CbDataSets' definierten Array hinzu. aSQL:C - SQL-Statement zur Erzeugung des zu konvertierenden DataSets |
Beispiel
/******************************************************************************
// Konveriert den Inhalt eine TMemCalcTable
//******************************************************************************
| oUserSession:P1, oContext:P2, oInputParam:P3, oOutputParam:P4, , m_oDatasets,
m_oMemTable, m_oDataSetConverter |
function AddModule(m_oMem, nID, cBez, cBildName)
DbAppend(m_oMem),
m_oMem:id := nID,
m_oMem:bezeichnung := cBez,
m_oMem:bild_name := cBildName,
DbPost(m_oMem),
end,
m_oResult := oOutputParam.CbParams.AddArrayParam('datasets'),
m_oDatasets := m_oResult,
m_oMemTable := CreateObject('TMemCalcTable'),
startseq
beas_AddMemField(m_oMemTable, 'id', 'FTINTEGER', 0, 0),
beas_AddMemField(m_oMemTable, 'bezeichnung', 'FTString', 50, 0),
beas_AddMemField(m_oMemTable, 'bild_name', 'FTString', 50, 0),
m_oMemTable.Active := true,
AddModule(m_oMemTable, waDab000, 'Kunden', 'kunde.png'),
AddModule(m_oMemTable, waDab100, 'Lieferanten', 'lieferant.png'),
AddModule(m_oMemTable, waDab005, 'Kontakte', 'kontakt.png'),
m_oDataSetConverter := oOutputParam.CbCreateDataSetConverter(),
m_oDataSetConverter.CbDataSetDataSource := 'db:/bemobiledb/modul_liste',
m_oDataSetConverter.CbDataSets := m_oDatasets,
m_oDataSetConverter.CbKeyFields := {'id'},
m_oDataSetConverter.CbFields := {'id', 'bezeichnung', 'bild_name'},
m_oDataSetConverter.CbBeDataSet := m_oMemTable,
m_oDataSetConverter.CbConvert(),
always
DestroyObject(m_oMemTable),
stopseq,