NestedDataSets, Layouts & Protokoll
3.1.52 IAutoNestedDataSetInfos Interface
Enumerations Objekt für AutoNestedDataSetInfo.
IDL
[ uuid(DEED36D4-2EB5-11D3-BA03-004005232B30), version(1.0),
helpstring("Dispatch-Schnittstelle für AutoNestedDataSetInfos-Objekt"), dual,
oleautomation ]
interface IAutoNestedDataSetInfos : IAutoBase;
Beschreibung
3.1.52.1 IAutoNestedDataSetInfos Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoNestedDataSetInfos.
Methoden
| Name | Beschreibung |
|---|---|
| Item | Zugriff auf AutoNestedDataSetInfo. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| _NewEnum | Enumerator Kompatibilität. |
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| Count | Anzahl der AutoNestedDataSetInfo. |
| Parent | Gibt das Parent Interface zurück. |
3.1.52.2 IAutoNestedDataSetInfos::Count Eigenschaft
Anzahl der AutoNestedDataSetInfo.
IDL
__property long* Count;
Beschreibung
Gibt die Anzahl der Einträge an.
Parameter
| Parameter | Beschreibung |
|---|---|
| Value | Rückgabewert: Anzahl der Elemente |
3.1.52.3 IAutoNestedDataSetInfos::Item Methode
Zugriff auf AutoNestedDataSetInfo.
IDL
[propget, id(0x00000000), defaultcollelem]
HRESULT _stdcall Item([in] VARIANT Index, [out, retval] IAutoDataSetInfo** Value);
Beschreibung
Diese Funktion ermöglicht den Zugriff auf die einzelnen AutoNestedDataSetInfo Elemente.
Der Eingabeparameter Index kann einen Integer oder einen String beinhalten. Der Integer muss dem Index des Elementes in der Liste entsprechen. Der String muss dem Namen des Elements entsprechen.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] VARIANT Index | Variant der String oder Integer Index des gewünschten Interfaces enthalten kann |
| [out, retval] IAutoDataSetInfo** Value | Rückgabewert: Interface vom Type AutoNestedDataSetInfo |
3.1.52.4 IAutoNestedDataSetInfos::_NewEnum Eigenschaft
Enumerator Kompatibilität.
IDL
__property IEnumVARIANT** _NewEnum;
Beschreibung
3.1.53 IAutoNestedDataSets Interface
Enumerations Objekt für AutoNestedDataSet.
IDL
[ uuid(067E3101-AF91-11D2-B966-004005232B30), version(1.0),
helpstring("Dispatch-Schnittstelle für AutoNestedDataSets-Objekt"), dual,
oleautomation ]
interface IAutoNestedDataSets : IAutoBase;
Beschreibung
3.1.53.1 IAutoNestedDataSets Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoNestedDataSets.
Methoden
| Name | Beschreibung |
|---|---|
| Item | Erstellt ein NestedDataSet. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| _NewEnum | Enumerator Kompatibilität. |
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| Count | Anzahl der AutoNestedDataSets. |
| Parent | Gibt das Parent Interface zurück. |
3.1.53.2 IAutoNestedDataSets::Count Eigenschaft
Anzahl der AutoNestedDataSets.
IDL
__property long* Count;
Beschreibung
Gibt die Anzahl der Einträge an.
Parameter
| Parameter | Beschreibung |
|---|---|
| Value | Rückgabewert: Anzahl der Elemente |
3.1.53.3 IAutoNestedDataSets::Item Methode
Erstellt ein NestedDataSet.
IDL
[propget, id(0x00000000), defaultcollelem]
HRESULT _stdcall Item([in] VARIANT Index, [out, retval] AutoDataSet** Value);
Beschreibung
Diese Funktion ermöglicht den Zugriff auf die einzelnen AutoNestedDataSetInfo Elemente.
Der Eingabeparameter "Index" kann einen Integer oder einen String beinhalten. Der Integer muss dem Index des Elementes in der Liste entsprechen. Der String muss dem Namen des Elements entsprechen.
Ein NestedDataSet ist als Teil einer Tabelle zu verstehen. Daher kann ein NestedDataSet nur von der zugehörigen Tabelle aus geöffnet werden. Ist es einmal geöffnet, verhält es sich wie eine Tabelle.
Tip
Ist im NestedDataSet ein Range aktiv und wird das NestedDataSet während dieser Zeit geschrieben, werden nur die Einträge innerhalb des Ranges zurück geschrieben.
Positionierung im NestedDataSet (Delphi)
// Erste Methode zur Positionierung
Nested.Indices['Nr'].Select;
Nested.SetRangeStart;
Nested.Fields['Nr'].AsInteger := 2;
Nested.SetRangeEnd;
Nested.Fields['Nr'].AsInteger := 4;
Nested.ApplyRange;
Nested.First; // Oder andere gewünschte Position
Nested.CancelRange; // Range aufheben bevor Editiert wird
// Zweite Methode zur Positionierung
Nested.Indices['Nr'].Select;
Nested.SetKey;
Nested.Fields['Nr'].AsInteger := 2;
if not Nested.GotoKey then
showmessage('GOTOKEY fehlgeschlagen');
NestedDataSet öffnen (VBScript)
...
Dim Brtln
Set Brtln = BpNT.DataSetInfos("Bruttolohn").CreateDataSet
Dim Bls
Set Bls = Brtln.NestedDataSets("Bls")
...
Ein NestedDataSet kann wie eine normale Tabelle bearbeitetet werden. Einzige Bedingung ist, dass alle darunter liegenden Tabellen ebenfalls im "Edit"-Modus stehen.
NestedDataSet ändern (VBA)
Dim DataSetArtikel As BpNT.IAutoDataSet
Dim NestedUmsatz As BpNT.IAutoDataSet
Set DataSetArtikel = BpApp.DataSetInfos.Item("Artikel").CreateDataSet
Set NestedUmsatz = DataSetArtikel.NestedDataSets("Ums")
Debug.Print NestedUmsatz.Fields("UmsMrz").AsFloat
Debug.Print NestedUmsatz.Fields("UmsFeb").AsFloat
DataSetArtikel.Edit
NestedUmsatz.Edit
NestedUmsatz.Fields("UmsMrz").AsFloat = 100
NestedUmsatz.Post
NestedUmsatz.Edit
NestedUmsatz.Fields("UmsFeb").AsFloat = 99
NestedUmsatz.Post
NestedUmsatz.PostNestedDataSet
DataSetArtikel.Post
Debug.Print NestedUmsatz.Fields("UmsMrz").AsFloat
Debug.Print NestedUmsatz.Fields("UmsFeb").AsFloat
NestedDataSet Append und Delete (Delphi)
// Append:
var
DataSetArtikel: IAutoDataSet;
NestedUmsatz: IAutoDataSet;
begin
DataSetArtikel := BpApp.DataSetInfos['Artikel'].CreateDataSet;
NestedUmsatz := DataSetArtikel.NestedDataSets['Ums'];
DataSetArtikel.Edit;
NestedUmsatz.Append;
NestedUmsatz.Fields['UmsMrz'].AsFloat := 100;
NestedUmsatz.Fields['UmsFeb'].AsFloat := 99;
NestedUmsatz.Post;
NestedUmsatz.PostNestedDataSet;
DataSetArtikel.Post;
...
// Delete:
...
DataSetArtikel.Edit;
NestedUmsatz.Delete;
NestedUmsatz.PostNestedDataSet;
DataSetArtikel.Post;
...
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] VARIANT Index | Variant, der String oder Integer Index des gewünschten Interfaces enthalten kann |
| [out, retval] AutoDataSet** Value | Rückgabewert: Interface vom Type AutoNestedDataSetInfo |
3.1.53.4 IAutoNestedDataSets::_NewEnum Eigenschaft
Enumerator Kompatibilität.
IDL
__property IEnumVARIANT** _NewEnum;
Beschreibung
3.1.54 IAutoLayoutGroup Interface
Enumerations Objekt für AutoLayout.
IDL
[ uuid(F5947021-E692-47BA-8676-CF86CEA8E0AB), version(1.0),
helpstring("Dispatch-Schnittstelle für LayoutMgr-Objekt"), dual, oleautomation ]
interface IAutoLayoutGroup : IAutoBase;
Beschreibung
Eine Layout Datei kann wie folgt erstellt werden:
DATEI - SCHNITTSTELLEN - EXPORT oder IMPORT - dann z.B.: BUCHHALTUNG - STAMMDATEN - KONTENPLAN. Hier können Sie dann das gewünschte Layout per Drag und Drop auf den Desktop ablegen. Die so entstandene *.Bpl Datei ist Ihre Layout Datei.
Eine solche Datei ist für jeden Export oder Import per COM notwendig.
3.1.54.1 IAutoLayoutGroup Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoLayoutGroup.
Methoden
| Name | Beschreibung |
|---|---|
| ImportLayoutFromFile | Importiert Layouts aus Dateien. |
| ImportLayoutFromStream | Importiert Layouts aus Streams. |
| Item | Zugriff auf AutoLayout. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| _NewEnum | Enumerator Kompatibilität. |
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| Count | Anzahl der AutoLayout Elemente. |
| Parent | Gibt das Parent Interface zurück. |
3.1.54.2 IAutoLayoutGroup::ImportLayoutFromFile Methode
Importiert Layouts aus Dateien.
IDL
[id(0x00000001)]
HRESULT _stdcall ImportLayoutFromFile([in] BSTR aFileName, [in, out] BSTR* aLayoutName,
[in] VARIANT_BOOL aOverwrite, [out, retval] AutoLayout** aResult);
Beschreibung
Lädt eine Im/Export Datei in den Namensraum der aktuellen COM Anbindung. Dadurch können unterschiedliche Solution Partner Layouts keine Namenskollision haben. Bei einer normalen Anbindung kann dies jedoch passieren.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] BSTR aFileName | Kompletter Dateiname zum Layout |
| [in, out] BSTR* aLayoutName | (in/out) Name der innerhalb der Software für dieses Layout verwendet werden soll. (Out wird verwendet wenn aOverwrite "False" ist und das Layout schon namentlich vorhanden ist, um den neu vergebenen Namen zurückzugeben) |
| [in] VARIANT_BOOL aOverwrite | Wenn "True" und dieses Layout (aLayoutName) schon vorhanden ist, wird es überschrieben |
| [out, retval] AutoLayout** aResult | Ein Interface auf ein AutoLayout. Hiermit kann weiter gearbeitet werden |
3.1.54.3 IAutoLayoutGroup::ImportLayoutFromStream Methode
Importiert Layouts aus Streams.
IDL
[id(0x00000002)]
HRESULT _stdcall ImportLayoutFromStream([in] IUnknown* aStream, [in, out] BSTR* aLayoutName,
[in] VARIANT_BOOL aOverwrite, [out, retval] AutoLayout** aResult);
Beschreibung
Lädt eine Im/Export Datei in den Namensraum der aktuellen COM Anbindung. Dadurch können unterschiedliche Solution Partner Layouts keine Namenskollision haben. Bei einer normalen Anbindung kann dies jedoch passieren.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] IUnknown* aStream | Stream, aus dem das Layout ausgelesen wird. Die Leseoperation startet am aktuellen Punkt des Streams |
| [in, out] BSTR* aLayoutName | (in/out) Name der innerhalb der Software für dieses Layout verwendet werden soll. (Out wird verwendet wenn aOverwrite "False" ist und das Layout schon namentlich vorhanden ist, um den neu vergebenen Namen zurückzugeben) |
| [in] VARIANT_BOOL aOverwrite | Wenn "True" und dieses Layout (aLayoutName) schon vorhanden ist, wird es überschrieben |
| [out, retval] AutoLayout** aResult | Ein Interface auf ein AutoLayout. Hiermit kann weiter gearbeitet werden |
3.1.54.4 IAutoLayoutGroup::Count Eigenschaft
Anzahl der AutoLayout Elemente.
IDL
__property long* Count;
Beschreibung
Gibt die Anzahl der Einträge an.
Parameter
| Parameter | Beschreibung |
|---|---|
| Value | Rückgabewert: Anzahl der Elemente |
3.1.54.5 IAutoLayoutGroup::Item Methode
Zugriff auf AutoLayout.
IDL
[propget, id(0x00000004), defaultcollelem]
HRESULT _stdcall Item([in] VARIANT Index, [out, retval] AutoLayout** Value);
Beschreibung
Diese Funktion ermöglicht den Zugriff auf die einzelnen AutoLayout Elemente.
Der Eingabeparameter Index kann einen Integer oder einen String beinhalten. Der Integer muss dem Index des Elementes in der Liste entsprechen. Der String muss dem Namen des Elements entsprechen.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] VARIANT Index | Variant, der String oder Integer Index des gewünschten Interfaces enthalten kann |
| [out, retval] AutoLayout** Value | Rückgabewert: Interface vom Type AutoLayout |
3.1.54.6 IAutoLayoutGroup::_NewEnum Eigenschaft
Enumerator Kompatibilität.
IDL
__property IEnumVARIANT** _NewEnum;
Beschreibung
3.1.55 IAutoLayout Interface
Layout Objekt.
IDL
[ uuid(ECBDCFB8-88B7-4C41-B7D8-4B4094D21B23), version(1.0),
helpstring("Dispatch-Schnittstelle für AutoLayout-Objekt"), dual, oleautomation ]
interface IAutoLayout : IAutoBase;
Beschreibung
Layout Objekt, bei dem der Import oder Export veranlasst wird.
3.1.55.1 IAutoLayout Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoLayout.
Methoden
| Name | Beschreibung |
|---|---|
| Delete | Löscht das aktuelle Layout. |
| doExport | Export Vorbereitung. |
| doImport | Import Vorbereitung. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| Name | Layout-Name ausgeben. |
| Parent | Gibt das Parent Interface zurück. |
3.1.55.2 IAutoLayout::Name Eigenschaft
Layout-Name ausgeben.
IDL
__property BSTR* Name;
Beschreibung
Gibt den Namen des Layouts aus.
3.1.55.3 IAutoLayout::Delete Methode
Löscht das aktuelle Layout.
IDL
[id(0x00000002)]
HRESULT _stdcall Delete();
Beschreibung
Löscht dieses Objekt aus der Liste der verfügbaren Layouts.
3.1.55.4 IAutoLayout::doImport Methode
Import Vorbereitung.
IDL
[id(0x00000003)]
HRESULT _stdcall doImport([out, retval] AutoPreparedLayout** PreparedLayout);
Beschreibung
Bereitet ein AutoPreparedLayout für den Import vor.
Parameter
| Parameter | Beschreibung |
|---|---|
| [out, retval] AutoPreparedLayout** PreparedLayout | Rückgabewert: ein Interface vom Type AutoPreparedLayout für den Import |
3.1.55.5 IAutoLayout::doExport Methode
Export Vorbereitung.
IDL
[id(0x00000005)]
HRESULT _stdcall doExport([out, retval] AutoPreparedLayout** PreparedLayout);
Beschreibung
Bereitet ein AutoPreparedLayout für den Export vor.
Parameter
| Parameter | Beschreibung |
|---|---|
| [out, retval] AutoPreparedLayout** PreparedLayout | Rückgabewert: ein Interface vom Type AutoPreparedLayout für den Export |
3.1.56 IAutoPreparedLayout Interface
Objekt für Im/Exporte.
IDL
[ uuid(6508B890-00BB-42A6-9367-DFB19975CBB0), version(1.0),
helpstring("Dispatch-Schnittstelle für AutoPreparedLayout-Objekt"), dual,
oleautomation ]
interface IAutoPreparedLayout : IAutoBase;
Beschreibung
Layout-Pfad setzen und Export ausführen (VBA)
Public Sub LayoutPfad()
Dim BpNT As BpNT.Application
Dim LayoutGroup As AutoLayoutGroup
Dim Layout As AutoLayout
Dim ExecLayout As AutoPreparedLayout
Dim ReturnName As String
Set BpNT = CreateObject("BpNT.Application")
Call BpNT.Init("Firmenname", "", "Anmeldename", "Password") ' Anmeldeinformationen Eintragen
Call BpNT.SelectMand("1")
Set LayoutGroup = BpNT.OpenLayoutGroup("Au", "ArtExpListe") ' Beziffert den Einsatzort der Layout
' Gruppe hier: Au = Modul Auftrag ArtExpListe = ein Layout vom Typus Liste eines Artikel Exports
ReturnName = "Test eines Exports" ' dieser Wert wird auf den neuen Namen abgeändert falls ein
' vorhandenes Layout nicht überschrieben wird und der Name geändert wird z.B. Import zu Import (1)
Set Layout = LayoutGroup.ImportLayoutFromStream(z.B.: IStream aus Ressourcen, ReturnName, False)
Set ExecLayout = Layout.doExport ' veranlasst einen Export
Call ExecLayout.StartModify ' bereitet die Exportmodifikation vor
Debug.Print ExecLayout.GetLayoutFileExt ' Holt nur die Dateiextension. Ist leer falls im Layout nicht vorhanden.
Debug.Print ExecLayout.LayoutFile ' Gibt den kompletten Dateipfad + Dateinamen + Extension zurück.
ExecLayout.LayoutFile = "C:\ExportDatei" & ExecLayout.GetLayoutFileExt ' Setzt den kompletten Dateipfad + Dateinamen + Extension.
Call ExecLayout.EndModify ' Ende des Modifizierens
Call ExecLayout.Execute ' Exportieren des Layouts mit der geänderten Pfadangabe
Set LayoutGroup = Nothing
Set ExecLayout = Nothing
Set Layout = Nothing
Set BpNT = Nothing
End Sub
Sollten Sie StartModify aufgerufen haben und Änderungen nicht übernehmen wollen, müssen Sie das AutoPreparedLayout nochmals erstellen.
Anmerkung
Bei einem ADO Export enthält die Eigenschaft "LayoutFile" den ADO Connection String.
3.1.56.1 IAutoPreparedLayout Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoPreparedLayout.
Methoden
| Name | Beschreibung |
|---|---|
| EndModify | Die Layout Informationen wurden geändert. |
| Execute | Im/Export ausführen. |
| StartModify | Layout Informationen können hiernach geändert werden. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| DataTable | Dataset, das modifiziert werden kann. |
| Parent | Gibt das Parent Interface zurück. |
3.1.56.2 IAutoPreparedLayout::Execute Methode
Im/Export ausführen.
IDL
[id(0x00000001)]
HRESULT _stdcall Execute();
Beschreibung
Führt den Im/Export mit den aktuellen Einstellungen aus.
3.1.56.3 IAutoPreparedLayout::StartModify Methode
Layout Informationen können hiernach geändert werden.
IDL
[id(0x00000002)]
HRESULT _stdcall StartModify();
Beschreibung
Möchte man bei einem automatisierten Export die Ergebnismenge beeinflussen, kann man folgende Befehle verwenden.
Warning
Alle Änderungen an den Datensätzen wie "Löschen", "Anhängen", "Ändern" ("Delete", "Append", "Edit") wirken sich direkt aus (auch wenn EndModify nicht aufgerufen wird).
Um Ihre Ergebnismenge einzuschränken, benutzen Sie einen Range. Wählen Sie den passenden Index aus und setzten Sie einen Range mit den gewünschten Werten, um die Ergebnismenge einzugrenzen. Diese Funktionalität besteht nur bei Exporten. Bei einem Import bleibt sie ohne Wirkung.
Export mit Range-Einschränkung (VBA)
Public Sub Layout()
Dim BpNT As BpNT.Application
Dim LayoutGroup As AutoLayoutGroup
Dim Layout As AutoLayout
Dim ExecLayout As AutoPreparedLayout
Dim ReturnName As String
Dim Index As Integer
Dim Table As AutoDataSet
Set BpNT = CreateObject("BpNT.Application")
Call BpNT.Init("Firmenname", "", "Anmeldename", "Password") ' Anmeldeinformationen Eintragen
Call BpNT.SelectMand("1")
Set LayoutGroup = BpNT.OpenLayoutGroup("Au", "ArtExpListe") ' Beziffert den Einsatzort der Layout
' Gruppe hier: Au = Modul Auftrag ArtExpListe = ein Layout vom Typus Liste eines Artikel Exports
ReturnName = "Test eines Exports" ' dieser Wert wird auf den neuen Namen abgeändert falls ein
' vorhandenes Layout nicht überschrieben wird und der Name geändert wird z.B. Import zu Import (1)
Set Layout = LayoutGroup.ImportLayoutFromFile("C:\Artikel Export.BPL", ReturnName, True)
' Geben Sie hier den Pfad zu ihrem erstellten Layout an
Set ExecLayout = Layout.doExport ' veranlasst einen Export
Call ExecLayout.StartModify ' bereitet die Export Tabelle vor
Set Table = ExecLayout.DataTable ' Abholen der eigentlichen Tabelle
Table.Indices("WgrNr").Select ' setzen eines Indices
' Eingrenzen der Ergebnismenge
Table.SetRangeStart
Table.Fields("WgrNr").AsString = "4"
Table.Fields("ArtNr").AsString = "1"
Table.SetRangeEnd
Table.Fields("WgrNr").AsString = "4"
Table.Fields("ArtNr").AsString = "1000"
Table.ApplyRange
ExecLayout.DataTable = Table ' Rückführen der Tabelle
Call ExecLayout.EndModify ' Ende des Editierens der Tabelle anzeigen
Call ExecLayout.Execute ' Exportieren des Layouts mit der geänderten Tabelle
Set LayoutGroup = Nothing
Set Table = Nothing
Set ExecLayout = Nothing
Set BpNT = Nothing
End Sub
3.1.56.4 IAutoPreparedLayout::EndModify Methode
Die Layout Informationen wurden geändert.
IDL
[id(0x00000003)]
HRESULT _stdcall EndModify();
Beschreibung
Beendet die Modifizierung der Layout Informationen. Hiernach kann der Ex/Import durchgeführt werden.
3.1.56.5 IAutoPreparedLayout::DataTable Eigenschaft
Dataset, das modifiziert werden kann.
IDL
__property AutoDataSet** DataTable;
Beschreibung
Gibt ein Interface vom Type AutoDataSet zurück. Dieses Interface ist nur zwischen StartModify und EndModify benutzbar.
Warning
Beim Export schreiben Sie hier direkt in den Daten. Es ist auf jeden Fall ratsam dieses DataSet nur mit Range oder Filter zu bearbeiten. Bei Importen steht dieses Element nicht zur Verfügung.
3.1.57 IAutoPreparedLayout2 Interface
Von IAutoPreparedLayout abstammendes Interface.
IDL
[ uuid(73CDFFA3-FD09-4635-9682-A89CB7F15FDD), version(1.0),
helpstring("Erweiterte AutoPreparedLayout Schnittstelle"), dual, oleautomation ]
interface IAutoPreparedLayout2 : IAutoPreparedLayout;
Beschreibung
3.1.57.1 IAutoPreparedLayout2 Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoPreparedLayout2.
Methoden
| Name | Beschreibung |
|---|---|
| EndModify | Die Layout Informationen wurden geändert. |
| Execute | Im/Export ausführen. |
| StartModify | Layout Informationen können hiernach geändert werden. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| DataTable | Dataset, das modifiziert werden kann. |
| GetLayoutFileExt | Extension der Datendatei. |
| LayoutFile | kompletter Dateiname. |
| Parent | Gibt das Parent Interface zurück. |
3.1.57.2 IAutoPreparedLayout2::LayoutFile Eigenschaft
kompletter Dateiname.
IDL
__property BSTR LayoutFile;
Beschreibung
Gibt den kompletten Namen der Im/Export Datei an. Pfad + Name + Extension.
3.1.57.3 IAutoPreparedLayout2::GetLayoutFileExt Eigenschaft
Extension der Datendatei.
IDL
__property BSTR* GetLayoutFileExt;
Beschreibung
Gibt die Extension der Datendatei aus.
3.1.58 IAutoPreparedLayout3 Interface
Von IAutoPreparedLayout2 abstammendes Interface.
IDL
[ uuid(21CDC318-54FC-4E05-AD92-A8A38AFE9263), version(1.0),
helpstring("Erweiterte AutoPreparedLayout Schnittstelle 2"), dual, oleautomation ]
interface IAutoPreparedLayout3 : IAutoPreparedLayout2;
Beschreibung
Ab Build: 5144.
3.1.58.1 IAutoPreparedLayout3 Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoPreparedLayout3.
Methoden
| Name | Beschreibung |
|---|---|
| EndModify | Die Layout Informationen wurden geändert. |
| Execute | Im/Export ausführen. |
| StartModify | Layout Informationen können hiernach geändert werden. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| DataTable | Dataset, das modifiziert werden kann. |
| GetLayoutFileExt | Extension der Datendatei. |
| LayoutFile | kompletter Dateiname. |
| LayoutFileEncoding | LayoutFileEncoding legt das Datei-Encoding fest. |
| Parent | Gibt das Parent Interface zurück. |
3.1.58.2 IAutoPreparedLayout3::LayoutFileEncoding Eigenschaft
LayoutFileEncoding legt das Datei-Encoding fest.
IDL
__property enum EncodingType LayoutFileEncoding;
Beschreibung
Der Aufzählungstyp "EncodingType" wird verwendet, um für den Import eines "AutoPreparedLayouts" das Encoding der Eingabedatei zu bestimmen. Es gibt Fälle, in denen beim Import einer Datei ohne festgelegtes Encoding eine Meldung ausgegeben wird. Das Festlegen des korrekten Import Encoding verhindert die Ausgabe der Meldung.
3.1.59 IAutoProtokoll Interface
Protokoll Objekt.
IDL
[ uuid(8A7B6361-B211-11D2-B96D-004005232B30), version(1.0),
helpstring("Dispatch-Schnittstelle für AutoProtokoll-Objekt"), dual, oleautomation ]
interface IAutoProtokoll : IAutoBase;
Beschreibung
Mit diesem Objekt können Protokolleinträge geschrieben werden. Diese sind in der microtech Software unter "OPTIONEN - PROTOKOLLÜBERSICHT" einsehbar.
Protokoll schreiben (Delphi)
Program delphi;
var
BpApp: Variant;
Protokoll: Variant;
rtfText: Variant;
begin
rtfText := '{\rtf1\ansi\ansicpg1252\deff0\deflang1031{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}'
+ #10#13
+ '{\colortbl ;\red255\green0\blue0;\red255\green255\blue0;\red0\green0\blue255;'
+ '\red0\green128\blue0;\red0\green255\blue255;}'
+ #10#13
+ '{\*\generator Msftedit 5.41.21.2508;}\viewkind4\uc1\pard\cf1\f0\fs24 B\cf2 u\cf3 N\cf4 t\cf5 ?\cf0\par'
+ #10#13
+ '}';
// Die Art des Eintrages wird über diese Konstanten bestimmt.
// In der Menge der Einträge wird der Status des Protokolls durch seinen
// "schwersten" Einzeleintrag bestimmt
// mtWarning = 0 Warnung auslösen. Protokoll wird zur Anzeige markiert. Priorität = Hoch.
// mtError = 1 Fehler ausgelöst. Protokoll wird zur Anzeige markiert. Priorität = normal.
// mtInfo = 2 Informativer Eintrag. Protokoll wird nicht zur Anzeige markiert. Priorität = niedrig.
// mtQuestion = 3 Fragender Eintrag. Protokoll wird nicht zur Anzeige markiert. Priorität = niedrig.
// mtBlank = 4 Informationszeile. Protokoll wird nicht zur Anzeige markiert. Priorität = niedrig.
BpApp := CreateOleObject('BpNT.Application');
BpApp.Init('Ihr ConnectionName', 'Ihr ConnectionKey', 'Ihr Anmeldename', 'Ihr Passwort');
BpApp.SelectMand('Ihr Mandant');
Protokoll := BpApp.NewProtocoll('Ihr Programm');
Protokoll.Add({mtWarning}1, 'Programm Meldung 1 Aufgabe X erledigt');
Protokoll.Add({mtWarning}1, 'Programm Meldung 2 Aufgabe Y erledigt');
// Bisherige Einträge löschen um z.B. Log Einträge nach einem erfolgreichen Vorgang zu entfernen.
Protokoll.Cancel;
Protokoll := 0;
Protokoll := BpApp.NewProtocoll('Ihr Programm schreibt ein Protokoll');
Protokoll.Add({mtInfo}2, 'Wir möchten Hier eine Information hinterlassen das alles klappte');
Protokoll.AddRTF({mtQuestion}3, rtfText);
Protokoll := 0;
BpApp := 0;
end;
3.1.59.1 IAutoProtokoll Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoProtokoll.
Methoden
| Name | Beschreibung |
|---|---|
| Add | String hinzufügen. |
| AddRTF | RtfString hinzufügen. |
| Cancel | Einträge verwerfen. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| Parent | Gibt das Parent Interface zurück. |
3.1.59.2 IAutoProtokoll::Cancel Methode
Einträge verwerfen.
IDL
[id(0x00000001)]
HRESULT _stdcall Cancel();
Beschreibung
Bisher getätigte Einträge werden wieder verworfen.
3.1.59.3 IAutoProtokoll::Add Methode
String hinzufügen.
IDL
[id(0x00000002)]
HRESULT _stdcall Add([in] enum MsgTyp Typ, [in] BSTR s);
Beschreibung
Fügt einen String mit dem angegebenen Typ zum Protokoll hinzu.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] enum MsgTyp Typ | MsgTyp mit dem Typ dieses Eintrages |
| [in] BSTR s | Freier Text, der später im Protokoll angezeigt wird |
3.1.59.4 IAutoProtokoll::AddRTF Methode
RtfString hinzufügen.
IDL
[id(0x00000003)]
HRESULT _stdcall AddRTF([in] enum MsgTyp Typ, [in] BSTR s);
Beschreibung
Fügt einen RtfString mit dem angegebenen Typ zum Protokoll hinzu.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] enum MsgTyp Typ | MsgTyp mit dem Typ dieses Eintrages |
| [in] BSTR s | RtfString, der später im Protokoll angezeigt wird |
3.1.60 IAutoProtokoll2 Interface
Von IAutoProtokoll abstammendes Interface.
IDL
[ uuid(809887FB-8F8A-4EE3-AB11-201559FCC690), version(1.0), dual, oleautomation ]
interface IAutoProtokoll2 : IAutoProtokoll;
Beschreibung
3.1.60.1 IAutoProtokoll2 Eigenschaften
Die folgende Tabelle zeigt die Eigenschaften von IAutoProtokoll2.
Methoden
| Name | Beschreibung |
|---|---|
| Add | String hinzufügen. |
| AddFileEncode | Dateien encodiert einfügen. |
| AddRTF | RtfString hinzufügen. |
| AddStringEncode | String encodiert einfügen. |
| Cancel | Einträge verwerfen. |
| Decode | Dekodiert Protokolleinträge. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Application | Zugriff auf das Basisobjekt, von dem alle Interfaces abstammen. |
| Parent | Gibt das Parent Interface zurück. |
3.1.60.2 IAutoProtokoll2::AddFileEncode Methode
Dateien encodiert einfügen.
IDL
[id(0x00000004), helpstring("Die Funktion gibt True zurück wenn die angegebene Datei
hinzugefügt werden konnte.")]
HRESULT _stdcall AddFileEncode([in] enum MsgTyp Typ, [in] BSTR Caption, [in] BSTR
FileName, [in] VARIANT_BOOL Delete);
Beschreibung
Fügt die textuelle Darstellung einer Datei zum Protokoll hinzu. Es können auch Binärdateien angehängt werden, aber wir empfehlen textbasierte Dateien zu verwenden.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] enum MsgTyp Typ | MsgTyp mit dem Typ dieses Eintrages |
| [in] BSTR Caption | Beschriftung für den encodierten Eintrag im Protokoll |
| [in] BSTR FileName | Vollständiger Pfad. Dateiname der zu encodierenden Datei |
| [in] VARIANT_BOOL Delete | "True", wenn die Datei nach dem Anfügen gelöscht werden soll |
3.1.60.3 IAutoProtokoll2::AddStringEncode Methode
String encodiert einfügen.
IDL
[id(0x00000005)]
HRESULT _stdcall AddStringEncode([in] enum MsgTyp Typ, [in] BSTR Caption, [in] BSTR Value);
Beschreibung
Der übergebene String wird encodiert im Protokoll abgelegt.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] enum MsgTyp Typ | MsgTyp mit dem Typ dieses Eintrages |
| [in] BSTR Caption | Beschriftung für den encodierten Eintrag im Protokoll |
| [in] BSTR Value | Der zu encodierende String |
3.1.60.4 IAutoProtokoll2::Decode Methode
Dekodiert Protokolleinträge.
IDL
[id(0x00000006)]
HRESULT _stdcall Decode([in] BSTR Protokoll, [out, retval] BSTR* Result);
Beschreibung
Funktion zum Dekodieren von Protokolleinträgen.
Parameter
| Parameter | Beschreibung |
|---|---|
| [in] BSTR Protokoll | Protokoll Text |
| [out, retval] BSTR* Result | String mit den Dekodierten Inhalten |